|
分享一下我的平台和開發經驗,才開始。。平台的考慮因素超級多。 最大的因素是在你的策略複雜度。說老實話,現在如果還是用幾個MA+RSI+KD 什麼的,實在很難在市場上贏。 重點是,你的策略是否有'edge', 因為每個人都會看書,也會拉一拉軟體提供的技術指標。要贏,就開始找組合,然後用回測來找最佳的參數,你真的覺得回測加最佳化然後系統給你說MA 應該設16而不是20就能贏嗎。我覺得這個比買樂透贏還難。。。
然後你就開始想,贏過別人的其他方法,開始修改策略,但不是朝找最佳參數的方向。一旦開始往這裡走,你的程式就開始需要有 variables 來存不同的‘情況’ (states), 那麼你就走上了 ‘策略無法完全用公式來表達’的路。 也就是說,你的策略無法完全用技術指標的組合來表示。這條路走下去,就會發現傳統的交易平台的programming language 就不夠用。 這就是為什麼‘傳統’的平台都有些 DLL 的hook, 而新的都變成是是以‘正常’的programming language 做底層架構,然後提供技術指標公式的Class/API/etc/etc. 有點整個反過來的感覺。
Amibroker就是一個非常經典的例子。不信你試試寫寫稍微複雜的loops, 保證頭髮掉很多!
一旦策略寫好了,更複雜的是下單,和怎麼維持你的Positions, 包括資金控管,出場策略等。
每次看手冊/範例都是 (MA 。。。 Cross above ... GoLong(), ... Cross Below ... Exit() )
你真的覺得這樣就會贏嗎??
譬如,有buy 訊號,下limit order 單,是不是要check 有沒有進去。萬一是 partial fill 時要怎麼辦,是不是要先問買了多少,然後看現在的情況,覺得是否把剩下沒filled的再下單, 還是。。
譬如一般都有什麼設停利/停損的 OCO 單,但是如果你的停利點和停損點是動態的怎麼辦, 譬如下兩口,一口到profit target 出來,另外一口的停利原來的ATR從3縮小到1,等等。
再過來,如果是完全自動的系統,如果當機/或是斷線,但還有單掛掛著,而且還有open positions, 再開機的時候你的程式要怎麼跑? 總不能不管,繼續看到訊號就再買,要是再買的和當機前是同一個訊號,下單後market馬上反轉,你就哭不完了。
所以我覺得,程式交易被看成這麼簡單,是劵商和平台商的陰謀。千萬不要以為簡單容易上手,就覺得,我一定賺大錢。
再推一下現在在看的書 (這裡有提到),其中另外一個經典就是‘市場上輸的絕大部分是因為找捷徑’。 ‘不花力氣是絕對贏不來,花了還不一定贏’
這本書也說到‘對任何市場/交易的論點’都要抱懷疑/驗證的心態來看。 所以你看了我說的,也要抱著這個心態。。。
|
評分
-
查看全部評分
|