intermediate 高回撤 ~40 trades/mo

Grid

網格 EA 以固定價格間距掛單,構築一張由買賣入場點交織而成的網,從價格震盪中獲利。資金需求高;必須謹慎管理回撤,才能在趨勢行情中存活。

機制

The EA divides a price range into equal steps (e.g. every 20 pips) and places pending buy stops and sell stops at each level. As price oscillates through the grid, filled orders generate running profit. Positions are closed when net floating P&L crosses a configurable threshold. Grid width, step size, and lot scaling determine maximum drawdown.

適配性

Profitable in consolidating, low-trend markets (ADX < 20). Severely disadvantaged during sustained trends: if price breaks out of the grid range, unrealised losses compound quickly. Best on EUR/CHF, USD/CHF in calm macro environments. Requires $3,000-$10,000 minimum to absorb multi-level open exposure.

備註

網格交易放棄了預測方向的念頭。取而代之的是,它以固定間距掛出一張買賣訂單交織而成的網,從震盪中收割利潤。每當價格在網格中來回擺動,成交的訂單就鎖住小額獲利。在一個安靜、區間受限的市場裡,這會產生一條平滑、幾乎乏味的權益曲線,這正是網格誘人之處。危險來自趨勢。當價格突破網格區間並持續前行,EA 會在某一側累積它從未打算平掉的虧損持倉,而未實現虧損迅速滾大。

本頁說明一個網格 expert advisor 在 MetaTrader 5 內部實際上如何運作。內容涵蓋決定它能否存活的具體輸入項、它如何失敗,以及如何在 EA Builder 上構築並壓力測試一個網格,再讓真實資金曝險。

運作原理:網格機制

一個網格 EA 把一段價格區間分成相等的步階,並在每一層掛出掛單。假設 EUR/USD 交易於 1.1000,而你設定 20-pip 的步階。EA 在上方 1.1020、1.1040、1.1060 播下 buy stops,在下方 1.0980、1.0960、1.0940 播下 sell stops(一個雙向或「對沖」網格)。當價格上漲穿過 1.1020,那筆買單成交;若價格隨後回落,一筆對應的賣單就以大約 20 pips 減去 spread 的價差把它平掉。網格並不在意價格下一步往哪個方向走——它只需要價格持續穿越同樣的價位。

三個輸入項定義了整台機器:

  • 步階(間距) — 各層之間的 pip 距離。較小的步階能捕捉更多震盪,但更快堆疊未平倉持倉。
  • 網格範圍 / 層級數 — EA 會在播種價之上與之下多遠的範圍持續掛單。這是最重要的單一風險槓桿,因為它為錯誤一側能累積多少虧損持倉設下上限。
  • 止盈邏輯 — 多數網格在淨浮動利潤越過某個門檻(例如 +$50)時把整籃平掉,而非逐筆平倉。整籃目標分攤到許多小筆持倉上,正是網格能顯示高勝率的原因。

利潤引擎是震盪;虧損引擎是趨勢。當價格朝一個方向離開網格範圍,遠端的每一筆訂單此刻都成了 EA 從未打算實現的浮動虧損,而它在播下新層級時還會不斷往這堆虧損上疊加。那堆虧損是否可存活,完全取決於層級數與你的自由保證金——這也是為什麼網格交易其實是一個穿著入場策略外衣的 position sizing 問題。

市場環境:網格何時獲勝、何時崩潰

網格是一場均值回歸的賭注。當價格被框住——在一個區間內震盪而不朝某個方向表態——它就獲勝;當價格走出趨勢,它就虧損。最乾淨的篩選器是 Average Directional Index(ADX)。讀數低於 20 代表一個區間震盪的環境,網格能可靠地收割。讀數攀升至 25 以上,則警告趨勢正在形成,未平倉曝險將堆積於某一側。

市場環境ADX (14)網格的行為結果
緊密區間< 15兩側持倉皆成交,整籃如期平倉平滑、穩定的獲利
震盪 / 漂移15–25整籃平倉變慢,輕微浮動虧損累積勉強;留意曝險
持續趨勢> 25一側永不平倉,虧損滾大回撤 / margin call 風險

這正是為什麼貨幣對的選擇對網格比對方向性策略更重要。歷史上區間震盪的貨幣對——EUR/CHF、USD/CHF 以及其他綁定於緩慢移動宏觀關係的貨幣對——花更多時間震盪、更少時間趨勢。這正是網格所需的飲食。在升息週期中大幅趨勢的主要貨幣對與 JPY 交叉盤,是天真網格的墳場。一個穿越央行意外或風險趨避突破的網格,是教科書級的失敗案例。那條吸引買家、「平滑數月」的曲線,正是那一次葬送它的走勢的鋪陳。

