◆何謂程式交易
所謂程式交易,係應用特定交易邏輯於某一連慣性之參數資料(如價格),結果產生出一系列自動化交易訊號,並採用該訊號進行交易買賣。程式交易的優點大致上有1)排除人為主觀判斷,不猜高,不猜底,尊重市場方向、2)邏輯明確,排除情緒化反應、3)守紀律、一貫性的操作方式、4)節省主觀判斷所需的資源、5)可測試性:可經歷史資料的量化測試。反之,程式交易亦有缺點,大致上可歸類為:1)機械化模式,無法納入突發的基本面消息做即時反應、2)程式邏輯無法適用所有盤性、3)參數最佳化過程常常受到濫用、4)與人性時常發生衝突,造成交易者心理壓力。
◆程式交易的步驟
要進行程式交易,一般可分為下列步驟:
1. 決定交易標的物:期貨、現貨、選擇權
2. 選擇交易風格:波段、短線、單日當沖、套利,等等
3. 選擇交易的指標依據:一般程式設計通常採用技術面指標(如均線、KD、Bolinger Band、等)與籌碼面指標(如OI、委買委賣、等)做為邏輯判斷的架構
4. 運用程式語言將指標依據形成進出場交易指令
5. 檢視交易成果:將程式邏輯應用於真實歷史資料,此過程通常會涉及參數最佳化,必須注意的是參數最佳化為一把利刃,必須要利用得當,不濫用,才得以與適用於未來,而非過去
6. 測試於不同時段與不同市場以檢視程式邏輯與參數的可靠性與可變應性
7. 即使通過了歷史資料的測試,最好還是經過一定時間的real-time測試
8. 投入資金進行交易
◆評估程式交易
評估程式測試績效主要參考其淨利。淨利之構成有三大基本要素:
1. Profit Factor:也就是總獲利金額 ÷ 總損失金額。profit factor越大代表著交易累計所賺的錢越超過交易累計所虧的錢,該數字最好是在1.5以上。
2. 勝率:也就是贏的交易次數 ÷ 總交易次數。Profit factor高的話勝率可以容忍在低的範圍,但須注意勝率越低的程式所帶給交易人的壓力會越大。
3. 交易頻率:Profit Factor跟勝率給了我們每筆交易的期望值,但沒有交易頻率,總獲利還是難以估算。
◆總結
要建立一個程式交易系統並不難,難在於嚴格執行交易訊號,其必須經歷交易人日積月累隨著市場起伏所帶來的心情變化之考驗,所以一開始沒有經過嚴格測試的程式很容易讓交易人失去信心而喪失賺取可觀獲利的機會。一個交易程式其實不需要太複雜,但是它的特性(如profit factor、勝率、交易頻率、最大連續虧損等)投資人必須要有充分的掌握,只有這樣交易人才能將程式交易這份工具運用發揮到極致。
所謂程式交易,係應用特定交易邏輯於某一連慣性之參數資料(如價格),結果產生出一系列自動化交易訊號,並採用該訊號進行交易買賣。程式交易的優點大致上有1)排除人為主觀判斷,不猜高,不猜底,尊重市場方向、2)邏輯明確,排除情緒化反應、3)守紀律、一貫性的操作方式、4)節省主觀判斷所需的資源、5)可測試性:可經歷史資料的量化測試。反之,程式交易亦有缺點,大致上可歸類為:1)機械化模式,無法納入突發的基本面消息做即時反應、2)程式邏輯無法適用所有盤性、3)參數最佳化過程常常受到濫用、4)與人性時常發生衝突,造成交易者心理壓力。
◆程式交易的步驟
要進行程式交易,一般可分為下列步驟:
1. 決定交易標的物:期貨、現貨、選擇權
2. 選擇交易風格:波段、短線、單日當沖、套利,等等
3. 選擇交易的指標依據:一般程式設計通常採用技術面指標(如均線、KD、Bolinger Band、等)與籌碼面指標(如OI、委買委賣、等)做為邏輯判斷的架構
4. 運用程式語言將指標依據形成進出場交易指令
5. 檢視交易成果:將程式邏輯應用於真實歷史資料,此過程通常會涉及參數最佳化,必須注意的是參數最佳化為一把利刃,必須要利用得當,不濫用,才得以與適用於未來,而非過去
6. 測試於不同時段與不同市場以檢視程式邏輯與參數的可靠性與可變應性
7. 即使通過了歷史資料的測試,最好還是經過一定時間的real-time測試
8. 投入資金進行交易
◆評估程式交易
評估程式測試績效主要參考其淨利。淨利之構成有三大基本要素:
1. Profit Factor:也就是總獲利金額 ÷ 總損失金額。profit factor越大代表著交易累計所賺的錢越超過交易累計所虧的錢,該數字最好是在1.5以上。
2. 勝率:也就是贏的交易次數 ÷ 總交易次數。Profit factor高的話勝率可以容忍在低的範圍,但須注意勝率越低的程式所帶給交易人的壓力會越大。
3. 交易頻率:Profit Factor跟勝率給了我們每筆交易的期望值,但沒有交易頻率,總獲利還是難以估算。
◆總結
要建立一個程式交易系統並不難,難在於嚴格執行交易訊號,其必須經歷交易人日積月累隨著市場起伏所帶來的心情變化之考驗,所以一開始沒有經過嚴格測試的程式很容易讓交易人失去信心而喪失賺取可觀獲利的機會。一個交易程式其實不需要太複雜,但是它的特性(如profit factor、勝率、交易頻率、最大連續虧損等)投資人必須要有充分的掌握,只有這樣交易人才能將程式交易這份工具運用發揮到極致。