[心得] 以技術分析做程式交易操作(Part.2)

作者: drazil (在風雨飄搖的年代裡)   2021-02-14 15:40:36
上一篇在這邊
https://www.ptt.cc/bbs/Stock/M.1609662954.A.C44.html
趁著年假有點時間補充一些關於操作策略的心得
上篇提到說一套策略是程式選股+出場操作策略組合而成
也就是整個程式操作要經過「選股→買入→持有→賣出」這幾個階段
如果只有「選股→買入」這個階段是不夠的
就算找到了一個選股方式很厲害,買了幾天內漲的機率很高
然後咧??
我沒辦法保證用我自己人工判斷出場的方式不會都放到漲上去又下來結果最後停損
也沒辦法量化這個方法的績效
所以出場策略還是必要的,
有出場策略之後可以得到一個策略操作一次的績效與持有時間
然後再計算平均的勝率與期望值
不過雖然說進出場策略是必要的
但是我在試參數的非常多次後的結論是,選股的重要性遠高於進出場策略
一個策略的好壞,在選股的時候就幾乎決定了
進出場策略再怎麼調都只能略為增減一點績效,無法改變選出來個股整體的品質
如果選出來的個股接下來一個月只有40%的機率漲,
那操作策略再怎麼優化也不太可能把勝率變成50%
然後談一下出場策略的參數設定
或許是個人能力不夠,我覺得我在出場策略上能做的事情真的很有限
要用幾個條件去應付買入之後千變萬化的走法真的很有挑戰性
而且很多看起來很直覺的東西要用程式去實踐非常困難
比方說如果我要做一個「跌破支撐線」就出場的條件,
會碰到支撐線要怎麼定義、怎麼畫的問題
像是大部分個股直接用眼睛辨識就不會覺得有明顯支撐線,
用程式強制去生出一條支撐線就沒有意義
有的個股前期慢慢漲,後面開始加速噴出。
那我要不要重新設定支撐線?如果要的話要用什麼條件決定要重設?
因為想下去覺得太複雜了,所以這個方法我放棄
到最後我也只做了三種方式,固定天數、固定回檔比例與固定沒創高天數
固定天數我主要是用在初步評估選股模型的有效性
我用幾個條件湊出一個選股模型之後,先跑買入放20天賣出的策略
可以知道選出來的個股是不是趨勢向上比較多,再做接下來的調整
固定回檔比例(例如10%)就是從買入後的最高價位跌超過10%隔天賣出
沒創新高(例如8天)就是買入後開始,只要連續8天沒有創新高價位就賣出
我自己測試結果,沒創高天數的方式會比回檔比例來得好
因為飆股很可能短期上下大幅震盪,用回檔比例的方式相對容易被洗掉
另外還有一點,只要選股模型夠好,
就算用看起來最智障的買入固定天數績效都不會太差
之前甚至我碰過一個模型我可以硬找了一個天數,
然後他的績效比回檔比例法來得好XDD
當然我知道這個天數是一種對過去資料過度最佳化的解
可是試出來的時候我有這到底是什麼鬼的錯愕感XDDD
然後兩種方式都一樣,寬容度越高,平均獲利績效越好,但是持有的時間也越長
以我上一篇釋出的模擬程式為例,如果分數門檻設定為40
程式裡面我使用的是「9天沒創新高則在第10天開盤賣出」
年份 總筆 漲 跌 漲比例 績效 天數
2002 164 94 66 58.75% 5.91% 21.49
2003 449 267 171 60.96% 7.52% 22.87
2004 370 206 158 56.59% 4.53% 22.01
2005 338 173 157 52.42% 4.39% 20.35
2006 470 320 147 68.52% 9.01% 23.23
2007 458 284 164 63.39% 9.68% 23.10
2008 159 84 74 53.16% 1.79% 18.16
2009 920 629 285 68.82% 10.27% 24.14
2010 593 317 267 54.28% 4.49% 20.81
2011 297 146 148 49.66% 2.70% 19.88
2012 497 258 228 53.09% 2.54% 20.31
2013 674 369 288 56.16% 4.47% 20.71
2014 649 335 302 52.59% 3.56% 19.74
2015 449 212 231 47.86% 2.34% 19.33
2016 693 388 291 57.14% 3.89% 20.96
2017 767 461 296 60.90% 5.15% 20.88
2018 290 120 165 42.11% 1.80% 19.50
2019 871 491 367 57.23% 3.33% 20.96
2020 1061 596 447 57.14% 4.54% 18.50
總計 10169 5750 4252 57.49% 5.10% 20.97
如果改成7天就會變成這樣
年份 總筆 漲 跌 漲比例 績效 天數
2002 166 87 73 54.38% 4.73% 16.93
2003 454 259 183 58.60% 5.76% 18.37
2004 379 195 170 53.42% 4.25% 17.79
2005 340 168 161 51.06% 3.75% 16.51
2006 478 308 160 65.81% 7.42% 18.67
2007 460 270 181 59.87% 8.07% 18.65
2008 159 78 79 49.68% 1.71% 15.55
2009 929 623 286 68.54% 8.80% 19.51
2010 600 308 281 52.29% 4.01% 16.64
2011 300 134 160 45.58% 2.01% 16.08
2012 499 257 235 52.24% 2.48% 16.88
2013 680 364 302 54.65% 3.77% 16.79
2014 654 339 304 52.72% 3.17% 16.50
2015 457 215 233 47.99% 2.07% 15.70
2016 697 386 296 56.60% 3.61% 17.26
2017 774 451 309 59.34% 4.39% 16.88
2018 292 126 159 44.21% 2.31% 16.05
2019 876 487 369 56.89% 3.23% 17.36
2020 1072 596 453 56.82% 4.05% 15.46
總計 10266 5651 4394 56.26% 4.44% 17.12
天數太短可能會碰到小整理就出場錯過短線整理後再噴第二段的機會
天數太長碰到走弱比較大幅回檔的機率就變高
並沒有一個絕對最好的數字
我自己測試大約7~10天都算好用的數字,(差不多是旗型整理的天數)
另外空頭年短天數會比較好一點(因為碰到回檔跟停損的時候跑得快)
多頭年長天數會比較好(因為延伸久)
另外上面這些策略都是用來處理整理過後起漲波段操作模型的出場方式
其他的策略(像是抄底、整理區間高低價差法)可能不適用就是
作者: appleball200 (我帶把的不要再把我了orz)   2021-02-14 16:50:00
請用multicharts不要重造輪子

Links booklink

Contact Us: admin [ a t ] ucptt.com