欧美二区在线_国产1区2区3区精品美女_久久精品99久久_av中文一区

第五章 公式優化與測試平臺

來源:767股票知識網 時間:2019-05-15 15:50:36 責編:767股票 人氣:
    第五章 公式優化與測試平臺 
指標公式的優化 
條件選股公式的優化 
交易系統公式的優化 
無論是指標、條件選股,或者交易系統的編制,都是一個循序漸進的過程。這一點在交易系統中表現得尤為突出,從一個方案的提出,到量化,編制公式,然后在以后的不斷的檢驗--歷史數據下的靜態檢驗,當前數據下的動態檢驗,實戰檢驗,任何其中的一個環節如果發現有不合理的,不準確的的地方都需要我們對整個公式系統進行修改,使之更加完美,也許可以將之稱為“優化”。 

在分析家4.0的版本中,突出了這個功能的實現,可以通過測試平臺對所有的公式化分析工具或者交易工具進行全方位的測評,并提交一份翔實可信的測試報告,在以下的幾節中,我們將通過融合測試平臺的使用對指標、條件選股以及交易系統的公式進行優化。 
5、1測試平臺的基本內容和架構 
在工具欄中選中“系統測試平臺”,在分析家中為技術指標、條件選股以及交易系統建立了統一的測試平臺。 
假設我們選擇了技術指標當中的MA進行測試,在設定好一定的買入條件和賣出條件以及測試的市場模型之后即可對任意的指標、公式等進行測試。分析家中提供了兩種不同的測試模型,一種是針對全部信號的單個股票測試,另外一種是為了最佳的模擬真實的買入和賣出條件,以及參與市場的投資策略的測試模型,具體的內容和區別請參見分析家的說明書。 
買入條件設定 
測試時段,也即測試的時間區間,分析家默認的區間為19960101到當前。 
買入規則,在分析家中有以下的買入規則,如果默認的買入規則無法滿足您的要求,您可以在條件選股當中編制您的買入條件。 
平倉條件 
分析家提供以上5種平倉條件,涵括賣出指令和止損指令: 
目標周期為終點,到時自動平倉,20周期以后的收盤價平倉; 
目標利潤為終點,到時自動平倉,10%帳面盈利以后的收盤價平倉; 
三類止損平倉:分別設定不同類型下的規避風險條件 
市場模型:分析家提供兩類市場模型供測試分析,具體使用請見下列 

5、2 測試和公式優化的示例 
例一:MA均線指標參數優化和測試 
MA均線指標是我們較為常用的一個技術指標,我們通過測試平臺來初步檢驗一下該指標的使用效果,當然我們所能做到的是假設我們在歷史的某一天計算機提示了一個買入點,并且我們按照這個提示在當時進行了買入的操作--在一段時間之后的行情將會檢驗我們在此之前的操作的合理與否! 
參數名 最小 最大 缺省 
N1 0 300 5 
N2 0 300 10 
MA5:MA(CLOSE,N1); 
MA10:MA(CLOSE,10); 
因為不同的均線周期數應用了不同的分析市場中有不同的反映,根本的原因在于每一個合理的市場都存在自己的運行周期,所以個股的表現也緊緊地和市場聯系在一起,體現在指標分析當中,就效果較好的指標參數可以比較準確地描述和預測股票運行的方向。以下我們利用測試平臺來檢驗和尋找理想的MA均線參數。 
第一步:在測試平臺中選擇MA均線指標 
第二步:點擊下一步,設定測試時段和交易規則 
在上例中,我們選擇了從19960101-20010226這一時間段,并且選定了買入規則為指標線MA1向上穿過了MA2的時候使用全部的資金買入。 
第三步:設定相應的賣出條件和停損條件,并且選定測試的股票數量和對象,我們假設使用整個滬市的股票進行測試!為簡單起見,我們沿用了分析家以往的默認測試方法,只設定20個周期和目標利潤10%。 
市場模型: 
注意這里為了檢測真實的全市場的信號狀況,我們選擇了單股票測試; 
10萬資金,原來的測試模型里,就是現在的單股票測試,我們是針對的出現的所有的信號都按照20天10%的測評條件進行測試,無論信號出現的時間、次序,是否可以成為真實的買入點;現在提供另外的全市場測試,允許我們模擬真實的10萬資金在一段時間內按照規定好的條件連續的買入和賣出,最終統計在一定的時間內的一個模擬帳戶的交易收益! 
第四步:在瀏覽了整個測試的結構和條件之后,分析家提供了參數優化的模型--或者您可以直接略過參數優化直接進入到結果測試當中去。 
為了簡單起見,我們選用了對兩條指標線的參數進行優化測試,一條是短期均線;另外是一條長期均線,短期均線的優化步長設定為5,長期為10,整個優化的次數不得超過10000次。 
測試的結果分別在以下用兩種表達方式分別用圖表形象地列出: 
分析:通過以上的兩圖一表,我們可以發現以下的特征:在列表結果中,所有的成功率集中在50%-60%的窄區間內,說明參數周期的長短沒有對結果產生太大,太劇烈的影響,在圖形方式中,可以觀察到參數范圍(5,20)-( 15,20)之間的顏色為紅色,也就是說凈利潤最高; 
假定以第一個參數為序列遞增,信號的數量相反下降,從15367個信號降到了3000個,可見參數對信號的多寡有很大的影響,在實際投資中產生的交易機會的把握會同樣有影響; 
現在可以解釋為什么我們通常會使用5、10、20、30等幾個參數作為MA均線的原因了!在保障幾乎相當的成功率的前提下,選擇最多的信號密集區是我們在實戰當中必要的客觀技術要求下的環境,也正是這一點促使產生這樣的參數,并且被很多的投資者認可,我們通過測評系統的計算,得出了結論!同樣我們可以通過這個測評系統得到其它的所有公式、指標等等其相關的最佳參數集,從而完成了公式優化的第一大步! 

