量化交易並非機構交易者的專屬,散戶交易者也開始涉足其中。雖然編寫算法需要一定的編程技能,但這並非總是必需的。市面上有很多程序和服務可以根據你提供的輸入自動生成策略代碼。程序/服務生成的代碼隨後會被導入交易平臺,交易即可開始。但在這一切發生之前,有志成爲算法交易員的人需要經過幾個步驟,明確他們希望通過算法實現的目標以及如何實現這些目標。
時間框架和限制
雖然精心編寫的算法可以自主運行,但建議進行一些人工監督。因此,請選擇一個您能夠監控的時間框架和交易頻率。如果您有一份全職工作,而您的算法被編程爲在您上班期間每天在1分鐘圖表上進行數百筆交易,這可能並不理想。您不妨選擇稍長一些的交易時間框架和較低的交易頻率,以便更好地掌控交易情況。
算法在測試階段的盈利並不意味着它會永遠持續帶來這樣的收益。如果結果顯示算法不再有效,您有時需要介入並調整交易算法。這也是任何從事算法交易的人都必須接受的時間投入。
資金限制也是一個需要考慮的問題。高頻交易策略的佣金累積速度非常快,因此務必選擇費用最低的經紀商,並確保每筆交易的潛在利潤足以支付這些佣金,即使一天可能要進行多次交易。啓動資金也是一個需要考慮的因素。不同的市場和金融產品所需的資金量也不同。如果進行股票日內交易,您至少需要 25,000 美元(建議更多),但如果是外匯或期貨交易,您可能可以用更少的資金起步。
市場限制是另一個問題。並非所有市場都適合算法交易。選擇股票、ETF、外匯貨幣對或期貨時,應確保其流動性充足,足以處理算法生成的訂單。
制定或完善策略
一旦明確了資金和時間限制,就可以着手製定或完善可編程的交易策略。你可能已經有了手動交易策略,但它容易編程實現嗎?如果你的策略高度主觀,且缺乏規則基礎,那麼編程實現該策略幾乎是不可能的。基於規則的策略最容易編程實現——這類策略的入場點、止損點和目標價格都基於可量化的數據或價格走勢。
由於基於規則的策略易於複製和測試,如果您沒有自己的想法,可以免費獲取大量現成的策略。Quantpedia 就是這樣一個資源,它提供各種量化交易方法的學術論文和交易結果。您可以編寫這些規則,然後利用歷史數據和當前數據測試其盈利能力。編寫算法需要編程技能,或者需要使用相關軟件,或者需要有人幫您編寫代碼。
測試交易算法
最重要的步驟是測試。交易策略編寫完成後,在進行測試之前,切勿使用真實資金進行交易。測試包括讓算法在歷史價格數據上運行,以展示其在數千筆交易中的表現。如果歷史測試階段盈利,並且生成的統計數據(例如最大回撤、勝率、破產風險等)在您的風險承受範圍內,則可以繼續在模擬賬戶上進行真實交易測試。同樣,此階段應進行數百筆交易,以便您評估算法的性能。
如果該算法在歷史價格數據和真實模擬賬戶交易中盈利,那麼在進行真實資金交易時,務必密切關注。真實市場環境與歷史數據或模擬賬戶測試截然不同,因爲算法的指令會實際影響市場,並可能導致滑點。在驗證該算法在真實市場中也能像測試中一樣有效之前,務必保持警惕。
持續維護
只要算法在測試期間設定的統計參數範圍內運行,就不要隨意調整它。算法的優勢在於能夠不受情緒影響地進行交易,但交易者如果不斷修改算法,就會抵消這一優勢。不過,算法確實需要關注。要監控其運行情況,如果市場狀況發生重大變化,導致算法無法正常工作,則可能需要進行調整。
結論
算法交易並非一勞永逸、一夜暴富的捷徑。事實上,量化交易與手動交易一樣耗費精力。如果您選擇創建算法,務必注意時間、資金和市場限制可能對您的策略產生的影響,並據此制定相應的計劃。您可以將現有策略轉化爲更易於編程的規則型策略,或者選擇一種已經過測試和研究的量化方法。然後,使用歷史數據和當前數據進行您自己的測試。如果測試結果良好,則可以在嚴密監控下使用真實資金運行算法。如有必要,進行調整,否則就讓算法自行運行。