Grid Force Index EA
- Uzmanlar
- Sürüm: 3.15
- Etkinleştirmeler: 5
A GRID THAT WAITS FOR REAL BUYING OR SELLING PRESSURE BEFORE IT STARTS.
Try it free before anything else: load Grid Force Index EA in the MetaTrader 5 Strategy Tester, switch on visual mode and watch the Force Console track every signal, every level and every banked closure as it happens.
Most grids open at a random moment. This one waits until price is moving and volume is backing it up, then builds and works its ladder from both ends until the oldest orders are paid off.
In short
- Entry: the Force Index (price change multiplied by volume) has to cross its zero line, with momentum behind it and enough strength compared with its own recent average.
- Engine: independent BUY and SELL grids, an additive or multiplying lot ladder, ATR spacing, and a closer that pays down old orders in slices.
- Safety: no hidden limits. Every cap is an input you can see, and there is a new margin-level timeframe safety (off by default).
- Panel: a dark console on the left with live Force Index, Force Strength and a new Margin Health row. The price scale is never covered.
- Works on hedging and netting accounts, on any symbol and timeframe. No DLLs, no extra files.
START HERE
- Attach the EA to EURUSD H1 or XAUUSD to start. Every default comes from our standard grid template.
- If you want to watch first, set RunMode to Scan only. The console shows every plan it would make and sends nothing. Press ARMED when you are ready.
- Keep the 0.01 starting lot and the additive ladder until you know how far your symbol can run against you.
- Run the Strategy Tester on your own broker's data first. Spread, swap and commission differ from broker to broker.
Why Force Index
Price alone can drift. Volume alone can be noise. Force Index multiplies the two, so it only gets big when price moves AND traders are actually behind the move. When the smoothed line crosses zero, control has passed from one side to the other. Grid Force Index EA uses that moment, and only when the push is real, to start a new grid cycle.
One cycle, step by step
1. The cross. The smoothed Force Index (EMA by default) must cross its zero line on a closed bar. The signal never repaints.
2. The momentum check. Before the cross, the line must have been rising (for a BUY) or falling (for a SELL) for a number of bars you choose. A line that just wobbles over zero is ignored.
3. The strength check. The signal bar's Force must be at least a set fraction of its average absolute value over recent bars. A weak drift across zero in a quiet market does not arm anything. You can also ask for a minimum rise in volume on the signal bar.
4. The gate. After an accepted signal, the next one is accepted only after a spacing of bars (30 by default), so a choppy session cannot fire a run of new cycles. The console counts down how many bars are left.
5. The ladder. Once a cycle is armed, levels are opened at ATR-based spacing, with a floor, a ceiling and an optional freeze for the whole cycle. BUY and SELL grids can run side by side, each with its own anchor and counter.
6. The harvest. The closer looks at groups made of the oldest and newest orders and closes a group as soon as its combined result clears your target, after swap and commission. If a whole old order is still too heavy, it closes just a slice of it, paid for with profit already on the table. Over several bounces the heaviest position shrinks.
7. The guard. A reopen guard blocks any closure that would immediately reopen the same level. Every closure is checked against the deal history, failed legs go to a retry queue, and a stalled closer clears itself once a fresh scan of the book confirms the legs.
Optional: the hedge cycle. Off by default. When on, it holds a balanced pair on a symbol you choose and retires it in equal slices, paid for by a small surcharge on closures the grid already makes. It is checked on a timer and repaired automatically if one side is ever left alone.
The Force Console
The panel sits on the left side of the chart. It shows symbol and magic number, a status pill (ARMED, SCAN ONLY, PAUSED, VERIFYING or HALTED), grid mode, the lot ladder with the next lot, ATR spacing, the book in lots and net result, banked profit, and the signal gate countdown.
Rows built for this product:
- FORCE INDEX: the live value, BULL or BEAR zone, slope, and how many bars ago the last zero-line cross happened.
- FORCE STRENGTH: the signal bar's strength as a multiple of its average, drawn as a ten-cell gauge, with PASS or weak against your filter.
- ACTIVE TF: the timeframe the signal and spacing are using right now.
- MARGIN HEALTH (new in this release): live margin level, free margin, and how far the account is from the Level 1 trigger of the margin timeframe safety. You can see trouble coming before it matters.
Below that you get the closing plan for each side with its own close button, the open orders table, a state banner, and four quick controls: ARMED / SCAN ONLY, PAUSE / RESUME, chart marks and the slicing cutter. The Hedge Vault card docks right under the panel and follows it when you drag or minimise it. The panel measures its own text and fits any screen. In a non-visual backtest nothing is drawn, so optimisation runs at full speed. A slim Force Index strip can be shown under the chart, and arrows mark the candles where a signal armed.
Safety you control
- No stop loss and no forced close-all. Protection works by blocking new levels, never by dumping the book at the worst moment.
- The money check asks one plain question: is there enough free margin for this order, with a 50 percent buffer? There are no hidden hard limits.
- Margin timeframe safety (off by default): if the margin level falls to 6000 percent, the working timeframe steps up to M15. At 5000 percent it steps up to H1. That widens the ATR spacing and slows down new entries. It steps back only after margin recovers with a buffer.
- Limits on levels per grid, orders per side and lot per order keep the ladder bounded. The lot ladder stops growing at the level limit.
- On netting accounts, a separate cap keeps the margin of the merged position within a percentage of equity.
- Every global value is keyed to account, symbol and both magic numbers, and a magic lock stops two copies from sharing the same numbers. Several charts can run side by side without crossing wires.
Every setting explained
Grid
TradeMode: dual (BUY and SELL grids side by side) or single direction.
GridSpacePoints: fixed distance between levels in points, used when spacing is fixed or when ATR is not available (25).
GridSpaceMultiplier: widens each next level by this factor; 1.0 keeps them equal.
MaxGridLevels: maximum levels per grid (1000).
UpDirectionIsBuy: which side an upward move arms in distance mode.
EAMagicNumber: magic number of the grid orders (9760100).
GridOrderComment: comment written on grid orders.
OneOrderPerBar: at most one new level per bar.
Lot ladder
InitialLotSize: the first lot (0.01).
LotSizingMode: additive (0.01, 0.02, 0.03...) or multiply.
LotMultiplier: factor per level in multiply mode (1.25).
LotAddStep: step added per level in additive mode (0.01).
MaxOrderVolume: largest lot any single order may have (1.0).
UseAutoLot: scales the starting lot with balance.
AutoLotBaseBalance: the balance the starting lot refers to.
AutoLotAllowDecrease: lets auto lot scale below the starting lot.
ATR spacing
GridSpacingMode: ATR-based or fixed spacing.
ATRTimeframe: timeframe of the ATR.
ATRPeriod: ATR period (14).
ATRSpacingFactor: spacing = ATR multiplied by this.
ATRBarShift: which closed bar the ATR is read from.
ATRMinSpacingPts / ATRMaxSpacingPts: floor and cap of the spacing in points (50 / 5000).
ATRFreezeOnStart: keeps the spacing fixed for the whole cycle.
Profit target
DesiredProfitPerClosure: money each closure must earn (2).
ProfitMultiplier: final multiplier on the target.
ProfitTargetMode: flat or scaled with volume and depth.
ProfitVolumePower: how strongly the scaled target grows with volume.
ProfitDepthBonus: extra target for each extra open level.
ProfitMaxMultiple: top limit of the scaled target as a multiple of the base.
ProfitMaxReachFraction: safety cap so a target never needs more than this part of one grid step.
Fragment scanner
UseMultiLegScan: tests combinations of oldest and newest orders before the plain pair.
MaxOldestLegs / MaxNewestLegs: how many oldest and newest orders one closure may use (3 / 6).
ScanPriority: how qualifying combinations are ranked.
NeverBankLessThanPair: a combination must also clear the plain pair target.
RequireCloseVolumeExceedsTarget: the closing volume must be larger than the target volume.
MinCloseVolumeRatio: minimum ratio of closing to target volume (1.5).
Target slicing
EnableTargetSlicing: closes a slice of the oldest order when the whole lot is out of reach.
FragProfitWeightPower: how profit is weighted per closing lot.
FragMinSlicePercent: smallest slice as a percent of the target order.
FragAllowMultiCloser: lets several newer orders combine to buy one slice.
FragPreferFullClosure: always picks a full closure over a slice when both qualify.
Reopen guard and account protection
ReopenGuard: blocks a closure that would immediately reopen a level.
ReopenGuardCushion: the safe distance as a fraction of one grid step.
MinMarginLevelPercent: blocks new levels under this margin level (0 = off).
MaxAccountRiskPercent: blocks new levels above this floating loss as a percent of balance (0 = off).
NetMaxMarginPercent: netting accounts only, the maximum margin of the net position as a percent of equity (5).
MaxTotalOrders: absolute cap on grid orders per side.
Execution and verification
RunMode: Scan only (watch) or Armed (trade).
CloseSequence: the order in which legs are sent.
MaxSlippagePoints: allowed slippage.
MaxSpreadPoints: no trading above this spread.
MinSecondsBetweenClosures: pause between two closures on one side.
CloseAttemptsPerLeg: send attempts before a leg goes to the retry queue.
VerifyTimeoutSeconds: how long a stuck leg keeps being verified.
DeferWhenMarketClosed: waits for the session instead of halting when the market is closed.
MarketClosedRetrySeconds: retry interval while the market refuses orders.
AutoResumeAfterSeconds: clears a halt automatically after this time (0 = wait for the panel).
NoPartialRetryMinutes: tries partial closes again this many minutes after a broker refusal.
AbortIfBookChanged: cancels a plan if the book changed between scan and send.
UseFullCommission: counts commission for both sides of a trade.
CommissionPerLot: fallback commission when history has none.
CloseOrderComment: comment on closing deals.
Hedge cycle and weekly cash day
EnableHedgeCycle: switches the hedge cycle on (off by default).
HedgeSymbols: symbols for the hedge, comma separated.
HedgeSymbolRotation: how the next cycle's symbol is picked.
HedgeMaxSymbolsInTester: limits the rotation in the Strategy Tester only.
HedgeCycleLots / HedgeSliceLots: lots on each side of the pair, and lots retired per slice.
HedgeFragmentBonus / HedgeBonusIsPercent: your bonus on top of each slice cost, as a percent or flat money.
HedgeMaxSurcharge / HedgeMaxSurchargePercent: limits on how much the hedge may add to any closure.
HedgeMagicNumber: magic of the hedge legs (9760101); must differ from the grid.
HedgeReopenOnFinish: starts a fresh cycle when one finishes.
HedgeStartRequiresTrade: waits for the grid's first order before the first cycle.
HedgeIntegritySeconds: how often both legs are checked.
HedgeAutoRepair / HedgeNakedAction: what happens if one leg is left alone.
HedgeMaxSpreadPoints, HedgeSlippagePoints, HedgeAttemptsPerLeg, HedgeVerifyTimeout, HedgeCommissionPerLot, HedgeOrderComment: execution settings for the hedge legs.
WeeklyCashDay / CashDayOfWeek / CashCutoffHour: pause new cycles and slices around your withdrawal day.
Panel and chart
ShowPanel, PanelX, PanelY, PanelFontSize, PanelCorner: show, position and size the console.
ShowArabic: Arabic line under the English labels.
ShowChartMarks: draws plans and levels on the chart.
MaxTableRows: maximum order rows shown per grid.
Entry trigger
EntryTriggerMode: what arms the first level (the Force Index strategy by default).
SignalBarShift: signal bar, 1 = last closed bar.
SignalBarsDelay: bars between accepted signals (30).
SignalValidBars: how many bars a signal stays valid.
SignalAllowBuy / SignalAllowSell: allow each direction.
SignalReverse: inverts the direction.
Force Index signal
ForcePeriod: smoothing period of the Force Index (13).
ForceMAMethod: smoothing method, EMA is the classic choice.
ForceVolumeType: tick or real volume.
ForceMomentumBars: bars the line must rise (BUY) or fall (SELL) leading into the cross (2).
ForceStrengthBars: bars used to measure the average absolute Force (50).
ForceMinStrength: the signal bar's Force must be at least this multiple of that average (0.5; 0 = off).
ForceMinVolumeRise: optional minimum volume rise on the signal bar, in percent.
InpShowForceWindow: shows a slim Force Index strip under the chart.
InpShowSignalArrows: arrows on the candles where a signal armed.
Margin timeframe safety and debug
UseMarginTFSafety: switches the safety on (off by default).
Level1MarginPct / Level1TF: at or below 6000 percent, work on M15.
Level2MarginPct / Level2TF: at or below 5000 percent, work on H1.
MarginTFHysteresisPct: how far margin must recover above a level before stepping back.
DebugMode: detailed logging.
Honest expectations
A grid manages a position. It does not predict the future. Grid Force Index EA is careful about when it begins, then works to keep each cycle short and each old order shrinking. Pick a lot size your account can carry through a long trend, test on your own broker first, and let the Strategy Tester show you how it behaves before you go live.
If the EA turns out to be useful to you, an honest review on this page helps other traders decide, and it tells me what to improve next.
