跨品種套利測試關(guān)于數(shù)據(jù)的問題
作者:開拓者 TB 來源:cxh99.com 發(fā)布時(shí)間:2013年10月15日
- 咨詢內(nèi)容:
如做豆粕豆油指數(shù)套利測試,豆油2000年就有數(shù)據(jù),豆粕2006年才有數(shù)據(jù),其他品種類似,我想找一個(gè)方法能夠發(fā)現(xiàn)必須2個(gè)(或多個(gè))品種均有數(shù)據(jù),才開始計(jì)算價(jià)差,然后發(fā)信號。而不是每次都是手工設(shè)置起始時(shí)間,手動去改,太不智能了。如果不改,TB會把之前沒數(shù)據(jù)的那段單邊也會產(chǎn)生信號進(jìn)行測試,結(jié)果又不對。
翻遍F1里關(guān)于Date的函數(shù),嘗試了用Data0.Close[1]!=InvalidNumeric,用data0.HistoryDataExist()這兩個(gè)方法,但嘗試均均無效,超級圖表左上角明確顯示豆油沒數(shù)據(jù),但是用這兩個(gè)函數(shù)均是ture,無數(shù)據(jù)的時(shí)候open居然都能取到,就是有數(shù)據(jù)第一天的open。又嘗試用data0.Date!=data1.Date,發(fā)現(xiàn)又無效,雖然無數(shù)據(jù)的品種open是有數(shù)據(jù)第一天的open,但是date又是無數(shù)據(jù)當(dāng)天的date,凌亂了。不明白TB套利這塊是如何設(shè)計(jì)的,是否留有一個(gè)方法能夠通過代碼自動判斷數(shù)據(jù)的日期是否對上。
If(Data0.Close[1]!=InvalidNumeric&&Data1.Close[1]!=InvalidNumeric)
{
Spread=Data0.Open*lots0/(Data1.Open*lots1)*100; // 定義價(jià)差
}
else
{
return;
}
- TB技術(shù)人員:
關(guān)注一下。