同一模型,相同測試條件,得出完完全全不同的結果。 [文華財經]
- 咨詢內容:
我在論壇翻出一段代碼,簡單修改后測試,發現問題,代碼如下:
VAR31:=BACKSET(REF(HIGH,2)=HHV(HIGH,5),3);
VAR41:=CROSS(VAR31,0.9);
VAR51:=BACKSET(REF(LOW,2)=LLV(LOW,5),3);
VAR61:=CROSS(VAR51,0.9);
ZL:= REF(HIGH,BARSLAST(VAR41));
STICKLINE(C,REF(HIGH,BARSLAST(VAR41)),REF(HIGH,BARSLAST(VAR41)),COLORYELLOW,1);
ZC:= REF(LOW,BARSLAST(VAR61));
STICKLINE(C,REF(LOW,BARSLAST(VAR61)),REF(LOW,BARSLAST(VAR61)),COLORCYAN,1);
TK:=TIME>=0915&&TIME<=1445;
TP:=TIME>=1454;TK && CROSS(C,ZL),BPK;
TK && CROSS(ZC,C),SPK;
TP,CLOSEOUT;
AUTOFILTER;測試結果如下圖:
此主題相關圖片如下:贏智截圖20131115193404.jpg把上面代碼倒數第二行的清倉語句改成:
TP||C<BKHIGH*0.90,SP;
TP||C>SKLOW*1.1,BP;測試結果就變成了下面這個樣子:
此主題相關圖片如下:贏智截圖20131115193316.jpg又嘗試著改為tp,bp; tp,sp;結果又跟使用closeout時一樣,經核對信號,多數信號不一致,根據代碼原理判斷,第二個圖的信號準一些。
軟件版本為最新的387,確認信號下單,測試環境完全一樣。代碼有未來,但根據原理不應該影響信號,未來是用來標記位置并畫線的。
我就不明白了,C<BKHIGH*0.90,價格小于買開以來最高價的10%,這是一句不可能達到的平倉條件,有沒有這句都一樣,為什么去掉這句信號全亂了。
測試漏洞補來補去也補不完,這結果怎么讓人相信。
- 文華技術人員:
您的模型中的ZL是含有BACKSET計算出來的,是屬于未來函數的
- 文華客服:
我知道有未來函數,但問題是,它跟C<BKHIGH*0.90這句有什么關系?
我是在測試,又沒有新行情數據,有未來又如何,難道還能改變信號?
- 網友回復:
把代碼里的
tp,CLOSEOUT;
改為
tp,sp;
tp,bp;
測試結果是一樣的,但如果改成
TP||C<BKHIGH*0.90,SP;
TP||C>SKLOW*1.1,BP;結果就完全不一樣,只是加了一句10%的上損而已,10%啊,可能達到嗎,這句有沒有能影響結果嗎?
- 網友回復:
我只是隨便復制一段代碼測試一下而已,我對這模型不感興趣,只是發現了問題反饋給你們,希望你們做的更好,請你們認真點。
當然,也可能文華的軟件沒有問題,而是我水平太次不會用,那請指教,為什么信號不一致。
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 1145508240 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容