從事件模型到交易資料結構
MQL4 與 MQL5 XAUUSD EA 開發的共同起點,是把交易規則和券商商品條件分開保存。MQL4 XAUUSD EA 與 MQL5 XAUUSD EA 可以表達相同的進出場邏輯,實際 contract size、tick size、tick value、最小手數、volume step、spread、swap、margin、execution 與交易時段則由券商伺服器提供。程式初始化時應讀取並記錄這些欄位,讓部位大小、停損距離和成本計算跟著目標帳戶更新。
兩種語言都使用事件函式驅動 Expert Advisor。MQL4 官方 Event Handling Functions 定義 OnInit、OnDeinit、OnTick、OnTimer、OnTester 與 OnChartEvent 等處理器;MQL5 Event Handling 延續這個架構,並加入 OnTrade 與 OnTradeTransaction。OnTick 適合更新報價和策略狀態,OnTimer 可處理定時工作,OnTradeTransaction 則能接收 MqlTradeTransaction、MqlTradeRequest 和 MqlTradeResult,將送單、伺服器處理、部分成交、歷史更新與 position 變化逐一寫入日誌。
MQL4 轉 MQL5 的核心工作是維持策略語義,並逐項改寫對應的事件、資料存取和交易函式。MetaQuotes migration 文件指出,MQL5 已改用新的程式介面;交易流程也以 request、order、deal 和 position 分層表示。遷移時應先建立測試案例,固定同一根 K 線輸入、指標值、訊號時間、方向、手數和停損,再比較兩個版本的輸出。MQL5 還可能採 netting 或 hedging 持倉制度,依 ticket 管理多筆部位的舊邏輯需要對應帳戶模式重寫。
用回測與走勢前進驗證遷移結果
XAUUSD EA 回測需要使用相同資料與成本口徑。MQL5 Strategy Tester 官方文件列出 Every tick、1 Minute OHLC、Open prices only,以及使用券商 real ticks 的模式;real ticks 仍會在分鐘資料不完整時由測試器補入生成 ticks。比較 MQL4 與 MQL5 結果時,應固定伺服器、symbol、timeframe、資料起訖、時區、tick 模式、spread、commission、swap、slippage 和初始資金,並保存每次測試的 EA 版本與 inputs。這些條件任何一項不同,都可能改變訊號順序、成交價和資金曲線。
「量化回測風險呈現規範」要求績效連同樣本區間、交易成本、滑點與風控條件呈現;「走勢前進訓練測試設計」則用時間順序分開參數建立與後續驗證。遷移測試可先比較兩個版本在同一歷史區間的訊號一致率,再把後續未參與調參的資料作為 forward window。單筆淨期望可寫成 E_net = p × W - (1 - p) × L - C,其中 p 是勝率,W 與 L 是平均獲利和平均虧損,C 包含 spread、commission、swap 與滑點;程式輸出一致之後,這個成本後期望仍要保持為正才具有研究價值。
完成 MQL4 與 MQL5 XAUUSD EA 開發比較後,應留下原始碼版本、編譯環境、商品規格、測試設定、逐筆訊號、交易請求與成交紀錄。Alpha Core 公開樣本的觀察週期為 157.69 天、Profit Factor 為 2.09、最大回撤率為 5.42%、平倉筆數為 639;這些數字只用於示範一致的樣本、成本與回撤口徑,無法證明任何 EA 具有未來優勢。Vanta Alpha 不推薦 MQL4、MQL5、特定 EA 或券商,也不因引用 MetaQuotes 官方文件而與其形成官方合作關係。
用公開樣本檢驗策略穩定性
截至 2026-08-21,Alpha Core 公開績效樣本已完成資料核對。
在此樣本中,觀察週期為 157.69 天,淨交易結果為 +5,465,774.70 USC,勝率為 70.42%,Profit Factor 為 2.09,最大回撤率為 5.42%,平倉筆數為 639。這些數字只說明特定期間的樣本結構與風險口徑,不能解讀為未來結果。
參考資料與風險邊界
產品規格與平台條件以公開官方頁面為優先,策略工程與資料治理概念參考 量化回測風險呈現規範、走勢前進訓練測試設計,Alpha Core 樣本日期為 2026-08-21。三類資料分別回答產品、執行與樣本問題,不能互相替代,也不代表任何券商背書。
MetaQuotes 官方 MQL4 Event Handling、MQL5 Event Handling、MQL4-to-MQL5 migration 與 Strategy Tester runtime 說明頁提供產品規格、成本口徑與平台功能的第一手資料,核對範圍包括產品型態與合約邊界、點差、佣金、隔夜費與總成本、平台工具、訂單回報與成交紀錄、交易時段、流動性與滑點環境、監管、官方來源與第三方評價分層。涉及帳戶、槓桿或費用的數字仍應以實際開戶地區與最新合約條款為準。
「量化回測風險呈現規範」用於說明回測展示必須交代樣本區間、交易成本、滑點與風控條件,避免把片面收益當成實盤能力。
「走勢前進訓練測試設計」用於說明走勢前進測試使用較早資料訓練,並只在後續未見期間評估,使選參與驗證維持時間順序。
以上資料只用於策略觀察、平台比較與風險教育。Vanta Alpha 未暗示與任何券商或交易平台存在官方合作關係;交易具有風險,過往績效不代表未來結果,相關內容不構成投資建議、收益承諾或公開募集。
常見問題
MQL4 與 MQL5 XAUUSD EA 開發可以共用同一份程式嗎?
兩個版本可以共用策略規格、測試案例和風控公式,程式碼仍要依事件函式、交易資料模型與 API 差異完成遷移。MetaQuotes 的 migration 文件列出事件處理、交易函式、時間序列與資料存取差異,因此原始碼需要重新編譯並逐項驗證。
MQL5 的 OnTradeTransaction 對 XAUUSD EA 有什麼作用?
OnTradeTransaction 會接收交易請求、訂單、成交、歷史與持倉變化。MQL5 XAUUSD EA 可用它保存 request、result、order、deal、position、成交量與價格,建立從策略訊號到實際成交的稽核紀錄。
XAUUSD EA 回測怎麼確認 MQL4 轉 MQL5 後仍然一致?
先依「量化回測風險呈現規範」固定券商、商品規格、資料期間、tick 模式、spread、commission、swap、滑點與參數,再依「走勢前進訓練測試設計」使用未參與調參的後續資料比較訊號時間、部位、訂單、成交與回撤。
本文是否推薦 MQL4、MQL5、特定 XAUUSD EA 或券商?
本文只引用 MetaQuotes 官方技術文件和可驗證的回測方法,不推薦平台版本、EA、券商或收益方案,也不暗示 Vanta Alpha 與 MetaQuotes 存在官方合作關係;XAUUSD 自動交易仍有本金虧損風險。