Cheetah Gold Scalper
- エキスパート
- バージョン: 6.10
- アクティベーション: 11
Cheetah Gold Scalper - XAUUSD Expert Advisor for MetaTrader 5
Tick-based gold scalping robot for MT5. Intraday XAUUSD scalper with no martingale, no grid, and a stop loss on every position. Two trades per day.
Cheetah Gold Scalper is an automated trading robot for XAUUSD on MetaTrader 5 (MT5). It trades one situation: the point where a fast move in gold loses momentum. When price travels a set distance within about a minute and is still accelerating, the EA opens against the move, adds at most one more position while the move extends, and manages both as a single basket until the move gives back part of what it gained.
The name reflects how it trades. A cheetah makes one or two attempts a day and rests in between. This gold EA is limited to two baskets per trading day by default, and that limit has a large effect on results.
This expert advisor does not use martingale. Lot size never increases after a loss. It does not use a grid and never adds to a position that is moving against you. There is no averaging down and no recovery mode. Every position receives a stop loss as soon as it is filled, so no trade is ever left unprotected.
How it works
Entry. Price movement is measured tick by tick over a rolling 60 second window rather than on candle closes. The trigger is a fixed price distance, so the EA responds to real volatility events rather than to ordinary market noise. A move must still be accelerating to qualify, so moves that have already finished are skipped.
Scaling. A signal opens up to two positions. Both must fill within five seconds of each other and within a limited price band, and the second is only added while the move is still extending. The two positions are then handled as one basket.
Exit. The basket is closed by a proportional profit trail. The trail becomes active once the basket is sufficiently ahead, then closes both positions after a defined share of the peak profit has been given back. Smaller trades are given room, larger ones are allowed to continue.
Risk control. Each position has a stop loss placed from its actual fill price. There is a daily limit on the number of baskets, a spread filter, two configurable trading sessions, and optional daily loss and daily profit limits. Position size is a fixed lot by default, with optional percent-of-balance sizing.
On-chart dashboard
A small panel on the chart shows the current state: armed, in a trade, cooling down, outside session hours or finished for the day. It also shows current spread, baskets used today, open positions, floating profit, profit realised today, balance, equity and peak drawdown.
Strategy Tester results
The figures below come from the MetaTrader 5 Strategy Tester. They are backtest results and not results from a real account.
Settings: 100% real tick data, XAUUSD M1, 7 May 2026 to 25 July 2026, 250 USD starting deposit, 1:500 leverage, fixed 0.01 lot.
199 trades, 69.3% won, profit factor 2.56, net result 336.82 USD, maximum balance drawdown 9.24%, largest single loss 4.40 USD, longest losing run 6 trades totalling 21.99 USD. By month: May 140.75, June 65.07, July 129.48.
Walk-forward check
Backtest settings can be fitted to the data they were chosen on, so a separate check was run. All parameters were selected using May and June data only, then applied without changes to July, which was not used during that selection.
July result: 64 trades, 81.2% won, profit factor 3.91, net result 129.48 USD, maximum drawdown 22.25 USD.
These are also Strategy Tester results.
Requirements
Symbol: XAUUSD, which is what the settings are calibrated for.
Timeframe: any, because the logic reads M1 data and ticks internally.
Account type: hedging. The two-position basket does not behave correctly on a netting account.
Broker: ECN or Raw spread is preferred. The EA skips entries when the spread is too wide.
Minimum deposit: 250 USD at 0.01 lot.
A VPS is recommended, since the EA reacts to ticks and latency affects fills.
The EA rescales its price-based settings to the symbol it is attached to and will run on other instruments without errors, but the settings are calibrated for gold and no result is claimed elsewhere.
Setup
Attach the EA to an XAUUSD chart on a hedging account. Any timeframe is fine. Keep the default settings, which are the tested configuration. Compare your broker's server time with the two session windows and adjust them if the times do not match. Run the EA on a demo account first.
Input parameters
Money and sizing
InpFixedLot - Lot per position. Default 0.01. Set to 0 to size by risk instead.
InpRiskPercent - Percent of balance risked per basket. Used only when InpFixedLot is 0.
InpMagic - Magic number. Change it if another EA runs on the same account.
InpDeviationPoints - Maximum accepted slippage on market orders, in points.
Signal
InpMode - Fade trades against the impulse, which is the tested setting. Momentum trades with it.
InpVelWindowMs - Length of the measurement window in milliseconds. Default 60000.
InpVelMinAbs - Distance price must travel within that window to produce a signal.
InpVelMaxAbs - Moves larger than this are skipped.
InpVelTriggerATR - Optional volatility-based floor added to the trigger. 0 disables it.
InpRequireAccel - When enabled, the recent half of the window must lead the move.
InpAccelFrac - Share of the move the recent half must account for.
Filters
InpAtrPeriod - ATR period used by the volatility filters.
InpMinATR - Skip trading below this volatility. 0 disables.
InpMaxATR - Skip trading above this volatility. 0 disables.
InpUseTrendFilter - Optional higher timeframe trend agreement. Disabled by default.
InpTrendTF - Timeframe used by the trend filter.
InpEmaTrend - EMA period used by the trend filter.
Basket entry
InpMaxBurst - Maximum positions per signal. Default 2.
InpScaleBurstByImpulse - When enabled, stronger moves open more positions.
InpMaxBurstSpread - Maximum price spread allowed across the basket.
InpBurstWindowSec - Seconds within which all positions of a basket must fill.
InpBurstMinGapMs - Minimum delay between fills, in milliseconds.
InpBurstNeedsExtension - Add the second position only while the move extends.
Exit, profit trail
InpTrailStartPerPos - Profit per position at which the trail becomes active. Default 2.00.
InpTrailGiveBackPct - Share of peak profit given back before closing. Default 65.
InpTrailMaxGiveBackPerPos - Optional cap on that give-back. 0 disables.
InpTrailMinLockPerPos - Minimum profit the trail keeps per position.
InpHardTPPerPos - Optional fixed take profit per position. 0 disables.
Exit, break-even
InpBreakEvenEnable - Move the stop to break-even. Disabled by default.
InpBreakEvenAtPerPos - Profit per position that triggers the move.
InpBreakEvenLock - Profit kept by the break-even stop.
Stops and time
InpSL_ATR - Stop loss as a volatility multiple. 0 uses the fixed distance below.
InpFixedSLPrice - Fixed stop loss distance per position. Default 3.50.
InpMinSLPrice - Lower bound on the stop distance.
InpMaxSLPrice - Upper bound on the stop distance.
InpBasketSLPerPos - Emergency stop on total basket loss. 0 disables.
InpStallSec - Close the basket if profit has not reached a new high for this many seconds. 0 disables.
InpMaxHoldSec - Close the basket after this many seconds regardless. 0 disables.
Sessions, broker server time
InpUseSessions - Restrict trading to the two windows below.
InpSess1StartHour - First session start hour. Default 1.
InpSess1EndHour - First session end hour. Default 8.
InpSess2StartHour - Second session start hour. Default 15.
InpSess2EndHour - Second session end hour. Default 22.
InpTradeMonday - Enable or disable Monday.
InpTradeFriday - Enable or disable Friday.
InpFridayCutoffHour - Stop opening trades on Friday after this hour.
Risk limits
InpMaxSpreadPoints - Skip entries when the spread is wider than this.
InpMaxBasketsPerDay - Baskets allowed per trading day. Default 2. Raising it reduces results in testing.
InpMaxDailyLossUSD - Stop trading for the day after this loss. 0 disables.
InpMaxDailyProfitUSD - Stop trading for the day after this gain. 0 disables.
InpRearmSec - Seconds to wait after a basket closes before looking for a new signal.
Symbol adaptation
InpAutoScaleToSymbol - Rescale price-based settings to the attached symbol. Keep enabled.
InpCalibPrice - Reference price the defaults were calibrated at. Default 4000.
Dashboard
InpShowDashboard - Show the on-chart panel.
InpShowLogo - Show the logo watermark.
InpDashX - Panel horizontal offset in pixels.
InpDashY - Panel vertical offset in pixels.
InpCompanyName - Text shown on the first line of the panel header.
InpWebsite - Optional second header line. Empty by default.
Other
InpVerboseLog - Write detailed entries to the Experts log, useful when reporting an issue.
InpComment - Comment attached to each order.
Frequently asked questions
Which broker and account type do I need? Any broker offering XAUUSD on a hedging MetaTrader 5 account. A raw or ECN spread account is preferred because the EA trades intraday and skips entries when the spread widens.
Does it work on other symbols? It will run on any symbol without errors, since it rescales its settings automatically. The settings supplied are calibrated for gold only.
How many trades will I see? Two baskets per trading day at most with the default settings, and often fewer. The EA waits for a specific condition and stays flat otherwise.
Does it use martingale or a grid? No. Lot size is fixed and no position is ever added against the market.
Can I use it on a small account? The tested configuration uses a fixed 0.01 lot from a 250 USD deposit.
Please read
Past performance does not indicate future results. The testing described above covers eleven weeks on one instrument, with one month kept aside as an out-of-sample check. All figures are Strategy Tester results, not real account results, and none of them is a forecast. Use money you can afford to lose and test on a demo account first.