MT5 中的參數與設定

在 MetaTrader 5 內部,一個網格 EA 透過策略屬性對話框上的少數幾個輸入項暴露它的風險。以下這些才是決定結果的項目——從貨幣對本身的波動性設定它們,絕不要從整數設定:

輸入項典型起始值它所控制的
GridStepPips≈ 工作時間框架上的 1× ATR(14)(EUR/USD H1 上為 15–25)各層之間的距離;越緊 = 曝險建立越快
MaxLevels每側 8–12,硬性上限曝險天花板——你最重要的單一安全輸入項
LotPerLevel固定(例如 0.01)每一層的倉位大小;保持恆定,不加碼
LotMultiplier1.0(即停用)任何 > 1.0 的值都會把網格變成 martingale——一個危險信號
BasketTakeProfit全部未平倉持倉的淨 +$X在目標處平掉整籃
BasketStopLoss-$Y——必須設定為最壞情況設下上限的斷路器

人們跳過的那兩個輸入項,正是讓帳戶活下去的那兩個。MaxLevels 為 EA 停止加單之前這道階梯能有多深設下上限;BasketStopLoss 強迫 EA 實現虧損並重置,而不是抱著一個未平倉的整籃走向毀滅。一個 MaxLevels 無上限、又沒有整籃停損的網格不是策略——它是一次延遲的 margin call。

有兩個 MT5 特有的陷阱值得標記。第一,掛出的網格訂單在成交之前不佔用保證金。所以策略測試器的保證金數字看起來很寬裕,直到一波趨勢把整道階梯一次全部灌滿的那一刻為止——永遠要手動計算已灌滿階梯的保證金。第二,broker 會限制每個帳戶同時掛出與未平倉訂單的數量。一個緊密的網格在低上限的 broker 上,可能悄悄地無法掛出它更深的層級,暗地裡改變了你以為自己正在運行的策略。

  1. 在 MT5 中打開 EA 的屬性(在圖表上按 F7),並從 ATR、而非整數設定 GridStepPips
  2. 硬性限制 MaxLevels 並設定一個非零的 BasketStopLoss——絕不要讓任何一個無上限。
  3. 確認 LotMultiplier1.0,除非你已明確地把 martingale 的最壞情況建模出來。
  4. 在一段趨勢期間運行 Strategy Tester,然後計算完全灌滿的階梯在最遠端會佔用多少保證金。
  5. 唯有在已灌滿階梯的保證金能在帳戶中留有餘裕地容納之後,才在模擬帳戶上至少前向測試一週。

失敗模式:網格如何爆倉

每一次網格失敗都可追溯到帳戶無法承載的未平倉曝險。具體的路徑:

  • 趨勢突破。 價格離開區間,網格的一側永不平倉。浮動虧損隨每一個新層級增長,直到整籃停損觸發——或在沒有停損的情況下,直到保證金耗盡。這是首要的殺手。
  • 隱藏的 martingale。 許多「網格」EA 悄悄在更深的層級加大手數。這會美化 backtest 中的 win rate 與權益曲線。但它在趨勢中把一個線性、可存活的回撤,變成一個指數式、足以終結帳戶的回撤。
  • 資金不足。 帳戶無法為完全灌滿的階梯提供保證金。EA 在數個月的部分成交中看起來沒事,然後單一一個方向性的交易日把每一層一次全部灌滿,並在最糟的價位觸發 margin call。
  • 曲線擬合的間距。 步階被最佳化到某一段歷史區間。當波動性環境切換時,同樣的間距不是太緊(過度交易)就是太寬(錯過震盪),優勢隨之蒸發。
  • 成本失血。 緊密的網格產生高交易次數。數十筆小持倉上的 spread 與 swap 悄悄侵蝕微薄的每筆利潤,因此一個回測到打平的網格,一旦真實成本落地,實盤往往虧錢。

如何在 mt5depot 中構築並壓力測試一個網格 EA

你不需要寫 MQL5 就能構築一個有紀律的網格。在這個無程式碼建構器中,你組裝出同一台機器——一道掛單階梯、一個層級上限、一個整籃目標與一個整籃停損——而且關鍵的是,你能在冒險投入資金之前壓力測試最壞情況:

  • 在你將實際運行的貨幣對與時間框架上,從 ATR 設定間距,並回測至少三種間距。
  • 硬性限制層級數,並確認完全灌滿的階梯能在你的自由保證金中留有餘裕地容納。
  • 保持手數固定;把任何手數倍增器都當成一個需要自己的破產機率模型的 martingale。
  • 附加一個非零的整籃停損,讓最壞的方向性走勢被框住,而非無上限。
  • 在貨幣對最糟的趨勢區段上回測,然後在模擬帳戶上至少前向測試一週。

親手構築它的價值在於,你能看見一個購買來的網格 EA 所隱藏的回撤。當你在 tick 資料上、於一段趨勢期間運行同一個網格時,那個在行銷話術中「總會回本」的整籃,要不就在你的保證金之內回本,要不就沒有。建構器會在真實帳戶以慘痛方式發現之前,先讓你看清是哪一種。

網格 vs 趨勢策略

因為網格從震盪中獲利,它在結構上正是一個 trend 跟隨 EA 的對立面——而兩者在相反的環境中失敗,這也是為什麼交易者有時會把它們配對使用。

網格趨勢跟隨
最佳環境區間震盪(ADX < 20)趨勢(ADX > 25)
Win rate高(許多小勝)低(少數大勝)
虧損形態肥厚的左尾(突破)許多小虧損(震盪)
資金需求高(為未平倉階梯提供資金)中等
最大天敵一段持續趨勢一段安靜區間

沒有哪一個「更好」;它們是為不同天氣打造的工具。錯誤在於把網格當成一套全天候系統來部署。它是一個區間專家,一旦市場朝某個方向表態的那一刻,就必須被關掉——或由一道硬性整籃停損與一個趨勢篩選器來保護。

典型貨幣對

此策略最適合的場景

常見問題

什麼是網格交易 EA?
網格交易 EA 是一種 expert advisor,它以固定的價格間距掛出買單與賣單——例如每 20 pips 一檔——而不去預測方向。當價格在網格中震盪時,反向的訂單依序成交並鎖住小額獲利,當淨浮動利潤達到目標時整籃平倉。它是一種均值回歸工具,在盤整行情中如魚得水,卻在持續趨勢中受害。
網格交易能獲利嗎?
在盤整、低趨勢的環境中,價格反覆穿越同樣的價位,網格 EA 可以獲利,但它的權益曲線藏著一條肥厚的左尾:一次方向性突破就可能累積許多虧損中的持倉,抹去數個月的獲利。獲利能力遠更取決於回撤控制——網格寬度、一道硬性的整籃停損,以及固定(而非 martingale)手數——而非表面上的 win rate。
在 MT5 中我應該用多大的網格間距?
從貨幣對本身的波動性設定間距,而非取一個整數。常見的準則是間距接近工作時間框架上的 14 週期 Average True Range:在 EUR/USD H1 上通常是 15-25 pips。較寬的間距意味著較少、較大的成交,整籃建立得較慢;較窄的間距能捕捉更多震盪,卻更快堆疊未平倉曝險。在投入之前,先在同一份 tick 資料上回測至少三種間距。
我的帳戶能為多少個網格層級提供資金?
用自由保證金除以你槓桿下每手的保證金,再除以每層的手數,就能算出觸發 margin call 之前能同時持有的最大倉位數。如果一個網格能開出 20 層各 0.01 手,而帳戶無法為網格最遠端的全部 20 層提供保證金,那這個 EA 就是資金不足。永遠要按最壞情況、而非平均月份來調校這道階梯。
網格 EA 應該使用 martingale 手數加碼嗎?
固定手數安全得多。Martingale 式的加碼——在每個更深的層級加大手數——會讓回測中的權益曲線看起來更平滑,卻在趨勢中把網格可控的回撤變成足以終結帳戶的尾部。如果你非加碼不可,就限制倍數與層級數,並在上線前把確切的最壞情況虧損建模出來。
網格交易和 martingale 是同一回事嗎?
不是。純粹的網格在每一層都使用固定手數,並從震盪中獲利;martingale 則在虧損後加大手數,以強行湊出一筆能扳回的獲利。許多公開販售的網格 EA 悄悄在網格上加裝了 martingale 加碼,而這正是多數帳戶爆倉的來源。仔細閱讀參數,在你證明過最壞情況之前,把任何手數倍增的輸入項都當成危險信號。