[心得] 以技術分析做程式交易操作(Part.4)
前文的連結
https://www.ptt.cc/Stock/M.1609662954.A.C44
https://www.ptt.cc/Stock/M.1613288438.A.178
https://www.ptt.cc/Stock/M.1617529021.A.0FC
https://www.ptt.cc/Stock/M.1632205662.A.512
之前寫過一些關於開發使用技術分析做程式輔助交易的心得
當初提到我的選股程式開發分成三個階段(或者世代)。
第一階段是技術線型選股
第二階段加上了進出場策略與績效回測
第三階段再加上資金管理與模擬
這篇則是想再補充一些資金模擬系統裡面關於選股評分的部分
一開始程式在第一與第二世代的時候並沒有對於選出來個股的評估機制
操作上就是程式選出來之後我再人工憑自己的感覺挑喜歡的去操作。
不過這個時候已經遇上在篩選門檻設定上選擇的問題
條件設太寬會出現太多看上去就覺得不會想做而且拉低回測績效的個股
條件設太嚴則會變成選出來的太少
還有一個也是門檻的問題,假設有A、B兩支個股
A每個篩選指標都只稍微過門檻低空飛過
B是有一個差一點點沒過但是其他每個篩選指標都超過門檻一段距離
理論上B應該會比較好,但是卻是A會過B不過
接著在第三世代的程式,
也就是為了評估年化報酬率開始做資金模擬的時候就馬上遇到問題
因為買進持股配額是有限的(測試設定大約就5~10支)
當篩選出來的個股多於配額的時候就必須做出取捨
因此就需要一個對選出來個股做出排序的機制,於是就衍生發展出評分的系統
最直接的想法就是
對當初篩選的指標,想辦法弄出公式把他正規化成0~1區間,然後再做加權平均
例如之前那個資金模擬模擬程式用的前高突破選股第一個篩選指標:
「過去180個交易日最高價大於最低價1.2倍」
分數公式 score = Min(1.0, (max_value ÷ min_value - 1.0))
然後對分數做排序計算每個分數區間績效平均就可以得到這個圖表
https://i.imgur.com/PZ4S21v.png
大波段斜率 https://i.imgur.com/cxLn4gn.png
離前高的距離 https://i.imgur.com/M6U0Aeo.png
平均成交值 https://i.imgur.com/qEJunSL.png
前兩個相關性看起來比較高所以權重給高一點
後兩個相關性看起來偏低所以權重給低一點
做完加權平均之後就長這樣
https://i.imgur.com/k0kdzg2.png
一個簡單的評分模型就完成了
接下來跑資金模擬的時候,就是每次操作都從分數最高的開始買起買到配額用完為止
同時這也解決了之前遇到的篩選門檻是要寬鬆還是要嚴格
以及出現其他都很好就是有一個門檻差一點點沒過的問題:
「我把每個篩選門檻通通調很低,選進來之後用分數再篩一次」
不過這個方法其實真的就很感覺是在想辦法去湊答案
從分數轉換公式到權重的分配,都是一直試再試,試到覺得回測看起來不錯為止
我也有在想也許有比這個更好的辦法,只是現階段我只想到這個方法,
而且這姑且也算是個還算有效的方法所以目前也就一直用著了
--
閱
字太多 30字總結
「我遇到選股比持股配額還多的問題,所以弄了評估優先順序的模型」
你是想寫策略跟回測的話為什麼不用multichat,純粹好
奇考量是什麼?還是是要做論文啊?
在第二篇的回覆推文裡面有提到, 因為這個系統一開始不是寫來跑程式交易的 然後在前面的基礎上一直加新東西到後來變成一個完整系統後 也很難以移植到其他現成的應用工具去了 而且我是用C#寫的,如果晚個幾年才開始寫的話我應該會用Python….
其實貼對帳單就好
在前文連結的第四篇裡面有附一個用這個方法的模擬程式
https://reurl.cc/L7bxMX
最後四行我覺得overfitting........
是說前面文章的推文裡面也一直有人提及overfitting的問題 我自己也覺得我的程式會有這個情況,到什麼程度的問題而已 所以我現在看待我自己的程式都預設他有overfitting的狀況 就是我確定他是有效的, 但是回測的結果可以參考但是不要真的太相信他真的這麼厲害.....
這個有比用NN的強嗎
我還沒用過所以不知道耶 我正在開發第四世代,目前差不多收尾了。 等經過一段時間實戰驗證過後如果有時間的話我會再寫關於第四世代的心得 然後我在考慮是不是要在第五世代使用神經網路去做策略優化
程式可以分享嗎?
請參考上面的連結
※ 編輯: drazil (118.231.201.82 臺灣), 06/23/2023 10:26:09 ※ 編輯: drazil (118.231.201.82 臺灣), 06/23/2023 10:27:43 ※ 編輯: drazil (118.231.201.82 臺灣), 06/23/2023 10:28:54分數轉換方法很多但多不一定好 用自己熟悉的最好
初學者請慎重考慮要不要用商用軟體
坦白說商用軟體能符合絕大多數人的需求
只是想要賺錢的話 商用軟體用的好就很夠了
我自己是到了能做論文的等級才覺得自己開發沒有虧
自創的複雜演算法以及自己想要的資料整理方式
商用軟體支援的終究有限不可能完美
我在初級與中期甚至部分高階的開發 商用軟體都有
所以 只是想賺錢的話 商用軟體就夠了而且CP值高
但想走真正走出自己的道路還是要自行開發
如果能人生重來我會先學好商用軟體再考慮自己開發
感謝分享 其實如果我跟人提及程式交易的話,我也都會說能先用現有的應用工具去開發就用, 不要學我整個系統自己從0建起來, 我自己會變成全部自己從頭做,一方面就如我前面講的, 一開始我只是想寫個交易日誌產生器,結果玩到後面歪過來的 另一方面我以前是念數學系,現在工作是軟體工程師 寫這種東西是老本行,甚至有點是當作興趣在寫的 (有時候我都自嘲白天上班寫C++,晚上跟假日休息時間在寫C#) 一般人真的要這樣搞那個成本跟代價太大了。 --------------------------------------------------------- 這邊推文應poker119要求刪除推文內容 ---------------------------------------------------------
※ 編輯: drazil (118.231.201.82 臺灣), 06/23/2023 16:56:33推
如果是從盈利的角度看用商用軟體確實比較好,也比
較不用擔心工具寫錯的問題,但是自己寫我覺得有個
好處就是會讓自己一直不斷的思考(反過來說就是一
直不斷的懷疑自己),我覺得對我自己來說還是挺有
幫助的
推推
我當年作過簡單的機器學習專題(非NN)就自以為利害
認為我作程式交易發大財是很簡單的事就開始DIY
因為無知所以讓我有無所畏懼的勇氣
商用軟體以及程式交易的知識初學當然是從填鴨開始
入門後當然就要能對策略與結果評論檢討才能進步
DIY就只能靠不斷的自我檢討反思改善來求進步
若沒有跟別人比較 我覺得一但自己有盲點會很難發現
然後就原地踏步直到發現盲點 這時間耗損很恐怖
像我 作好作壞都曾經因為沒有發現而拖慢自己進度
所以不管DIY或是商用 都需要跟自己也跟別人比較
說到這個,我在2021年中到今年初找到開發第四世代方向的靈感之前, 超過一年半的時間遇到了嚴重的瓶頸 就是現有模型的計算式跟參數調到後面優化的邊際效益越來越低 到後來無論怎麼嘗試優化,回測績效都無法再出現有效提升 自己關門起來摸索碰到這種事情的時候還蠻無力跟挫折的
NN沒有想像中強 overfit的程度超越你的想像
那.......有賺嗎?
呃,有喔...
可以把我的推文部份修掉嗎 感謝
刪了
※ 編輯: drazil (118.231.201.82 臺灣), 06/24/2023 10:07:17 ※ 編輯: drazil (118.231.201.82 臺灣), 06/24/2023 10:15:39商用軟體的策略庫與別人論文可能有突破方法
都沒有 就只能等柯南那種靈光一閃出現靈感
54
[心得] 資金管理策略研究-馬丁格爾vs反馬丁格爾blog完整文章: 最近開始研究資金管理策略, 第一個想到的主題就是非常有名的馬丁格爾策略 & 反馬丁 格爾策略, 目前第一階段研究得差不多了, 就來這邊跟大家分享下研究結果。 只用一句話解釋這兩種資金管理策略如下:41
[心得]使用蒙地卡羅做量化交易先貼出我二月對帳單 前年底本金只有三十萬 目前大約三百萬 經歷了武漢肺炎和數不清的校正21
[請益] 用簡單KD指標及均線回測多頭市場成效文前提醒: 前一篇為代PO,本篇為我本人。 小弟為初學程式交易,策略簡單直覺,績效難看,跟著做絕對不會賺錢,但也歡迎批評指教。 進場條件策略如下: 1:個股及大盤皆在60ma以上23
[創作] 台股工具「股市轉轉」更新*股市新手小鄉民,作品還有許多待改善處,請各位前輩多多包涵。 免費下載連結 iOS Android 影片連結:13
[心得] 程式交易策略討論各位績效100%版友大家好 小弟想詢問程式交易真的有策略是穩定賺錢的嗎? 小弟本身沒有學過任何程式語法,曾經嘗試透過python來學習股票,但發現學習和實際應 用好像很打一段落差,也看過很多老師帶團的軟體 XQ ,MultiChart... 這些都需要一些 懂程式背景後來找到一款好像是最近才發表的軟體,蠻方便的8
Re: [請益] 用簡單KD指標及均線回測多頭市場成效歡迎批評指教 本週修改進場條件如下: 1:前一日均線糾結(5/10/20ma差值3%內) 2:macd值皆為正、柱狀體紅、今日紅棒>前一日 3:10<成交價<2006
[心得] 記錄A 篩選短線交易股票(代po) 本身是上班族,也是為了節省下班的時間,自己去學習程式篩選股票。 目前的想法A方案是尋找短期強勢股,短線波段或當沖為主,有自己想出幾個選股的條件,來幫自己選對股票,下面是我的選股條件以及篩選結果: 1.K值大於80 2.連續4天站穩5ma7
[心得] 盤後資料整理(Excel格式)各位股版大大好 今天盤後整理完的檔案如下 提供給大家參考 兩個Excel的篩選條件都有放在備註頁面 因為都是自己跟朋友一起想一些規則去整理出來的數據 如果有錯誤不嫌麻煩再提醒我一下7
[iAPP] 股市資訊工具 『股市轉轉』更新軟體名稱:股市轉轉 軟體分類:理財 軟體連結: 系統需求:iOS 10.0 以上 購買費用:免費 / 有內購2
Re: [心得] 記錄A 篩選短線交易股票(代po更新) 今日台灣加權指數收高,個股表現更是遍地開花搶反彈。 經紀錄A-3 篩選短線交易股票,篩選出的股票進行當沖交易,整體單周獲利雖為正,但績效表現方面普普,此周也繼續延續記錄所篩選出的股票,進行當沖模擬當沖,由於6/20行情下殺,6/20當天收完盤是無篩選到任何股票。 6/21盤後當沖選股: