關(guān)于回測的邏輯,之前有寫過帖子,http://forums.icetech.com.cn/forum.php?mod=viewthread&tid=3371&extra=page%3D1,有詳細(xì)的介紹。
第一、回放和回測時(shí)都是根據(jù)bar內(nèi)價(jià)格走勢進(jìn)行成交的,但是這個(gè)bar內(nèi)價(jià)格走勢有一個(gè)地方不一樣,就是連續(xù)還是間斷:回測中,bar內(nèi)價(jià)格走勢是連續(xù)的,所以可以成交在指定的價(jià)格上;在回放中,bar內(nèi)價(jià)格走勢是間斷的,所以只能成交在指定tick價(jià)格上。
第二、未開精細(xì)資料的回測和as is回放(若圖表是1分鐘周期,那么就是逐分回放)是類似的,每根bar相當(dāng)于有4筆tick,由開高低收4個(gè)價(jià)格組成的,它們出現(xiàn)的順序,這個(gè)順序的原理回測和回放是相同的(見上面的帖子),假設(shè)這里開盤價(jià)離最高價(jià)最近,那么4筆tick的順序是開盤tick——最高價(jià)tick——最低價(jià)tick——收盤tick;對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在這4筆tick的價(jià)格上。
第三、開精細(xì)資料的回測和逐筆回放是類似的,bar內(nèi)價(jià)格走勢是由實(shí)際的tick按順序組合成的;對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)于回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在tick價(jià)格上。
第四、對(duì)于回放中的bar內(nèi)價(jià)格走勢,您可以通過開啟bar內(nèi)模式并且逐筆回放將當(dāng)根bar內(nèi)的tick資料輸出出來進(jìn)行驗(yàn)證;這個(gè)tick資料理論上是從報(bào)價(jià)管理器中是一致的,但是實(shí)際逐筆回放時(shí)并不會(huì)嚴(yán)格按照報(bào)價(jià)管理中存儲(chǔ)的tick進(jìn)行逐筆回放,回放中會(huì)忽略相同的tick價(jià)格,比如說,報(bào)價(jià)管理器中存儲(chǔ)的tick價(jià)格依次是3787、3787、3789、3787,那么實(shí)際回放中使用的tick價(jià)格是3787、3789、3787,也就是回放中會(huì)忽略連續(xù)相同的tick資料。
第五、在實(shí)際的逐筆回放中,盡管會(huì)忽略連續(xù)相同的tick資料,但依然和報(bào)價(jià)管理器中不一樣的情況,這種情況和精細(xì)回測中出現(xiàn)的情況類似(見上述帖子第七章),所以遇到這種情況,您可以通過開啟bar內(nèi)模式并且使用逐筆回放將tick資料輸出出來進(jìn)行驗(yàn)證。
?
關(guān)于回測的邏輯,之前有寫過帖子,http://forums.icetech.com.cn/forum.php?mod=viewthread&tid=3371&extra=page%3D1,有詳細(xì)的介紹。
第一、回放和回測時(shí)都是根據(jù)bar內(nèi)價(jià)格走勢進(jìn)行成交的,但是這個(gè)bar內(nèi)價(jià)格走勢有一個(gè)地方不一樣,就是連續(xù)還是間斷:回測中,bar內(nèi)價(jià)格走勢是連續(xù)的,所以可以成交在指定的價(jià)格上;在回放中,bar內(nèi)價(jià)格走勢是間斷的,所以只能成交在指定tick價(jià)格上。
第二、未開精細(xì)資料的回測和as is回放(若圖表是1分鐘周期,那么就是逐分回放)是類似的,每根bar相當(dāng)于有4筆tick,由開高低收4個(gè)價(jià)格組成的,它們出現(xiàn)的順序,這個(gè)順序的原理回測和回放是相同的(見上面的帖子),假設(shè)這里開盤價(jià)離最高價(jià)最近,那么4筆tick的順序是開盤tick——最高價(jià)tick——最低價(jià)tick——收盤tick;對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在這4筆tick的價(jià)格上。
第三、開精細(xì)資料的回測和逐筆回放是類似的,bar內(nèi)價(jià)格走勢是由實(shí)際的tick按順序組合成的;對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)于回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在tick價(jià)格上。
第四、對(duì)于回放中的bar內(nèi)價(jià)格走勢,您可以通過開啟bar內(nèi)模式并且逐筆回放將當(dāng)根bar內(nèi)的tick資料輸出出來進(jìn)行驗(yàn)證;這個(gè)tick資料理論上是從報(bào)價(jià)管理器中是一致的,但是實(shí)際逐筆回放時(shí)并不會(huì)嚴(yán)格按照報(bào)價(jià)管理中存儲(chǔ)的tick進(jìn)行逐筆回放,回放中會(huì)忽略相同的tick價(jià)格,比如說,報(bào)價(jià)管理器中存儲(chǔ)的tick價(jià)格依次是3787、3787、3789、3787,那么實(shí)際回放中使用的tick價(jià)格是3787、3789、3787,也就是回放中會(huì)忽略連續(xù)相同的tick資料。
第五、在實(shí)際的逐筆回放中,盡管會(huì)忽略連續(xù)相同的tick資料,但依然和報(bào)價(jià)管理器中不一樣的情況,這種情況和精細(xì)回測中出現(xiàn)的情況類似(見上述帖子第七章),所以遇到這種情況,您可以通過開啟bar內(nèi)模式并且使用逐筆回放將tick資料輸出出來進(jìn)行驗(yàn)證。
?
接下來,繼續(xù)就我在學(xué)習(xí)您帖子的內(nèi)容時(shí)的困惑進(jìn)行提問:在此篇回答中,第二里有句話:“對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在這4筆tick的價(jià)格上”,這里面的相鄰2筆tick指的是什么?因?yàn)槭俏撮_啟精細(xì),所以對(duì)回測來說有4筆tick,如果對(duì)回放來說,相鄰兩筆tick之間的價(jià)格不存在的,那不就等于只有2個(gè)tick了,如果是這樣的話又為何只能成交再這4筆tick的價(jià)格上呢?
?
抱歉,這個(gè)地方讓您有點(diǎn)誤解了,“對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在這4筆tick的價(jià)格上”,這句話可以通過下面的例子進(jìn)行對(duì)比:(以這個(gè)帖子http://forums.icetech.com.cn/for ... &extra=page%3D1的第二章的例子進(jìn)行對(duì)比舉例)
if date=1171031 and time=920 then
? ? buy("first") next bar at 3570 stop;
那么"first"委托單在回測下就成交在下一根bar的3570價(jià)格上(觸價(jià)后成交在指定的委托價(jià)上);而在回放下就成交在3572價(jià)格上(只能成交在tick價(jià)格上)
?
抱歉,這個(gè)地方讓您有點(diǎn)誤解了,“對(duì)于回測來說,相鄰兩筆tick之間的價(jià)格是存在的,而對(duì)回放來說,相鄰兩筆tick之間的價(jià)格是不存在的,也就是說回放中只能成交在這4筆tick的價(jià)格上”,這句話可以通過下面的例子進(jìn)行對(duì)比:(以這個(gè)帖子http://forums.icetech.com.cn/for ... &extra=page%3D1的第二章的例子進(jìn)行對(duì)比舉例)
if date=1171031 and time=920 then
? ? buy("first") next bar at 3570 stop;
那么"first"委托單在回測下就成交在下一根bar的3570價(jià)格上(觸價(jià)后成交在指定的委托價(jià)上);而在回放下就成交在3572價(jià)格上(只能成交在tick價(jià)格上)