MT5訂單與持倉|避免淨額帳戶的事故
目錄
在執行EA之前,請先確認帳戶是淨額(Netting)還是對沖(Hedging)。同一個EA,只要帳戶類型不同,反向交易的結果就可能是「新持倉」,也可能是「平倉」。如果EA的設計前提與帳戶不符,即使邏輯沒有問題,也會產生非預期的損益。
我們之所以重視這項確認,是因為有時不會出現任何錯誤訊息,只有運作方式悄悄改變。本文會先整理名詞,再依序說明容易發生的事故與確認步驟。
訂單、成交與持倉是不同的東西
MT5的交易會依以下3個階段記錄。
- 訂單(Order):「想買」「想賣」的指示。限價單或停損單這類掛單,在成交之前不會形成持倉。
- 成交(Deal):訂單成立的紀錄。一筆訂單也可能拆成多筆成交。
- 持倉(Position):成交的結果,也就是目前持有的部位。
「還有訂單」與「持有倉位」是不同的狀態。例如,即使把EA從圖表上移除,MT5上的掛單與持倉也不一定會自動消失。停止EA後,必須在交易分頁確認兩者是否都已清除。
推薦經紀商比較 →
🎁 免費下載EA📧 免費電子郵件課程(共 8 封)+ 訂閱者專屬 MT5 指標 13 款合集
訂閱後會立即收到訂閱者專屬合集的下載連結,內含本站 13 款 MT5 指標的已編譯檔案(.ex5)、原始碼和使用指南。隨後透過共 8 封郵件介紹外匯自動交易的本質、回測的正確解讀方法和經紀商選擇技巧(前 5 天每天 1 封,之後在訂閱第 7、14、30 天各 1 封)。MQL5 Market 版(首發價,隨銷量分階段漲價)漲價前也會通知您。在本站,只要擁有合作經紀商的真實帳戶,EA 即可免費使用。
※ 嚴格保護隱私。可隨時取消訂閱。
淨額與對沖有什麼不同
淨額是每個商品只合併成1個持倉的方式。對沖則是即使同一個商品,也能依每筆成交分別持有獨立持倉的方式。
| 操作範例 | 淨額帳戶 | 對沖帳戶 |
|---|---|---|
| 持有買入0.1手時再買入0.1手 | 合併為買入0.2手的1個持倉 | 買入0.1手的2個持倉 |
| 持有買入0.1手時賣出0.1手 | 互相抵銷,無持倉 | 買入與賣出共2個持倉(雙向持倉) |
| 持有買入0.1手時賣出0.2手 | 反轉為賣出0.1手 | 不是第3筆,而是買入0.1手與賣出0.2手共2個持倉 |
| 各持倉的停損、停利 | 每個商品僅限1組 | 可依每個持倉個別設定 |
重點在第2列。在淨額帳戶上,原本打算建立雙向持倉而送出的訂單,實際上會成為平掉既有持倉的訂單。
在無法雙向持倉的帳戶上發生的事故
1. 本想避險的訂單變成了平倉
對於為了控制浮動虧損而加入反向交易的EA,在淨額帳戶上持倉會直接消失。如果EA以為「兩邊都還持有」而繼續執行後續處理,持倉管理就會與實際狀態脫節。若EA的設計是會再送出反向訂單,甚至可能產生方向非預期的新持倉。
2. 馬丁加碼或網格的管理崩壞
以個別停利多個持倉為前提的設計,在淨額帳戶上無法成立,因為整體會合併成單一平均價格。依加碼訂單的內容,停損與停利的價位也可能隨之改變。以持倉數量判定上限的EA,不論加碼幾次都只算1,限制可能完全失效。
3. 同一商品的多個EA互相干擾
這是最容易被忽略的事故。例如MEGAMAX DONCHIAN與DONCHIAN ENGINE,兩者都是在USDJPY H1上運行的EA。若在淨額帳戶上同時使用,USDJPY的持倉會合併為一個。視設計而定,其中一個EA的平倉動作可能連另一個EA的部位也一併平掉,或是因為被判定為「持有中」而阻止新的進場。
各EA的實測數值僅供單獨檢視之用,並不代表在同一商品上併用時的績效。
反方向的事故也存在
把以淨額為前提的EA放到對沖帳戶上運行,原本打算用來平倉的反向訂單,可能會以新持倉的形式留下來。雙向持倉不斷累積,保證金、隔夜利息與點差的負擔就會持續。對沖帳戶並不一定永遠比較安全。
上線前的確認步驟
- 確認帳戶類型:終端機上方的標題列或登入時的操作紀錄,通常會顯示「Hedge」「hedging」等字樣。不同版本的標示可能有所差異,若無法判斷,請向經紀商詢問。
- 確認EA支援的帳戶:查看說明書或參數中是否有指定帳戶類型。也請一併參考EA設定方法。
- 在模擬帳戶上測試運作:準備與正式環境相同帳戶類型的模擬帳戶,以最小手數運行,確認交易分頁的筆數是否符合預期。
- 統一回測時的帳戶類型:查看策略測試器的結果時,請確認測試環境與實際運用的帳戶類型是否相同。
- 找出同一商品的併用情形:若同一個帳戶中有多個EA操作相同商品,建議避免在淨額帳戶上併用。
- 閱讀經紀商的條件:帳戶類型在開戶時就已決定,一般而言要變更必須另開帳戶。各經紀商的處理方式不同,請以外匯經紀商比較為起點,再確認官方公布的條件。
這項確認的限制
先說明我們無法斷言的部分。
- 本文說明的是一般性的機制,並非針對特定EA在兩種帳戶類型下進行比較的結果。實際行為必須確認該EA的實作才能得知。
- 對於無法閱讀程式碼的EA,釐清原因的能力有限。如果在短暫的模擬期間內從未發生加碼或反轉,問題就不會浮現。
- 即使是「對沖帳戶」也不能掉以輕心。依監管規定或經紀商條款,雙向持倉與平倉順序可能受到限制。光看表面上的帳戶類型,仍有無法得知的條件。
- 即使統一了帳戶類型,因點差與成交差異造成的績效落差仍然存在。這並不保證能得到與回測相同的結果。
另外,淨額本身並不是壞事。對於每個商品只持有1個持倉、單純買賣的EA,持倉容易掌握反而是優點。重要的不是孰優孰劣,而是EA的設計與帳戶是否相符。
總結
- 訂單是指示,成交是成立的紀錄,持倉是目前持有的部位。
- 淨額是每個商品1個持倉,對沖則可在同一商品上持有多個持倉。
- 淨額帳戶上的反向訂單不會形成雙向持倉,而是作為平倉或反轉運作。
- 在同一商品上併用多個EA時,必須留意持倉會被合併。
- 即使是對沖帳戶,若對平倉的預期不同,也可能留下非預期的雙向持倉。
- 正式上線前,請以相同帳戶類型的模擬帳戶與最小手數確認運作。
相關文章
📧 免費電子郵件課程(共 8 封)+ 訂閱者專屬 MT5 指標 13 款合集
訂閱後會立即收到訂閱者專屬合集的下載連結,內含本站 13 款 MT5 指標的已編譯檔案(.ex5)、原始碼和使用指南。隨後透過共 8 封郵件介紹外匯自動交易的本質、回測的正確解讀方法和經紀商選擇技巧(前 5 天每天 1 封,之後在訂閱第 7、14、30 天各 1 封)。MQL5 Market 版(首發價,隨銷量分階段漲價)漲價前也會通知您。在本站,只要擁有合作經紀商的真實帳戶,EA 即可免費使用。
※ 嚴格保護隱私。可隨時取消訂閱。