交易系統設計與優化
一個成功的交易系統最關鍵的標志,是在相當長的一段時間內它的績效總體表現為大的盈利和小的虧損,至少要能夠通過歷史行情的檢驗。然而,筆者認為這遠遠不夠,還需要進一步對交易系統做四個維度的重要分析,用以確定交易系統的盈利能力,并判明未來的改進方向。
第一個維度是交易系統的勝率,也就是賺錢的交易筆數與虧錢的交易筆數在總成交筆數中各自所占的比重。第二個維度是系統的盈虧比,也就是每次贏錢的平均金額與每次虧錢的平均金額的比。第三個維度是系統的摩擦率,大家都知道期貨是零和交易,每次成交都要繳納包括手續費在內的各種費用,無論這筆交易是盈是虧都不可回避,這個費用率即摩擦率。第四個維度是頻率,指這個系統平均在一段時間內,如一年內發出交易信號的次數。
現在我們可以分析上述四個維度與交易系統盈利能力的相關性。首先,高勝率就一定會盈利嗎?未必,極端的情況下,如連續99次100%盈利,只要遇到1次100%的虧損,即便有99%的勝率,最終結果還是歸零。其次,盈虧比高就一定能盈利嗎?也未必,如平均贏3虧2,但如果平均贏1筆的同時就伴有2筆虧損,則相抵后還是虧損,因此勝率要和盈虧比結合起來,才能構成一個最常見的交易系統數學表述,即:總盈利=盈利次數×平均盈利金額-虧損次數×平均虧損金額。再次是摩擦率,即每筆交易所要耗費的金額大小,這個是絕對消耗,因此當然是越少越好。最后是頻率,也就是多長時間平均進行一次交易,假如一個能盈利的交易系統要一到兩年才能捕捉一次交易機會,這就絕非優秀的交易系統。
接下來,讓我們結合四維評價方法來對兩種基本類型的交易系統做個剖析。筆者認為,交易系統有兩種基本類型,一種是基于振蕩行情的振蕩交易系統,另一種則是基于趨勢行情的趨勢交易系統。振蕩交易系統力求在振蕩行情中最大限度獲取盈利,同時竭力避免趨勢來臨時的可能虧損,趨勢交易則正好與之相反。我們再從上述四個維度對比會發現,相對于趨勢型交易系統,振蕩型交易系統通常要求有較高的勝率,一般大于50%;有相對寬松的盈虧比,可以在1以下;由于交易頻率較高,要求有非常低的摩擦率,即該類型的系統需要通過非常多的交易筆數來累積利潤,極端的如日內炒單,更是需要把摩擦損耗降至最低;相應地,振蕩型交易系統的資金曲線比較平滑,回撤較少。而趨勢交易則通常僅需不高的勝率,可以小于50%甚至更低,但一定有較高的盈虧比,如進3退2、甚至進2退1或更高,以及相對寬松的摩擦率。因為交易頻率相對較低,交易費用高一些也可以承受,其資金曲線有可能出現一定比例的較大回撤。如果有人要問,有沒有可能設計出兩者相結合的交易系統,筆者認為這是可以實現的,只是構成也更為復雜。
我們知道,參數優化和資金管理是交易系統績效提升的兩個重要途徑,接下來我們結合兩種基本類型的交易系統的特性,分別探討績效提升的側重點。
首先是系統盈利能力與參數優化的關系。一個系統在一定的參數條件下即使通過歷史行情測試可以盈利,但它也未必一定能在現實中盈利,問題最有可能出在兩個環節中。一是先驗的不能實現,指測試交易的理想化程度在現實中不能完全實現,如測試中的平倉可能是現實中的停板,又或者與測試時段所選擇的行情特異性相關等。二是后驗的不能實現,指測試中的交易需要非常精準的操作紀律,而實際執行中因為操作者的原因不能完全實現系統機械化操作,從而導致盈利系統變成虧損。第一種情況主要可以通過調整參數進行優化,而第二種情況則需要調整系統使人與系統能夠實現和諧統一。對于同樣的策略,不同的參數有可能決定同一個系統的盈虧,參數優化具有非常重要的作用。
其次是系統盈利能力與資金管理的關系,這里資金管理主要指倉位控制。因為振蕩交易法主要是通過多次小的盈利來累積利潤,因此要求多數情況下一開始倉位就比較大,而對于在趨勢可能來臨的情況下要求止損控制非常嚴格,因此對于振蕩型交易系統重在參數優化。趨勢交易則可以容忍較多的試錯,目的是要讓利潤奔跑,因此相對而言,資金管理或者倉位管理在趨勢型交易系統中的發揮空間更大。
筆者認為,對于趨勢交易系統,一方面需要通過參數優化提升交易的勝率,進而提高系統的利潤率,特別是每個品種可能有不同的最優參數,有時候一段時期內的行情也會有特別的最優參數,所以要進行適度優化;另一方面,也要通過提升盈虧比來提升系統的利潤率,有時資金管理即倉位管理的作用甚至比參數優化更重要,關鍵在于操作者是否能夠區分趨勢交易系統中哪些情況下更有可能出現強大的趨勢,而哪些交易又會被系統止損。只有深刻理解自己的交易系統,進行相應的改進,交易系統的績效才能不斷提升。