站內廣告

深入程式交易 : 簡單才實際, 談自由度

投機客與金銀島

深入程式交易的第二篇, 標題寫來好像有點艱澀,
自由度這種奇怪的名詞都跑出來了 XD
 
但在玩股網發表文章, 又不是在寫論文, 
我寫文的目的既然是沈澱自我, 
當然要把大觀念簡化為直覺易懂的方式, 才能深刻了解它

本篇的內容延伸自上一篇 "發掘靈感" 內提到的過多參數刻畫歷史
它時常造成的現象就是紙上高興一場,
回測歷史的報酬是動輒幾千幾萬點
結果在眼前近期的實戰上卻只剩下百點甚至是負報酬

本篇的內容便是在討論這件事

先談自由度, 
當利用程式, 回測交易靈感在歷史行情裡的報酬時
程式設計師往往會因為把目標設定為報酬率,
程式一開始也很單純, 但為了排除虧損, 增加報酬,
因此反覆增加越來越多的條件去規範交易
最後達到高報酬率的目標, 便將程式推上試單或實戰,
結果便是上述的過度刻畫歷史現象

這一切的原因, 歸咎到底, 就是世界上沒有一個永遠對的策略
永遠對的只有一件事, 就是市場自己
也就是任何一個新增條件, 本身就是降低一維自由度

舉例, 當週K向上收穿越季線, 做多, 跌破季線, 放空 (註)
大家自己可以去測試看看, 這本身就是一個絕佳的波段獲利模型
此方法類似海龜, 只是運用簡單的葛蘭必八大法則
很直接的把交易週期鈍化到週K以上
獲利本質就是週K能拉動季線多久這件事
其實已經是很好的波段策略, 但有趣的是, 真的這樣做的人卻不多 


程式交易者, 如果稍為有心(貪心),
可能會開始去計算連續虧損, 找出每筆虧損之間的相關性

假設(只是假設)
發現的狀況是, 7200~7500點之間時此方法容易因震盪雙巴虧損,
那從此就不要在此區間執行策略,
也就是新增一個參數, 同時降低一維自由度, 如此主要的虧損全部消失了
然後又發現, 獲利降低了, 原來 7344點的那次是大成功的, 但被新增條件擋掉了
因此又再新增一個條件, 指數來到 7344點, 可以執行....
相信所有人看到這裡, 都會理解這絕對就是過度刻畫歷史
下次指數最好是 7344點又觸發此程式交易, 然後最好是獲利了結

程式交易實作上當然不會用這麼鏗鏘的新增條件
而是用常見的技術指標, 聽起來很高深, 但其實就是在做同一件事阿

降低自由度將會如何?
直接寫結論 : 降低自由度將會降低統計價值

也就是當把兩個策略結合成單一策略, 
那麼此策略的統計結果, 反而較個別策略不可相信

為什麼會這樣!?

原因是統計報酬期望值, 是觸發越多次越有統計價值
那麼自由的市場行情, 同時觸發兩策略的交集行情
兩策略又往往是為了彼此降低虧損而延伸而出的, 
因此相關性必然是低
也就是說兩策略的交集行情次數
將遠小於單一策略在宇集行情裡的發生次數
因此統計次數的母數就已經被大幅降低了,
那麼如何能有更佳或相同的統計價值呢 ?
這便造成統計價值降低...

以上是用白話文寫數學推理

解決這個自由度的問題, 就是再寫另一個獨立的程式
獨立用兩個簡單自由度高的程式操作, 有時候兩個程式多空互抵,
有時候是雙倍獲利甚至是雙倍虧損

但起碼你知道一件事, 兩個程式如果基本的進出邏輯就不一樣
那麼就是一碼歸一碼, 進出時間也不必然相同
程式本身的交易邏輯越簡單, 也就是參數越少, 自由度就越高
就越能在未來自由的行情裡產生自身的統計效果,
進而在實單上得到報酬期望值

把本篇做個小結, 一天寫文不要花太多時間
看重點就好了 XD

對於交易所用的參數
1. 新增參數回測歷史的副作用是降低自由度,
在自由的市場行情裡, 會大幅降低統計次數, 進而降低統計價值
2. 解決方法是開發兩個獨立程式, 一碼歸一碼

以上, 是 "深入程式交易" 系列文的第二篇
或許什麼地方想得不對, 也希望有前輩可以多多指教囉
 
對小弟我的文章有興趣者, 當然也可訂閱我的部落格, 刺激思考也不錯 哈
 
我誠摯希望可和各位前輩 (或高手) 可以讓我知道我的不足之處
 
謝謝 ^^"
 
祝操作順利!!祝操作順利
 

(註) 週K vs 季線 (15週)
把十年週線圖放置此讓各位參照是否為良好的大波段程式
其中褐色均線為 15週週K均線, 也就是季線
不過好像也沒人推薦和互動, 我好像也在跟空氣說話一般, 哈, 隨緣吧







本文內容僅供參考,無任何買賣建議,投資人應謹慎評估,風險自負。

2 則留言

感謝分享程式內涵(自由度介紹)。
小弟是程式使用者,小弟的角度來看,單一程式使用準度度假設A,使用二程式後準確度A*1.XX,使用三程式準度卻率A*1.XX*1.XX以此類堆,結論就是適當使用程式準確度真的可以大幅提升,如果說使用4套後假設準確率幾乎可以達到99%,但是期貨獲利只有400點,次數 準確率 獲利小弟認為是正 負 負向關係。

我的看法是如果程式彼此之間是無關的,
也就是各有各的進出邏輯, 其實彼此交集的交易相對就有更高的命中率,
相對當然也是較少的交易次數, 因此獲利會被限縮, 如同您的實測
因此大大你第一篇回覆我便覺得是聰明的方法
本文所討論為自行撰寫程式增加條件所面對的問題,
單一程式若有自由度問題, 則該程式的統計價值就很難相信了

精選文章

更多
台股平均殖利率不到 2%!AI顛覆慣性,為何『除權息行情』不能再用舊思維看待?
矽晶圓基本面越爛越噴漲真的或炒作?環球晶台勝科的復甦邏輯,散戶最容易誤會的地方
退休這條路,晚一步沒關係,怕的是你一直站在原地!
台股全球第五,IT服務龍頭精誠,市值也悄悄跟著變大!
明明什麼都沒做,獲利一直增加⋯⋯市場是真的那麼簡單,或是等著把我養套殺?
常見的投資誤區:用事後結果去評價當下決策