逐筆洗價

  •   1.4K 
  • 最後發表   Alan-L  2022 八月 02
Alan-L 發文於   2022/07/16

我回測我的腳本,勾選逐筆洗價,

1. 若我的執行頻率選用1分鐘時, 系統會用當日Tick資料來模擬逐筆洗價的行為,所以當條件滿足時會執行我的腳本SetPosition = 1 的指令,在下一個 洗價(Tick))時, position 會由0 變為1

2. 但當我的執行頻率選用5分鐘時, 系統就不會用Tick資料來模擬逐筆洗價的行為,而是每5分鐘洗一次價,所以當條件滿足時也不會執行我的腳本 SetPosition = 1 的指令,而 position 永遠不會由0 變為1

請問這是為什麼? 如何解決?

謝謝

排序方式: 標準 | 最新
musashi 發文於   2022/07/17

一、1分鐘+逐筆 = 一根1分K棒洗價四次(K棒的開高低收),這樣在同一根1分K棒就可能會讓position=1。

二、5分鐘+逐筆 = 一根5分K棒洗價五次(五根1分K),可以再自動交易的回測畫面勾選【觸發即判斷成交】,即可在當根1分K棒進場。

詳細說明可參考 自動交易回測功能 

Alan-L 發文於   2022/07/18

謝謝你的快速答復,我再次重跑回測,結果如下

一、1分鐘+逐筆: 如你所說的 一根1分K棒洗價四次,回測結果是正確的。

二、5分鐘+逐筆:並不是1分鐘洗價一次,而是5分鐘洗價一次,因此position沒有機會由0 變為1,回測的結果就沒有交易,結果不正確

請問這是什麼問題,那個設定沒弄對?如何解決這個問題?

謝謝你

musashi 發文於   2022/07/18

剛測試回測5分鐘+逐筆,只有在指定的日期才是一根K棒洗價五次。

Alan-L 發文於   2022/07/22

你說只有在指定的日期才是一根K棒洗價五次, 不很清楚你的意思?  請你詳細說明之, 請問什麼日期才會一根K棒洗價五次? 什麼日期一根K棒五分鐘才洗價一次五次?

musashi 發文於   2022/07/22

5分鐘+逐筆就是回測的開始到結束日期都是一根洗價五次

Alan-L 發文於   2022/07/23

同樣的腳本, 執行頻率都是1分鐘, 以前回測時都是一分鐘洗價4次,同一個腳本。但今天做回測變成一分鐘只洗價一次,這是為什麼? 要如何設定才能每次回測時都是每分鐘洗價4次? 謝謝你

musashi 發文於   2022/07/23

要開逐筆,參考附件圖。

附加文件

XQ小幫手 發文於   2022/08/02

Hello Alan-L,

 

在回測的逐筆洗價中,並不是每筆tick都會洗。(實際上,即時的逐筆洗價也不一定每筆都洗,快市時可能會多筆洗一次)

1分鐘逐筆洗價 => 用1分鐘 OHLC 來模擬4筆tick洗價。

其他頻率逐筆洗價 => 用1分鐘 Bar 來模擬洗價,如果您是5分鐘頻率的話,同根Bar會洗5次。

 

舉例來說 09:00 ~ 09:05 這根Bar,第一次洗價是 09:00 ~ 09:01 的交易資訊,第二次洗價是 09:00~09:02 的交易資訊 ... 直到第五次09:00~09:05。

需注意 time 回傳的是該根Bar的開始時間,所以若 print time 的話會是5筆相同的 time (上面的例子的話就會是090000)。

您可以同時 print getfield("Time", "1") 1分鐘頻率的時間會比較容易看出差別。

 

若沒有開逐筆洗價的話,則是每根Bar完成時才運算,1根Bar運算一次。

逐筆洗價的運算只有在回測區間才會發生,資料讀取筆數的運算是不會洗價的。

 

感謝 musashi 的熱心回覆。

發表回覆
Close