例二:MA均線交叉的條件選股測試和條件優化 
測試: 
承接上面的例子,我們結合市場的普通使用狀況和我們的優化表中的數據采用其中一組合適的參數作為測試的對象,來分析市場廣為流傳的均線買入賣出法進行測試。 
輸入MA均線的公式,并且使用參數5,10進行測試: 
注意這里為了模擬真實的10萬資金在一段時間內按照規定好的條件連續的買入和賣出,最終統計在一定的時間內的一個模擬帳戶的交易收益!我們選擇了全市場測試: 
從19960101-20000226我們測試了所有的上海市場的A股得出了以上的結論,總共的交易信號數量達到4656個,其中信號的優劣各占5成,但是年收益率為1.72%,就是說條件MA5向上交叉MA10日均線的利潤幾乎為0! 
優化: 
既然借助計算機和分析家的我們已經測得“如果只是簡單的使用MA均線,即便改變使用最佳的參數,而不考慮其他的因素的話,從概率的角度上講,基本是兩平微虧的局面......所以為了更好的利用計算機的作用幫助我們尋找更高更好的交易策略,需要對原來的條件進行更改或者加以限制,過濾掉多余的錯誤的信號”。 
在優化的過程中,我們需要分析全部的各個信號出現時當天的具體狀況,然后剔除比較惡劣的條件......盡量保留真實有效的信號! 
以下是我們隨機尋找了一個補充條件,當天出現大陽線和MA均線配合使用: 
則現在的測試條件變為: 
A1:=MA(CLOSE,5); 
A2:=MA(CLOSE,10); 
AA:=CROSS(A1,A2); 
B1:=CLOSE/REF(CLOSE,1)>1.07; 
B2:=CLOSE=HIGH; 
AA AND B1 AND B2 
再用以同樣的條件下進行測試,我們得到了以下的圖標,可以見到收益有了較為明顯的提高!這樣一來,說明新的公式所描述的選股條件較原來的條件更有意義,在實際操作中的參考價值也相對要高。 
收益率:61.29% 交易數量:48 勝率: 75% 
事實上每一個公式都是通過這樣的測試,不斷的完善之后才會交給到正式的市場去再檢驗,如果您承認市場是可以找到這樣的規律,它們確實存在,那么這個公式才會有意義,您才會去不斷的改良它!作為技術分析的前提,也正是我們分析家公式發揮作用的前提! 

