當前位置:
首頁 > 最新 > 程序化交易策略的開發攻略

程序化交易策略的開發攻略

大道甚夷,而人好徑。交易投機,亦復如是。願見聞者,略有所悟。少虧多賺,吾心甚慰。——Jerry Ma

交易策略的研發是一個相當複雜的過程,是以許多相關且獨立的步驟所構成,認真落實好每個步驟才能有成功的交易策略,並且在開發過程中,還要善於利用下一個步驟所得到的資訊,來改進調整上一個步驟,如此才能得到一個完善的交易策略。

以下是開發步驟:

1、交易策略的公式化。

2、轉化具體規則為可定義格式。

3、進行初步測試。

4、交易策略的優化。

5、推進分析。

6、多周期多市場的測試。

7、模擬交易。

8、實盤交易。

9、評估實際交易績效。

10、交易系統的改進和完善。

步驟1:首先,任何交易策略一開始都只是一個想法,當然想法可以有多種多樣,沒有做不到,只有想不到。不管你的想法怎樣,你都要能夠把它們清晰完整地表達出來,最好的方法是拿一張紙,把它們一點一點寫下來,然後仔細讀看它們是否有邏輯混亂、重複之處,最後得到的就是交易策略的規則,即初步的框架。如果你的規則不夠明確,邏輯不連貫,缺乏關鍵因素,或者有錯誤,那接下來的步驟就會很辛苦。對新手而言,他們往往不能完整地列出所有的規則,導致後面的步驟無法進行下去。

步驟2:當你把所需要的規則都列出來後,就要把這些規則轉變成你所使用的測試平台的計算機語言,軟體平台也有很多種,像國內的有文華、金字塔、TB、MC、易盛等,國外的TS、MT、YT等,如果是計算機專業人員還可以通過基於CTP的平台自己開發,不用的平台都有不同的語言,優缺點各異,像TS的Easylanguage,是從程式語言PASCAL演變過來的,由於天然的易讀性被交易員普遍接受,而MT則類似於C語言。在這一步,你所要做的就是選擇一款實用、性價比高的平台去把你的規則轉變成計算機語言。

步驟3:當策略中所有的程式碼都能準確地編譯後,就能看到初步的測試結果,在這一步,你可以看到你的策略是否會給你帶來贏利,並且你要做的是觀察信號圖是否和你的想法一致,如果不一致,則證明策略原碼出現了錯誤,返回步驟2進行修改,如果一致,接下來要做的是檢驗初步測試報表,了解策略的風險報酬比,交易次數等,這裡最好多測試幾個品種,不一定要求全部獲利,但如果多數出現虧損,那你最好還是放棄這個策略。相反,如果結果看起來不錯,那就是一個好的開始。

步驟4:策略的優化,這一步是最引人入勝的,因為很多的所謂聖杯都是在這裡產生。最佳化策略就是要把策略的性能提高,讓策略賺取更大的利潤且風險控制在一定的水平。我們大多數的策略都會設有參數,而策略的優化就是參數的優化,不同的參數會產生不同的績效,過度地增加參數進行限制會產生過度配適問題,過度限制過去的行情無異於減少未來行情重現的概率,這一點我們一定要把握適度,不能為了優化而優化,結果只會適得其反。

步驟5:當進行完優化後,我們要對其進行推進分析,這是開發交易策略中最嚴謹的步驟。這一步的核心是檢驗交易策略的穩健性,即是否存在過度配適的問題。那麼我們如何來進行推進分析,簡單來講就是要進行一個對比,優化後的策略對以前的數據和之後的數據間的對比,那麼我們就要分成樣本內和樣本外兩種,通過測試得到不同的績效,然後進行比較,衡量兩者的報酬率,關於怎麼選取數據這個問題就不詳細講了,如果兩者之間存在很大差異,就證明策略穩健度不高,可能存在過度配適,這樣就要回到步驟4再重新改善。

步驟6:當策略通過推進分析後,就說明策略具有一定的穩健度,接著進行多周期多市場的測試,進行這一步,並不是要找一個全能的策略,實際上能夠在不同的周期、不同的市場都表現得很好的策略真的不常見,而且我認為也不需要在所有的市場都適用,因為每個市場都有自己的特性。進行測試得到的結果如果在大多數的情況下都能獲得正期望,那麼恭喜你,這個策略具有很好的適應性,因為不同市場不同的走勢能讓策略得到不同的表現。

步驟7:經過一系列的步驟,到了模擬交易,有的朋友想跳過這一步,直接實盤,其實這是有很大風險的,因為我們之前測試的都是基於靜態數據而來的,我們不知道未來行情策略會表現如何,是否有信號消失、滑點大小等,這些都是不確定因素,所以我們先跑一段時間的模擬盤,看看是否存在什麼未預料的情況,當然跑多久,這裡建議最好6個月,但是我想要說,即使你能做好所有的準備工作,到真正實盤也還是會有新問題等著你,意外總會發生。

步驟8:好了,終於要實盤了,對於看信號手動的交易者,這一步就是要堅決執行每個信號,對程序化自動的交易者,只需完全讓計算機運作。

步驟9:為了讓交易系統能夠成功運行,交易者必須持續監控實際交易績效,了解其交易績效是否和如同測試預期。很多交易員很快就放棄一些策略,因為策略出現了虧損,即使虧損頻率和最大限度仍在策略報表所提供可容忍的範圍內。導致該問題往往是對交易策略缺乏信心,或策略不適合自己,解決方法是對策略進行重新認識,認真做好交易記錄,一段時間後對策略績效進行一個總結。

步驟10:隨著時間的推移,交易策略也有了一個大概的績效評估,在市場的不同時期,績效會有不同的表現,這是正常的,我們通過統計評估,可以發現策略的強度和弱點,然後增加策略的強度和減少不足。對於是否手動干預系統,我的看法是這樣,系統就是你的好朋友,如果你對他非常了解和熟悉,當他出現某一種情況時,你會知道他是怎麼想的,這時手動干預就可以補掉系統的不足,如果你對他不熟悉,那麼手動干預只會弄巧成拙。

至此,開發一個交易策略就完成了。每一個交易員都應該開發屬於自己的交易策略,如果你是一名交易員,你一定會從中得到樂趣、信心、成就。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 融進大染缸 的精彩文章:

交易之道:成為期貨大作手的7個法則

TAG:融進大染缸 |

您可能感興趣

工程化移動開發
搭搭雲開發攻略——自定義功能在線開發,解鎖程序員新技能?
小程序技術合作軟體定製開發
關於移動開發技術走勢的思考
手機棋牌遊戲定製開發需要流程化思維
「小程序·雲開發」重磅上線,讓小程序開發更高效!
小程序開發心得,如何運營優化小程序商城
小程序開發基本流程
革新型的輕量化開發——輕量化整體解決方案之道
小程序開放流量主、鼓勵開發,小程序生態繼續完善
程序員入門必備的大數據開發實戰系列叢書
小程序開發框架技術分析選型
定製化軟體開發
小程序開發真福音,小程序雲開發功能上線!
《權力的遊戲》將推出一款策略手游,蓋婭互娛參與開發
小程序·雲開發體驗:簡單幾步快速開發小程序
動漫人物形象設計及衍生品開發、營銷策略的對比啟示
程序開發人員愛開發
搞趣小程序的開發感想
「小程序·雲開發」開放