交易策略的程序化
交易策略的程序化是指將交易策略轉(zhuǎn)化為精確的數(shù)學(xué)公式或電腦語言公式,使之成為電腦可識別并能進(jìn)行檢驗的公式系統(tǒng)。
大多數(shù)投資者對自己的投資策略只能做出某種模糊的描述。比如我們常常在一些媒體上看到或聽到類似的描述:“某某合約放量上攻”、“某某合約受到某日均線的壓力”、“某某合約是小幅盤整”、“某某合約某日拉出一根大陽線”、“某某合約嚴(yán)重超買”或“超賣”,等等。這里的“放量”上攻,“壓力”,“大陽線”中的“大”、“小幅盤整”中的“小幅”,嚴(yán)重超買或超賣中的“嚴(yán)重”及“超買超賣”、都缺乏嚴(yán)格的定量及定性意義,也就是說缺乏教學(xué)語言的精確性及電腦語言的明確性,所以不能直接轉(zhuǎn)化成數(shù)學(xué)模型及進(jìn)行相關(guān)檢驗。打個比方,假設(shè)投資者以“放量上攻”后跟進(jìn)作為進(jìn)場的交易策略,這里暫且不提出場規(guī)則的定義,單是進(jìn)場規(guī)則就是不明確的,不客觀的,不能重復(fù)的,因而不可能進(jìn)行統(tǒng)計檢驗。這里的“放量”缺乏定性和定量的標(biāo)準(zhǔn)。何為“放量”?“放量”是指絕對水平還是相對水平?假設(shè)是絕對水平,那么多少是放量?假設(shè)是相對水平,那么參考系是什么,參照標(biāo)準(zhǔn)又是什么呢?如果不能準(zhǔn)確回答這些問題,就無法達(dá)到數(shù)學(xué)公式意義上的精確。再如,假設(shè)以某期貨合約“拉出一根大陽線”后跟進(jìn)作為進(jìn)場的策略思想,那么這個“大”應(yīng)該如何定義呢?是與自身對比為大,還是與其他合約對比為大?大了多少又叫大?是絕對值還是相對值?等等,同樣,不能準(zhǔn)確回答這些問題,同樣無法達(dá)到數(shù)學(xué)公式意義上的精確度。
投資者首先要把自己的交易策略轉(zhuǎn)化為精確的數(shù)學(xué)公式或電腦語言才可能客觀地利用計算機(jī)對大量的統(tǒng)計數(shù)據(jù)進(jìn)行檢驗,進(jìn)而需要評估其交易策略思想在統(tǒng)計意義上的準(zhǔn)確度。
交易策略的程序化過程可參照以下基本步驟
1、定義交易規(guī)則:交易策略的定性化。定義交易規(guī)則,指將交易策略思想歸納成明確的交易規(guī)則。所以說定義交易規(guī)則的過程即是對交易策略思想定性的過程。以簡單的平均線交易系統(tǒng)為例,假設(shè)交易策略是以短期平均線向上穿越長期平均線為買入信號;以短期平均線向下穿越長期平均線為賣出信號。則該交易策略可以設(shè)計為以下交易規(guī)則:
規(guī)則1,當(dāng)短期平均線向上穿越長期平均線時,買入。
規(guī)則2,在做空信號發(fā)生前,持倉。
規(guī)則3,當(dāng)短期平均線向下穿越長期平均線時,平倉反手。
規(guī)則4,在做多信號發(fā)生前,持倉。
在這里需申明的一點是,這里列舉的簡單平均線交易系統(tǒng),只是為了說明如何將交易策略思想轉(zhuǎn)為明確的公式系統(tǒng)。這種舉例不能說明任何作者對該系統(tǒng)的評價。
2、定義交易規(guī)則變量及參數(shù):交易策略的定量化。在對交易策略思想進(jìn)行歸納為明確的交易規(guī)則體系后,還必須進(jìn)一步對其中包含的變量及參數(shù)作出明確規(guī)定。
仍以簡單平均線交易系統(tǒng)為例。
定義1:P=價格(定義價格)
定義2:t=今日(定義時間序列)
公式1:MA1(t)=(P1+P2+...PN1)/N1 {定義平均線1}
公式2:MA2(t)=(P1+P2+...PN2)/N2 {定義平均線2}
定義3:N2>N1(定義長期平均線)
定義4:若MA1(t)>MA2(t) 但 MA(t—1)<MA2(t—l)則買入(定義買入規(guī)則)
定義5:若MA1(I)<MA2(t) 但 MA(t—l)>MA2(t—1)則賣出(定義賣出規(guī)則)
當(dāng)對交易系統(tǒng)所用變量及公式定義完成后,一套交易系統(tǒng)便從質(zhì)和量上固定下來,系統(tǒng)設(shè)計者就可以研究系統(tǒng)參數(shù)在不同值域中變化而使交易系統(tǒng)在給定數(shù)據(jù)庫中的表現(xiàn)變化。
在該例中,引參數(shù)為P1、N1、N2,即設(shè)計者可以變換價格定義及均線長度定義。比如,設(shè)計者可不使用收盤價,而使用開盤價、或最高價、最低價、甚至某種加工過的價格。均線周期長短也可根據(jù)需要加以變化。
3 編寫電腦程序。當(dāng)交易系統(tǒng)編寫為公式和定義系統(tǒng)后研究者需進(jìn)一步將其編寫為電腦可直接使用的電腦語言或軟件語言,以使交易系統(tǒng)能夠直接在電腦上運(yùn)算。比如,上述簡單平均線系統(tǒng)的定義及公式,編寫成某種電腦軟件語言后,便成如下形式:
根據(jù)以上述電腦軟件語言形式,電腦便可直接按交易系統(tǒng)的規(guī)則進(jìn)行運(yùn)算。如果編寫成電腦初級語言,如Basic,或高級語言,如C,則程序編寫可能要更復(fù)雜一些。在該電腦程序中,參數(shù)為價格、此處定義為Close(收盤價),及均線長度(Length1,Length2)可由系統(tǒng)設(shè)計者按需要變動。
(責(zé)任編輯:admin)
相關(guān)文章
-
沒有相關(guān)內(nèi)容