點選右邊主選單查看更多資訊

程式交易實盤風控怎麼設?單日虧損熔斷、委託逾時取消、對帳與雲端主機(VPS)配置

一分鐘看懂

程式交易上線後,比策略虧錢更常見的風險是程式出錯:重複下單、口數算錯、斷線後部位對不上、電腦當機沒人知道。實盤風控分成三層:下單前檢查(口數上限、價格合理範圍)、盤中監控(單日虧損達上限就全部平倉並停機、委託逾時自動取消、定時對帳)、系統穩定(放在雲端主機、異常時手機通知)。每一層都要在程式裡自動執行,不能靠人盯盤。

手動交易出錯,通常是一筆單;程式交易出錯,可能在幾秒內重複送出幾十筆。一個迴圈的條件寫錯、一次斷線重連沒處理好,就可能讓部位變成原本的好幾倍。

所以程式交易的風控,除了策略本身的停損,還要再加一層「保護你不被自己的程式傷害」的規則。

第一層:下單前檢查

每一筆委託送出之前,程式先檢查一次,任何一項不通過就不送:

檢查項目例子
單筆口數上限微台一次最多 5 口
總部位上限同方向最多 10 口
價格合理範圍限價離最新成交價超過 1% 就不送
下單頻率上限一分鐘內最多送 10 筆委託
交易時段只在設定的時段下單,收盤前幾分鐘不開新倉

這些上限要寫死在程式裡,跟策略邏輯分開。策略算錯了,這一層還能擋住。

第二層:盤中監控

單日虧損熔斷

當天虧損達到上限,全部平倉、停止下單,到隔天才恢復。

項目例子
帳戶資金100 萬元
單日虧損上限帳戶的 2%,2 萬元
換算微台點數20,000 ÷ 10 = 2,000 點
換算小台點數20,000 ÷ 50 = 400 點

虧損要用「已實現加上未實現」一起算,不能只看已經平倉的單。

委託逾時取消

限價單送出後,超過設定的時間(例如 30 秒)還沒成交,就自動取消,再決定要不要改價重送。不處理的話,帳戶裡會累積一堆忘記的掛單,行情一到突然成交。

定時對帳

每隔一段時間(例如每 5 分鐘),查詢帳戶實際的部位和委託,跟程式自己記錄的比對:

比對結果處理
一致繼續執行
部位不一致停止新的下單,通知你人工確認
有程式不知道的掛單取消,通知你

保證金監控

部位越大,保證金越吃緊。台指期的風險指標跌破一定比例,期貨商會追繳甚至砍倉。程式可以定時查詢權益數和風險指標,低於你設定的安全線就減碼。保證金和追繳的規則可以看期貨保證金完全解密。

第三層:系統穩定

為什麼要放在雲端主機(VPS)

放在家裡的電腦跑程式交易,會遇到停電、網路斷線、系統自動更新重開機、不小心關掉視窗。雲端主機是在機房租一台電腦,二十四小時開著,網路和電力都比家裡穩定。

家裡的電腦雲端主機
停電、斷網偶爾會遇到機房有備援
開機時間要自己顧一直開著
費用已經有了每月租金
適合回測、開發實單長時間執行

雲端主機怎麼選

項目建議
地點選台灣的機房,離期交所和券商主機近,延遲低
作業系統MultiCharts 只能在 Windows 上跑;Python 用 Windows 或 Linux 都可以
規格跑一兩個策略不需要很高,記憶體夠用、硬碟用 SSD 即可
時間同步開啟自動校時,K 棒時間才不會錯
系統更新設定在收盤後或週末才更新、重開機

異常通知

程式出錯時要能通知你,常見的做法是串接 LINE、Telegram 或 Email:

事件通知
單日虧損熔斷啟動立即通知
對帳不一致立即通知
程式超過一段時間沒有心跳(沒有回報還活著)立即通知
每天收盤當日損益、成交筆數摘要

「心跳」的意思是:程式每隔一分鐘寫一筆「我還活著」的紀錄,另一支監控程式發現太久沒有更新,就代表主程式當掉了,馬上通知你。

上線前先做這三件事

  1. 把三層風控寫成清單,逐項在模擬環境測試:故意讓它斷線、故意讓它虧到上限,看它有沒有照設計停下來。
  2. 從最小口數開始:實單先用一口微台跑一兩個月,確認成交、滑價、通知都正常。
  3. 準備人工接手的方法:程式停機時,你要知道怎麼用手機或券商軟體查部位、手動平倉。

委託回報、斷線重連和滑價的細節,可以看期貨券商 API 串接實務。程式交易的整體流程在期貨程式交易怎麼開始。

分享你的喜愛
我愛期貨
我愛期貨
文章: 66