學習路線 · 第 6 關(選修)
交易系統化進階:第 6 關,把規則做成能檢驗的東西
第 6 關是選修:把規則寫成模型卡,扣成本回測 100 筆以上,留一段樣本外檢驗,一次只改一處,每月複查優勢還在不在。大多數人做好前五關就夠了。
本頁目錄
第 6 關要做到什麼
一份計畫回測 14,355 筆是什麼樣
把第一個月示範頁那份計畫寫成死規則,在近 400 只滬深主機板股票 2018~2026 年的真實日線上逐筆推:一共 14,355 筆。不扣成本每筆 +0.05R,扣掉費用只剩 +0.018R,幾乎等於沒有優勢。
按成交日累計,不扣成本一共 +718R,扣成本剩 +260R。看著不少,攤到 14,355 筆,每筆只有 +0.018R:1R 是 500 元的話,每筆平均賺 9 元,這還沒算退市股那一塊。
| 哪一段 | 筆數 | 不扣成本每筆 | 扣成本每筆 | 賺錢的筆數佔比 | 最差一筆 |
|---|---|---|---|---|---|
| 全部 | 14,355 | +0.050R | +0.018R | 41.2% | −5.29R |
| 2018 年 | 1,096 | −0.321R | −0.352R | 27.6% | −3.77R |
| 2019~2022 年 | 7,234 | +0.086R | +0.054R | 43.3% | −5.11R |
| 2023~2026 年 | 6,025 | +0.074R | +0.042R | 41.1% | −5.29R |
- 成本吃掉了大半。每筆平均費用約 0.032R,不扣成本的 +0.05R 扣完只剩三分之一出頭。按 A股現行的印花稅和過戶費算,佣金按萬分之 2.5、最低 5 元。
- 行情不對就虧。2018 年那一段 1,096 筆,扣成本每筆 −0.35R;2019~2022 年每筆 +0.054R,2023~2026 年每筆 +0.042R。只測好年份,會以為它一直賺。
- 這次回測本身就帶著一個毛病。資料裡只有到今天還在交易的股票,退市的不在裡面,結果會偏好看。真實的數只會更差。
這是教學用的樣板規則這份計畫用來示範怎麼檢驗,不是推薦的方法。檢驗的結論是:扣完成本幾乎沒有優勢。一份寫得清清楚楚、照做也沒毛病的計畫,照樣可能沒有優勢,這正是第 6 關要回答的問題。
換個引數會怎樣
一次只改一處,其餘不變,再推一遍。改目標、改持有天數、改回撥深度,扣成本後每筆都在 0 附近。
| 改了哪一處 | 筆數 | 扣成本每筆 | 最差一筆 |
|---|---|---|---|
| 原來的引數(目標 2R、最多拿 10 天、回撥至少 6%) | 14,355 | +0.018R | −5.29R |
| 目標改成 1.5R | 14,845 | +0.010R | −5.29R |
| 目標改成 3R | 13,829 | +0.015R | −5.29R |
| 最多拿 5 個交易日 | 17,261 | +0.010R | −5.29R |
| 最多拿 20 個交易日 | 12,291 | +0.010R | −15.00R |
| 回撥至少 4% | 16,675 | +0.012R | −6.13R |
| 回撥至少 9% | 9,564 | +0.015R | −6.13R |
沒有哪個引數能把它變成明顯賺錢的規則。引數怎麼改都在 0 附近,說明不是引數沒調好,是這條規則本身沒有優勢。反過來,要是某一個值特別好、旁邊稍微一改就塌,那多半是碰巧,也不能用。
模型卡寫哪 8 項
把方法寫成一張卡,一張卡只寫一個模型,每一條都要能在圖上指出來。寫不出來,就還不是一個能檢驗的方法。
| 項 | 寫什麼 | 這份計畫 |
|---|---|---|
| 適用的市場狀態 | 趨勢、區間還是過渡,用什麼判斷 | 日線上升趨勢:20 日均線比 10 根前高,最近 20 根至少 15 根收在均線上方 |
| 入場條件 | 哪根K線、哪個價格出現才進 | 回撥 6%~15% 後收出陽線,之後 3 天內漲過它的高點 1 分就買 |
| 停損與失效 | 錯了在哪走,為什麼 | 近 5 根最低價下方 5 分;跌破說明這不是回撥 |
| 出場規則 | 對了在哪走,拿多久 | 2R 全部賣出;10 個交易日沒到目標就收盤賣 |
| 部位演算法 | 每筆冒多少,怎麼算股數 | 每筆風險帳戶的 1%,按停損反推,按 100 股向下取整 |
| 不做的條件 | 哪些時候一律放棄 | 開盤高過入場價 2% 不追;一字漲停買不進就不買 |
| 成本假設 | 手續費、稅、滑價按多少算 | 佣金萬分之 2.5 最低 5 元,賣出印花稅 0.05%,過戶費雙向 0.001% |
| 樣本與檢驗結果 | 多少筆、哪一段、扣沒扣成本 | 2019~2022 年 7,234 筆每筆 +0.054R;2023~2026 年 6,025 筆每筆 +0.042R;2018 年 1,096 筆每筆 −0.35R |
交給另一個人,他在同樣的圖上找出的入場點,和你自己找的大部分一致,這張卡才算寫清楚。版本號寫在卡角上,改一次加一。
回測的四種毛病
回測看著賺錢,先查這四樣。哪一樣沒排除,結論都不算數。
| 毛病 | 長什麼樣 | 怎麼防 |
|---|---|---|
| 用了當時還不知道的資料 | 用當天收盤價判斷訊號,又按當天開盤價成交 | 訊號只用已經收完的K線,成交放到下一根 |
| 只拿現在還在的品種測 | 股票池用今天的成分股往前測;資料裡沒有退市股 | 用當時的成分股;拿不到就照實寫,結論打折 |
| 引數調到只適合這一段 | 試了 200 組引數挑最好的;條件多、樣本少 | 引數少、取整數,看旁邊的值是不是也差不多,留一段樣本外 |
| 沒扣手續費和滑價 | 短線每筆賺得很薄,回測淨值很漂亮 | 按真實費率和成交價扣,算出每筆成本佔幾 R |
上面那次回測,第一、三、四樣都排除了:訊號用收完的K線、成交放到之後幾天;引數用的是示範頁原來的數,改引數也都在 0 附近;費用按A股現行標準扣了。第二樣排除不了,資料裡只有到今天還在交易的股票,所以頁面上照實寫出來。
樣本外、前瞻和一次只改一處
先用一段資料定規則,再拿沒看過的一段檢驗,兩段差不多才算數;回測過了,再用模擬盤或最小部位按規則做滿 20 到 30 筆,和回測對照。
- 參與過定引數的那一段,不能再拿來當樣本外。
- 每次只改一處,改了就把版本號加一,按新版本重新數筆數;拿同一批樣本改前改後各算一遍,比較每筆平均 R 和最大回撤。
- 實盤比回測差,按順序查:成交價比回測差多少;有沒有該做沒做的單;有沒有回測裡沒有的單。三樣都正常,才輪到懷疑規則本身。
分清回撤和失效
分清回撤和失效:回測裡最大連虧 6 筆,實盤連虧 5 筆還在範圍裡;連虧 10 筆、或者每筆平均 R 連續兩個檢驗期都變負,才考慮方法失效。
多個模型怎麼分風險
一個模型穩定以後再加第二個。幾個模型共用一份帳戶風險預算,同時持倉時合計最多虧多少要寫死。
- 示例:同時持倉的總風險上限 3R,每個模型最多佔 1.5R。兩個模型常常同漲同跌,就當成一個算。
- 每個模型各寫一套升級、維持、降級、暫停的標準,到期按標準執行。
考慮全職之前,先回答三個問題:有沒有至少一年按規則執行的完整記錄;生活開支是不是不靠交易收入也能撐一年;回撤最深的時候你有沒有停下來。答不上來,就繼續兼職驗證。
怎麼考
兩件事:站內過關考考模型卡、回測毛病、扣成本和樣本外;你自己的模型卡和回測記錄考做沒做全。
- 模型卡 8 項寫齊,交給別人能找到同樣的入場點。
- 扣成本回測 100 筆以上,寫出筆數、扣成本每筆平均幾 R、最大連虧、最大回撤。
- 留一段沒參與定引數的樣本外,結果寫清楚,好壞都寫。
- 每個改動都有版本號和前後對照。
樣題
回測 150 筆,不算成本每筆 +0.12R。1R 是 200 元,每筆來回費用加滑價約 30 元。扣成本後每筆還剩幾 R?
- A−0.03R
- B+0.12R
- C+0.27R
看答案
答案 A。每筆成本 30 ÷ 200 = 0.15R,0.12 − 0.15 = −0.03R:扣完是虧的。
回測用的是今天的滬深 300 成分股,往前測了 10 年。這次回測最可能犯了哪種毛病?
- A用了當時還不知道的資料
- B只拿現在還在的品種測
- C沒扣手續費
看答案
答案 B。十年前的成分股裡有後來被調出、甚至退市的,只測今天還在的,結果會偏好看。
沒過怎麼補
看卡在哪一項,回去補那一項,補完拿同一批樣本重新算。
| 卡在哪 | 回去看 | 再練什麼 |
|---|---|---|
| 模型卡寫不清 | 本頁「模型卡寫哪 8 項」、什麼叫交易系統? | 讓別人照卡找 10 個入場點,對不上的那一條重寫 |
| 回測沒扣成本或筆數不夠 | 手工回測的抽樣和標註規範 | 按真實費率重算,補到 100 筆以上 |
| 沒有樣本外 | 本頁「樣本外、前瞻和一次只改一處」 | 留最近一兩年不碰,定完規則再拿來檢驗 |
| 一次改了好幾處 | 《一套打法做到熟》 | 退回上一版,一次只改一處,改前改後同樣本對照 |
| 站內過關考沒過 | 本頁「回測的四種毛病」 | 換一套題再考 |
換市場回測要多算什麼
同一張模型卡換到別的市場,要重新回測,並把這個市場特有的成本和規則算進去。
| 市場 | 回測要多算 |
|---|---|
| A股 | T+1 當天走不掉、漲跌停成交不了、印花稅 |
| 國內期貨 | 主力換月的價差、夜盤跳空、平今手續費 |
| 美股 | 財報跳空、盤前盤後價格是否計入 |
| 美股期權 | 買賣價差、時間價值流失、到期處理 |
| 加密合約 | 資金費、標記價格強平、插針 |
學多久
前三段合計 76~120 小時,每週 5 小時大約 16~24 周;第四段按需要,四段合計約 96~160 小時。
| 階段 | 要投入的時間 | 上班族(每週 5 小時) | 全職(每週 20 小時) |
|---|---|---|---|
| 模型卡 | 6~10 小時 | 2 周 | 1 周 |
| 回測與樣本外 | 30~50 小時 | 6~10 周 | 2~3 周 |
| 前瞻與小資金 | 40~60 小時 | 8~12 周 | 2~3 周 |
| 多策略與預算 | 20~40 小時 | 4~8 周 | 1~2 周 |
| 合計 | 96~160 小時 | 20~32 周 | 5~8 周 |
展開細節
第三段還受交易筆數限制:按日線做,湊夠 30 筆可能要幾個月,時間到了筆數不夠,就繼續等,別為了湊數多做。
相關課程與練習
先用免費的課節和練習把上面走一遍,想系統學再看付費課。
免費課節
免費工具與練習
學習地圖裡的對應技能
常見問題
回測多少筆才夠?
至少 100 筆再下結論,而且要留一段沒參與調引數的樣本外資料。20 筆只夠發現大問題。
系統化一定要會程式設計嗎?
不一定。手工回測按規則逐根看圖、逐筆記表就行,慢但能逼你把規則寫清楚。會程式設計只是快,不會讓規則變好。
回測扣完成本沒優勢,怎麼辦?
先別急著調引數。查是不是成本太高、交易太頻繁,或者規則只在某種行情裡有用;還不行就換思路。示範頁那份計畫扣完就幾乎沒有優勢。
引數怎麼避免過擬合?
引數少用、取整數,看旁邊的引數結果是不是也差不多。只有某一個值特別好、稍微一改就塌的,不要用。
什麼時候可以加大資金?
實盤按規則做滿一個檢驗期,每筆平均 R 和回測差不多,最大回撤在事先寫好的範圍內,再按標準升一檔,一次只升一檔。
全職交易之前要驗證什麼?
至少一年按規則執行的完整記錄;不靠交易收入也能撐一年生活;最深的回撤裡你停下來了。缺一樣就繼續兼職驗證。
本頁講的是檢驗方法的流程,不提供任何策略或訊號;回測結果不代表未來表現,數字為教學示例,不構成投資建議。