2023-12-03

『交易關閉時自動取消委託單』碰到MC授權情況的問題

我留倉策略的慣例是,在以下時間點會把交易所的有效委託單全部抽掉(於指定時間丟出RaiseRuntimeError,再藉由MC的交易關閉來取消委託單)

  • 每日MC(MultiCharts)重啟前
  • 周五收盤前(或例假日前)

但週六一早醒來卻發現還有兩筆有效委託單掛在交易所,找了快兩個小時才找到原因,一開始還以為MC的新版有問題,認為『交易關閉時自動取消委託單』這個功能在新版有問題(如下圖所示),後來發現不是這個功能有問題,但其實仍與這個功能有關

最後發現在上星期美東時間的11/27 17:33時,MC的授權連線出問題(如下圖所示),當時所有的自動交易全部被強迫關閉,在這種情況下,『交易關閉時自動取消委託單』這個功能是不會起作用的,所以關閉時委託單仍殘留在交易所,這是此問題的第一個點

第二個點是,MC授權連線出問題的時間點為美東17:33,正好是收盤後與開盤前這一小時,當我重啟MC後,再看委託單,有發現這兩筆委託單,但當時我認為這是重啟MC後,再送出的新委託單,所以不以為意,但其實在沒有特別設定AllowSendOrdersAlways屬性時,MC14是要等到開盤時才會真的送出委託單,請參考此篇『MultiCharts的AllowSendOrdersAlways雜紀

所以如果有啟用『交易關閉時自動取消委託單』這個功能,當有異常時的SOP處理應該是

  1. 關閉MC
  2. 再重新開啟MC
  3. 開啟MC的『Order and Position Tracker』視窗,切換到『Orders』頁籤,把Source欄位由『All』切換到『Mannual Orders』,查看是否仍有Pending Orders,如果有全部取消掉

註:不是在此次自動交易啟動後所送出的委託單,全部會被歸類到『Mannual Orders』,縱使是上次自動交易時所送出的委託單也是


延伸閱讀


1 則留言:

(僅顯示與本文切題的留言)

注意:只有此網誌的成員可以留言。