例三:一個簡單交易系統的測評和優化 
一個簡單的交易系統 
“如果在一個KD強勢的市場中,如果股價從下方穿過了30日均線,并且當天的成交量有比較明顯的放大,我會買入;我的賣出條件是股價跌下10日均線之下立即拋出,當股價跌出買入價的5%時候主動止損”。 
在我們前面的介紹中,曾經介紹過一個朋友的最簡單的交易系統,交易系統是在不斷的重復改良,辯證和創新中得以升華的--現在就這個簡單的交易系統,我們來做一下系統的綜合評測,讓歷史上的數據來判斷吧! 
原來的公式系統為: 
AA:=“KDJ,D”; 
A1:=AA>40; 
A2:=VOL/MA(VOL,5)>2; 
A3:=CROSS(CLOSE,MA(CLOSE,30)); 
A4:=CROSS(MA5,CLOSE); 
ENTERLONG:A1 AND A2 AND A3; 
EXITLONG::A4 AND COUNT(A1 AND A2 A3,20)=1; 
交易系統在賣出條件上與其他的公式系統測試有所不同,其他的都是使用同一個測試平臺,都是一樣的,我們可以先簡單地將交易系統看作是條件選股的擴展,區別是交易系統的賣出條件更加的豐富,可以自己根據實際的經驗來編寫;而條件選股的公式在這個測試平臺上,只能遵守強制賣出和止損的固化的條件。 
剛好我們用一筆10萬的資金測試一下如果從96.1.1日開始,我們按照這個交易系統去做交易,一直做到今天,做一下測試,結果請看以下圖表: 
結果確實不理想,和所相差比較遠--我想,這里大概驗證了一個道理,只有市場是對的!把您的公式、想法讓市場去辨別,它會給您一個很好的答案的! 

附錄: 函數參考 
分析家的公式編寫系統使用了多類的函數,以達到快速提取數據和提高運算能力,同時簡化計算過程的要求。因此在不同類型的函數我們賦予了相當精確的含義,有的函數定義為行情數據提取函數,那么它的功能就是從靜態歷史上的行情數據或者動態的及時盤中數據提取我們所需要的數據以方便以后的分析和計算;有的函數定義為運算函數,是考慮到一些復雜的數學計算過程過于冗長,從而設計的簡化運算的函數等等。在以下的幾節中,我們將會分別介紹一共12類的函數。 
(1)、函數的基本模型: 
K(X1,X2,X3......) 
1、K表示函數的名稱; 
2、X1,X2,X3......表示該函數的所有參數。 
不同參數用逗號分隔并用括號將所有函數括起來列于函數名稱之后;參數的取值可以是變量也可以是一個常量,具體取值和含義因函數不同而不同; 
(2)、函數的引用周期: 
應不同的使用者在分析周期習慣上的差異,分析家特別設定了周期選擇,這主要是針對在引用類函數在引用數據時鎖定自己所需要的周期,例如在日線上,或者在周線上等等的要求。 
如右圖所示,一共可以從分筆到多日線等10類選擇。 
一、行情函數 
行情函數是最基本的函數,首先,它為我們提供計算所需的函數,這些函數從存儲的數據中取得我們所需要的各類數據,而其他多數函數所需的計算數據一般也是由通過引用行情函數產生的。 
1、OPEN 
含義:返回本周期的開盤價,簡寫“O” 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“OPEN”就表示取得當天開盤價的數值。 
2、HIGH 
含義:本周期的最高價,簡寫“H” 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“HIGH” 就表示取得當天最高價的數值。 
3、LOW 
含義:本周期的最低價,簡寫“L” 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“LOW”就是表示取得當天最低價的數值。 
4、CLOSE 
含義:本周期的收盤價,簡寫“C” 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“CLOSE”就表示取得當天收盤價的數值。 
5、VOL 
含義:本周期的成交量 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“VOL”就表示取得當天成交量的數值。 
6、AMOUNT 
含義:本周期的成交額 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“AMOUNT”就表示取得當天成交額的數值。 
7、ADVANCE 
含義:本周期對應大盤內個股上漲家數 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“ADVANCE” 
就表示取得當天大盤內個股上漲家數的數值。 
8、DECLINE 
含義:本周期對應大盤內個股下跌家數 
參數:無 
單位:無 
闡釋:如果您選定的分析周期為日線,那么“DECLINE”就表示取得當天大盤內個股下跌家數的數值。 
9、BUYVOL 
含義:主動性買盤成交量,取得本筆成交主動向買盤成交量。當本筆成交為主動性買盤時,其數值等于成交量,否者為0。 
限制:僅在分筆成交分析周期中對個股分析時有效,否則為0 
參數:無 
單位:手 
闡釋:測試原理 
10、BUYVOL 
含義:主動性賣盤成交量,取得本筆成交主動性賣盤成交量。當本筆成交為主動性賣盤時,其數值等于成交量,否者為0。 
限制:僅在分筆成交分析周期中對個股分析時有效,否則為0 
參數:無 
單位:手 
11、ISBUYORDER 
含義:測試是否以主動性買盤成交,取得本筆成交量是否為主動性買單,當本筆成交為主動性買盤時,返回1,否則為0 
限制:僅在分筆成交分析周期中對個股分析時有效,否則為0 
參數:無 
省略。。。。。。