開(kāi)拓者 TB如何使用FileAppend自定義品種,實(shí)現(xiàn)套利系統(tǒng)回測(cè)
作者:開(kāi)拓者 TB 來(lái)源:cxh99.com 發(fā)布時(shí)間:2012年11月06日
- 咨詢內(nèi)容: 首先感謝TB團(tuán)隊(duì)為我這類(lèi)普通交易者做出的貢獻(xiàn),給我以追求夢(mèng)想的機(jī)會(huì)!
在這里也與大家享一個(gè)我自己使用的小技巧,愿大家共同進(jìn)步,全部實(shí)現(xiàn)財(cái)務(wù)自由~~
由于TB在歷史回測(cè)時(shí)只能對(duì)圖表中的data0進(jìn)行交易,所以套利的回測(cè)一直是個(gè)問(wèn)題。我的解決方法是,利用Tb的自定義品種功能,自定義一個(gè)價(jià)差品種。操作步驟如下:
首先新建一個(gè)交易指令、交易指標(biāo)皆可。打開(kāi)超級(jí)圖表,插入你要套利的品種,并將該指令插入,這時(shí),該指令將生成一個(gè)txt文件,里面即是我們的價(jià)差K線數(shù)據(jù)。
一個(gè)簡(jiǎn)單的雙品種價(jià)差套利源碼如下:
Vars
Numeric myhigh;
Numeric mylow;
Numeric myopen;
Numeric myclose;
Begin
If(Data0.Close != InvalidNumeric && Data1.Close != InvalidNumeric)
{
myhigh=max(Data0.open-Data1.open,Data0.close-Data1.close);
mylow=min(Data0.open-Data1.open,Data0.close-Data1.close);
myopen=Data0.open-Data1.open;
myclose=Data0.close-Data1.close;
FileAppend("f:\\tb\\spread.txt",DateToString (date)+" "+Text( myopen)+" "+text( myhigh)+" "+text( mylow)+" "+text( myclose));
}
End
然后通過(guò)TB的數(shù)據(jù)導(dǎo)入功能,新建品種,詳細(xì)見(jiàn)版主的帖子: http://www.tradeblazer.net/forum ... &extra=page%3D1 。
至此,我們的價(jià)差K線就完成了。
最后打開(kāi)超級(jí)圖表,將價(jià)差K線以及套利品種全部插入,出交易信號(hào)后在價(jià)差K線上買(mǎi)賣(mài),這樣就能對(duì)套利策略進(jìn)行回測(cè)。
另外,通過(guò)fileappend自定義品種還可以有一些擴(kuò)展運(yùn)用。在這里不再贅述,提供一思路,供大家參考。
[ 本帖最后由 sensegray 于 2010-1-3 22:10 編輯 ]
- TB技術(shù)人員: 好象現(xiàn)在不用這么麻煩了吧,直接疊加你要套利的兩個(gè)品種在超級(jí)圖表里,然后編寫(xiě)公式就可以了!
- TB客服: 怎么搞呢。