2024-01-01

MultiCharts系統問題導致自動交易中斷

此篇『MultiCharts自動交易中斷發警示郵件』提到的方法,在一般情況的自動交易中斷,都可成功發警示郵件,但如果遇到的是MC系統問題,就無法透過這個方法來發警示郵件了,因為MC系統問題會導致交易訊號,全部強制轉為不啟用的狀態,我遇到過的MC(MultiCharts)系統問題導致自動交易中斷有兩種(如下圖所示):

  1. MC授權主機連線中斷
  2. 莫名的訊號錯誤


其實早期的MC是比較穩的,完全沒遇到過這兩種MC系統問題所導致的自動交易中斷,但後期MC版本的穩定度確實變差了,所以需要額外的注意與處理


MC授權主機連線中斷

此問題要注意的是,不要一次突然開大量的圖,否則容易會出現MC誤判為授權主機連線異常,早期我每日的歷史資料維護,每次都直接開45個圖也都沒事(每個圖只載入七日的資料),但現在我保守的降低到一次只開15個圖,隔幾分鐘後再開另外的15個圖,直到45個圖全部都開滿(至於真正的連線主機無法連線,這點倒不用擔心,因為英文版MC的授權主機共有三個區域:美國、英國、新加坡,所以要同時連續30分鐘一台都連不上,也極難)

此篇『『交易關閉時自動取消委託單』碰到MC授權情況的問題』的案例就是這類


莫名的訊號錯誤

此問題分成兩種情況

  1. IOG當沖收盤平倉的寫法(搭配[intrabarordergeneration = true]與[AllowSendOrdersAlways = true]),此種寫法早期版本的MC都可以正常下平倉單,不會出現莫名的訊號錯誤,導致自動交易中斷,但後來的MC版本被改到出問題了,大部分的時候都還是可以正常,但有時候會出現此現象,所以要改成Bar Close的方式平倉為主,而IOG當沖收盤平倉為輔(或完全不使用IOG當沖收盤平倉的機制
    註:
    [intrabarordergeneration = true]與[AllowSendOrdersAlways = true]可除了可使用在IOG當沖收盤平倉外,也可使用在當報價停止時立刻平倉部位與取消委託單,但因為MC後期版本的莫名訊號錯誤問題,所以這個機制也不適合使用了
  2. 另一種期況,就是沒有用到IOG,照樣會出現莫名的訊號錯誤,導致自動交易中斷,但這種情況發生的機率極低,但真的會發生,不是程式寫法有問題,而是MC內部有問題,這種真的無法做任何事來避免,只能即時監控並處理


MultiCharts系統問題自動交易中斷警示

但凡出現上面這兩種紅底的警示方框,自動交易就會被強制中斷了,且用此篇『MultiCharts自動交易中斷發警示郵件』提到的方法,也無法傳送郵件,只能自己寫程式來即時監控並發郵件通知,再藉由此APP『交易環境異常通知APP』在收到郵件時,縱使是在半夜手機也能發出告警聲,把自己叫醒後來即時處理(當沖交易者,部位有問題,半夜也該起床處理),而寫程式來即時監控的地方為下圖的目錄與檔案,有點麻煩,但MC版本越改穩定性越差,也沒辦法,奢求MC改進,倒不如自己監控與處理(不定時發生的問題是最難查的,縱使有人回報這類問題,MC開發人員也未必能在短期間找到bug)



延伸閱讀