目前跑了幾個台指期全日盤的自動交易策略,無論哪個頻率,只要遇到日盤最後一根K棒滿足進場條件時,都會因為日盤已收盤導致沒有進場。
想請問在不改使用更小頻率來觸發策略的條件下,有什麼方式能讓自動交易策略在夜盤第一根K棒或是策略重新啟動時自動進場嗎?
是否有相關範例寫法能夠參考?
目前跑了幾個台指期全日盤的自動交易策略,無論哪個頻率,只要遇到日盤最後一根K棒滿足進場條件時,都會因為日盤已收盤導致沒有進場。
想請問在不改使用更小頻率來觸發策略的條件下,有什麼方式能讓自動交易策略在夜盤第一根K棒或是策略重新啟動時自動進場嗎?
是否有相關範例寫法能夠參考?
Hello iker,
您可以在夜盤開盤第一根Bar時去檢查日盤最後一根Bar的條件看是否成立決定是否要下單。
舉例來說,在分鐘頻率的狀況下:
condition1 = 進場條件;
condition2 = if time = 150000 and condition1[1];
if condition1 and condition2 and position = 0 and filled = 0 then sepoition(1, market);
Hi 小幫手
在不跨日夜盤的情況下,腳本會是 condition1 觸發後,立即送出市價單,正常情況會成交在下根Bar的Open。
可是如果是夜盤第一根Bar才回頭檢查,不是會等第一根Bar收K時才檢查嗎?
這樣實際上會造成延遲一根K進場,已經不是原本策略預期的進場點了。
另外這點也會造成回測跟自動交易實單有落差(該進場沒進場或該出場沒出場,或延遲進出場),請問有什麼辦法可以解決這個問題嗎?
Hello iker,
如果回測的話,若使用1分鐘逐筆洗價,且勾選觸發即判斷成交的話,可以成交在開盤價上。
這是最接近的作法。
如果是即時的狀況下,在有勾選逐筆洗價的狀況下,只要夜盤開盤後有交易的話就會觸發腳本洗價,條件符合的話就會下單。
回測由於系統效能上的考量所以無法作到和即時狀況完全相同的情境。
要讓即時和回測兩者沒有落差,這是目前XQ無法作到的。
了解,謝謝小幫手
4 評論