DWFO/DynamicTrading半年測試心得

[DWFO/DynamicTrading半年測試心得]簡單講就是動態最佳化,大概測試了半年,稍微有點心得了。一開始是看到未來 MC14 號稱會新增這個功能,所以雖然不是很清楚為什麼MC會想加這個功能,但反正不是太困難的功能,我就先把這個功能加進了新的QuantBrains戰略交易平台中,也在剛好差不多時間有同學遇到部分商品相關性過高的問題,所以我進一步把這個應用又擴充成多商品的相關性縮減功能(互斥篩選,讓同市場的超高相關性商品能夠在進入操作的時候自動排除另一個商品,另一個與同學一起共同進化的例子)。回到策略這邊來,不入虎山焉得虎子,所以持續實際上測試了這半年的時間,稍微有點心得,畢竟想知道細節還是得實際上運作一下,只從外邊猜想可能會先入為主有一些思考上的偏誤,尤其這種做法跟我原本偏好的撒參數做法差異挺大(其實是可以結合),沒有實際做我可能就會先判他死刑了,因為我一直不太偏好這種過於精緻化參數的過程,比較喜歡規劃式的特定參數不特別去做最佳化(類似30/60/90這種),因為我個人主觀覺得商品或市場夠多,自然會有好結果被篩選出來,挑市場比參數精緻化更有意義(只要商品或市場行情夠大,那些參數大一點小一點並沒有太大差異,過於追求精緻只是過度最佳化而已沒什麼意義)。不過實際上測試運作的時候卻還是會有一些想法跑出來,例如上面商品層的互斥功能應用,在策略這邊似乎也有一些好處,消除固定一段時間後才重新最佳化造成的時間資訊落差這種基本的就不講了,我發現這個功能似乎也某種程度上解決了最近有提到的那個問題<濾鏡造成的問題>,也就是當我們使用濾鏡去過濾掉某些訊號的時候,很可能也會同時過濾掉我們本來想要等的足以影響風報比的重要訊號。我覺得比較好的做法就是維持策略不變,每個訊號都做而不刻意去篩選,但使用評價函數的方式去描述你原本濾鏡風險機率的分布特徵,這樣可以確保重要訊號不會丟失,又可以保留跟放大濾鏡的好處。而DynamicTrading動態最佳化這個功能卻用了另一個方式來處理這個問題,也就是動態監控每一個參數(表面上看的好像是參數的重要性,但其實骨子裡是在模糊化跟減輕化它的重要性),當某個參數不小心過濾掉了重要訊號,卻被另一個參數捕捉到了,這個參數的損益或風報比就會脫穎而出而取得主控權,而不會錯失重要訊號,讓我想到熱追蹤導彈XD。 果然有些東西,還是一定要下去觀察,才會去觸發更多細節,即使原本不是我的風格。不過我個人還是覺得把濾鏡的風險特徵機率分布變化描述寫在評價函數裡更好,這才是真的把參數更進一步去重要性(讓重要性下降)的好作法,但DWFO/DynamicTrading則保有原本的便利性(或許多數人要的是這個,工具與科技始終來自於惰性,但你如果真的想往專業走,我建議還是要練習一下模型特徵的描述)。一點測試後的小心得,不是要教你什麼,只是記錄下來怕我自己也忘掉XD

粉絲專頁

進化特區