Joshua Dunnink · Trading Systems

← Leapfrog

Leapfrog — User Manual

Instrument: XAUUSD (gold) · Timeframe: any (it works from hourly and daily series internally; M15 is used for validation) Magic: 89770 (the five ladders use 89770–89774) · Version: 1.30 Account type: Hedging

What it does

Five independent "ladders" each watch a different rolling range of gold: the last day (ladder D), about 30 hours (E), about 56 hours (A), about three days (C) and four trading weeks (B). Each ladder rests a stop order at the edge of its range so that a genuine break of that range fills it in the direction of the break. Every order carries a hard stop from the moment it is placed, set as a percentage of the gold price (about 0.3 % for A, C, D and E, about 1 % for B). Once a position is in profit, the exit engine closes half of it at 0.71 R, half of the rest at 0.89 R and half again at 1.01 R (R = the position's own stop distance), and trails the stop 0.71 R behind the best price. There is no averaging down, no grid, no martingale: each ladder holds at most one position per side, and a losing position is closed at its stop.

The ranges often end at the same high or low, so on a clean break several ladders fill at once: most breaks are traded by two to four ladders together. Treat the five ladders as one strategy traded at up to five times the lot per ladder, not as five unrelated systems (chapter "Deposit and position sizing").

What changed in version 1.30

What changed in version 1.29 - panel, chart labels, restart-safe

The panel and the chart (since 1.29)

A small panel in the top-left corner shows what the EA is doing, and the chart labels every level it waits at, every open trade's exit and every closed trade's result. Nothing is drawn in a plain Strategy Tester run; on a live chart and in the visual tester it refreshes every second. Inputs: InpPanel, InpDrawTrades, InpCleanChart (hides the grid while the EA runs and puts it back when it is removed), InpTextSize.

Line What it tells you
LEAPFROG 1.29 XAUUSD lot 0.04 per ladder what runs on this chart
Ladders on: A B C D E - stop orders at their range high and low which ladders trade
Exits: half off at 0.71 / 0.89 / 1.01 R, trail 0.71 R the exit rules in one line
Trading - orders checked every hour why it trades now - or Weekend ..., Volatility extreme ..., Very quiet market ...
Resting orders: 6 (nearest first) / D buy 4210.50, ... the orders waiting at the ladders' range edges
A BUY 0.04 @ 4185.20 +12.40 USD / next half off at 4198.30, stop 4176.00 each open trade, its next part-close mark and its stop
Waiting for margin: next order needs 152.40 (red) your broker's margin holds orders back - shown only while the free margin is short
Closed today: 3 trades +12.40 USD / Last 7 days: ... this EA's own closed result (its magic number only, costs included)

4 buttons. Every action is sent by the EA itself and written to the Experts tab; a panel close carries the comment "... panel close". The second-click buttons need the same button again within 5 seconds.

Button What the EA does Clicks
Pause entries / Resume entries Pause: removes the resting orders and places no new ones; open trades keep their exits. The pause is saved on the account and survives a restart. Resume: orders return at the next check. one
Refresh orders removes the resting orders; fresh ones are placed at the next check with the current settings. No trade is opened or closed. two
Lock profit moves each winning trade's broker stop to the trail's own price (current price minus the trail giveback in R) when that is above the entry, else to the entry. A losing trade is left alone and a stop is never loosened. two
Close all closes every trade of this EA at market, removes its orders and pauses entries (press Resume to trade again). two

On the chart: each resting order as a dotted line at its ladder's range edge, labelled at the right edge with the ladders on it (buys above their line, sells below); each open trade's next part-close mark. A closed trade shows as a dotted line from its entry to its exit, labelled with why it closed and its net result.

What is new in version 1.21 — two volatility-regime controls

Version 1.21 had one weakness, and it was documented honestly: the engine earns when gold's daily ranges expand and pays a slow cost while they do not. Version 1.21 addresses that directly, with two controls that read the market's own volatility against its own recent history. Both are on by default.

1. Daily volatility stand-down. The engine measures the previous day's average true range as a percentile of its own last 250 days, and does not arm new orders when that percentile is in the top 2% or the bottom 10%. A range-breakout system is run over when volatility explodes and noise-baited when it collapses; it earns in the middle of the distribution. Measured over eight years, the days in the top 2% of daily volatility cost more than every other day combined.

2. Hourly channel-width position sizing. The width of the hourly 20-bar channel, again as a percentile of its own recent history, scales the position size — smaller when the channel is narrow, larger when it is wide, on a curve rather than a switch. Nothing is skipped: a narrow-channel trade is taken at reduced size rather than discarded, because those trades still earn in a trending market even though they earn less. The tenth ladder-like exception is ladder B, whose ten-day range measures a different thing entirely; it is exempt from the sizing and trades at full size.

Both controls are self-calibrating. They compare gold to its own recent behaviour, so they need no retuning when gold's price level or typical range changes.

Getting started

  1. Attach to an XAUUSD (gold) chart. No set file is needed; the defaults are the validated ones.
  2. Confirm the journal banner reads Leapfrog v1.28 | settings Recommended | account Personal | Symbol=XAUUSD | ... and the next line Leapfrog sizing: base lot per ladder ... | spread limit off.
  3. Leave it running on a VPS. It maintains resting orders around the clock and manages stops on every tick.

Settings: start at the top (since 1.28)

The Inputs tab is ordered by how often you should touch it. With the default Settings: Recommended everything below section 5 is ignored and the validated values are used, whatever those inputs say — so a stray edit in an engine section cannot change how the EA trades.

Section What is in it Touch it?
1. Start here Account type · Settings (Recommended / Custom) · Lot per 10,000 of equity, per ladder (0.04) · Fixed lot per ladder (0 = off) · Virtual balance (0 = off: size as if the account held at most this) · Maximum spread in USD (0 = off) Yes
2. Ladders on or off Ladder A (56 h), B (20 trading days), C (64/82 h), D (24 h), E (30/32 h) Rarely — all five on is the validated setup
3. Prop-firm rules Your firm's daily / maximum loss, target, best-day cap, Friday close (0 = rule off) Prop accounts only
4. When not to trade Weekend protection: no new entries from Friday 19:00, pendings deleted 21:00, positions closed 23:00, resume Monday 01:00 (server time) Only if your broker's week differs
5. Safety Hard equity-drawdown flatten % (0 = off) · Magic number Optional
6–11 [Custom] Ladder windows · arming distance · stops and targets · exit marks and trail · volatility controls · order handling Only with Settings: Custom

Virtual balance. Leapfrog sizes from equity. Set a virtual balance to trade a larger account as if it held only that amount (the EA uses the smaller of equity and the virtual balance). Maximum spread skips order upkeep while the spread is wider than the value you type (in USD, the same on every broker).

What the validation says

All figures are Strategy Tester backtests on real live-broker tick data at 100% history quality, 10,000 USD, the shipped defaults with no set file, leverage as the broker grants it. One binary was compiled once and copied byte-identical to all five terminals. Backtests describe the past and are not a forecast.

Matched window — 1 July 2025 to 7 September 2026, the period for which all five brokers hold real tick data:

Live feed Trades Net Profit factor Equity drawdown
Vantage Markets 1,959 +9,749 (+97%) 1.74 5.9%
Pepperstone EU 2,022 +9,241 (+92%) 1.65 7.9%
OANDA 2,230 +9,300 (+93%) - 9.9%
BlackBull Markets 1,911 +8,449 (+84%) 1.67 5.1%
Fusion Markets 1,980 +8,260 (+83%) 1.58 6.7%

These five rows were measured on version 1.20. Versions 1.21 through 1.28 changed inputs, code paths and the Inputs-tab layout, and each one is proved to place the same deals as the version before it under the shipped defaults (parity tables in "What changed in version 1.21" onward) - the chain runs unbroken to 1.28, the version this build ships. A direct Strategy Tester check on the current 1.28 binary: BlackBull, 1 April 2025 to 19 September 2026, 2,388 trades, net +12,261.24, profit factor 1.77, equity drawdown 5.29%.

Full market cycle — OANDA is the only feed carrying tick data back to 2018:

Window Trades Net Profit factor Equity drawdown
2018-07 to 2026-09 (8.2 years) 10,233 +20,388 (+204%) - 9.9%

(Profit factor is not printed for a row below 1.5; net and equity drawdown are the figures reported there.)

Backtest, MetaTrader 5 Strategy Tester, real ticks, Vantage / Pepperstone / OANDA / BlackBull / Fusion, 2025-07-01 to 2026-09-07.

Read the spread between brokers, not the top row. The low end to the high end is 8,260 to 9,749, a factor of 1.18 across five different brokers running the same binary. That matters more than any single number: it means the result is a property of the strategy rather than of one broker's costs. Every feed is positive and every feed stays under 10% equity drawdown.

The honest headline is the worst feed, not the strongest: +83% over fourteen months at 6.7% drawdown.

What changed in version 1.21

Backtest, MetaTrader 5 Strategy Tester, real ticks, OANDA GOLD.pro, 2018-07-01 to 2026-09-07 (the 8.2-year full-cycle window).

Version 1.21 shipped a day-expansion filter. Its input read "only arm when the day is expanding", but the code did something else: it let the order fill and then closed the position, paying a full spread on every rejection. It fired on 24-40% of all fills and it cut winners — across the full cycle the position-level win rate is 50.4% with it and 68.1% without.

Switching it off takes the eight-year record from +10,317 to +20,388 and reduces equity drawdown from 15.1% to 9.9%. Better return at lower risk, on all five brokers.

Rebuilding the filter properly — checking the condition before placing the order, which is what the label always promised — was tested and is better than the old behaviour but still worse than removing it. Both forms remain available (Expansion gate: 0=off 1=after fill 2=on arm) and both ship off.

What changed in version 1.22

Version 1.22 adds one optional input and changes nothing else. Size by the last closed event's outcome (off by default) scales each new order up after the engine's last completed break won and down after it lost, by the percentage in Tilt. It was built because an earlier version of the engine showed its profits arriving in runs. On the current engine that pattern is gone: the two volatility controls of version 1.21 already remove the days that produced the runs, and with the option switched on the engine earned 4–15 % less over fourteen months of real broker ticks on three brokers. It therefore ships off. With the option off, version 1.22 places exactly the same orders as version 1.21.

What changed in versions 1.23–1.28

Prop-firm accounts: one choice (since 1.25)

The first input, Account type (InpAccountMode), is all a prop-firm account needs:

Account type What it does
Personal (default) the lot inputs below apply (0.04 lot per 10,000 of equity per ladder)
Prop firm 2-step — challenges with a 5 % daily and 10 % maximum loss 0.03 lot per 10,000 per ladder; weekend protection always on; fixed lot ignored
Prop firm 1-step — challenges with a 3 % daily and 6 % maximum loss 0.02 lot per 10,000 per ladder; weekend protection always on; fixed lot ignored

The first Journal line names the choice (Leapfrog v1.26 | account Prop firm 2-step ...). Proof that the prop size is exactly what it says: Prop firm 2-step on 1.25 placed the same 87 deals, to the cent, as 1.24 with 0.03 lot per 10,000.

What the measurements say — a simulation that replays the backtest's own days in random blocks (10,000 paths, the challenge rules applied at every trade close); a statement about the tested history, not a prediction:

history account type passes per attempt daily-loss breaches median trading days to funded
BlackBull / Vantage, Jul 2025 – Sep 2026 Prop firm 2-step 100 % none 95–101
OANDA, Jul 2018 – Sep 2026 (quiet years included) Prop firm 2-step 67 % none 386 — the rest simply took longer than a year
BlackBull / Vantage, Jul 2025 – Sep 2026 Prop firm 1-step 100 % none 89–96
OANDA, 2018–2026 Prop firm 1-step 51 % none 362
OANDA, 2018–2026 Personal (shipped size) on a 2-step 72 % about 1 attempt in 10 289

Read it as: the prop sizes never broke a daily-loss rule in eight years of simulated attempts; what they cannot do is make a quiet market pay. Leapfrog earns when gold's daily ranges expand. A challenge without a time limit is the right kind. Since 1.26 the EA also keeps its own count of the daily and maximum loss (next chapter); it does not read the firm's news calendar — check the firm's news and weekend rules before you start.

Prop-firm rules: your firm's own numbers (since 1.26)

The Account type (chapter "Prop-firm accounts: one choice") chooses the size. The group right under it, Prop-firm rules, enforces your firm's limits. Choosing Prop firm 2-step or Prop firm 1-step already fills in the two loss limits for you (5 % daily and 10 % maximum, or 3 % and 6 %; both fixed, and the EA acts 0.5 % before each); type your firm's own numbers to override them. With Personal every rule is off until you type a number.

When a limit is about to be reached, the EA closes its own trades, deletes its own orders and stops opening new ones: until the firm's next day for the daily rules, for good for the maximum loss and the profit target. The Journal says which rule acted and at what equity:

LEAPFROG prop-firm rule: daily loss limit (equity 95512.40, day start 100020.00, firm limit 95020.00) - trades closed, orders deleted, paused until the firm's next day

and the start line lists what is on:

LEAPFROG prop-firm rules: account size 100000.00 | daily loss 5.00% of account size from the higher of day-start balance and equity - the EA acts at 4.50% of account size | maximum loss 10.00% (fixed) - the EA acts at 9.50% | ...

The inputs (group "3. Prop-firm rules (0 = rule off)")

Input What to enter Default
Account size (InpPropAccountSize) the challenge's account size, e.g. 100000 (0 = the balance when the EA first starts) 0
Daily loss limit % (InpPropDailyLossPct) the firm's daily loss, e.g. 5 0 = off; a prop account type fills in 5 or 3
Daily loss limit is a % of (InpPropDailyPctOf) Account size (the same amount every day - most firms) or the day-start value Account size
Daily loss is counted from (InpPropDailyFrom) the value at the start of the firm's day: the higher of balance and equity (strictest, safe for every firm), balance or equity the higher of the two
Maximum loss limit % (InpPropMaxLossPct) the firm's maximum loss, e.g. 10 0 = off; a prop account type fills in 10 or 6
Maximum loss limit type (InpPropMaxRule) Fixed (account size minus the limit - most two-step challenges), Trailing: highest day-start balance, Trailing: highest equity, live Fixed
A trailing limit stops rising at the account size (InpPropTrailLock) most trailing firms stop moving the limit once it reaches the starting balance yes
Act this many % before each loss limit (InpPropSafetyPct) the safety margin: 0.5 means the EA acts at 4.5 % when the firm's limit is 5 % 0.5
Profit target % (InpPropTargetPct) close everything and stop when equity reaches the target (0 = keep trading) 0 = off
Best-day cap % (InpPropDayGainPct) close everything and pause for the day once the day's gain reaches this (for firms with a consistency rule) 0 = off
Hour the firm's day starts (InpPropDayStartHour) the hour on your platform's clock (the Market Watch time) at which the firm restarts its daily loss 0
Friday: close all at this hour (InpPropFridayCloseHour) for firms that do not allow holding over the weekend; trading resumes on Monday 0 = off
New challenge on the same login (InpPropResetState) set to true for ONE start when you begin a new challenge on the same login, then back to false false

Examples - what to type

From the LuxAlgo prop-firm directory on 23 September 2026 (the daily-loss wording is inferred by that directory; your firm's own rules page is always the authority, and firms change their rules):

Challenge (100,000 account) Daily loss % Maximum loss % and type Profit target %
FTMO Normal, 2-step 5 10, Fixed 10, then 5
FTMO Normal, 1-step 3 10, Fixed 10
FundingPips, 2-step 5 10, Fixed 8, then 5
FundingPips, 1-step 3 6, Fixed 10
The 5%ers High Stakes, 2-step 5 10, Fixed 8, then 5
Blue Guardian Pro, 1-step 3 6, Fixed 10

All six count the daily loss as a share of the account size from the previous day's closing balance, open trades included. Leave counted from at the higher of balance and equity - it is never later than the firm's own meter.

Profit target: set it for the challenge phases only. When the target is reached the EA stops for good on that login; on the funded account set it back to 0.

The firm's day. Most firms restart the daily loss at midnight of the platform's own clock: leave 0. If your firm names another time, convert it to the Market Watch clock. Gold is closed for about an hour around the broker's midnight on most platforms, so for gold an hour's difference rarely matters; a market that trades through midnight (Bitcoin) needs the exact hour.

Restarts. The EA remembers the account size, the day's starting value, the highest balance and whether a rule stopped it, across restarts of the platform (terminal global variables named PR<login>_<magic>_...). A restart in the middle of the day does not give it a fresh daily allowance.

What these rules do not do

Proof. With every rule off, this version placed the same deals as the version before it, deal for deal (107 trades, net +309.21, Pepperstone real ticks, 28 August - 19 September 2026). Each rule was then switched on at a level the same weeks reach; at all 11 triggers the EA closed its trades, opened nothing until the pause ended, and placed exactly the same deals as with the rules off up to the first trigger.

Reproduce the tests yourself

In the Strategy Tester: expert LEAPFROG, XAUUSD, M15, 2026.08.28 to 2026.09.19, Every tick based on real ticks, deposit 10,000, inputs right-click → Defaults. Pepperstone gives 107 trades, net +309.21, profit factor 1.53, equity drawdown 4.16 %. Full-window rows (BlackBull, Vantage, OANDA 2018–2026) are being measured on 1.25.

Deposit and position sizing

The default sizes 0.04 lot per ladder per 10,000 USD of equity and rounds down to the broker's minimum lot. Below roughly 2,500 USD every ladder trades the 0.01 minimum, so the strategy behaves like a fixed-lot system and its drawdown becomes a larger share of the balance. The hourly sizing control is also blunted on small accounts: it cannot size below the broker minimum, so the reduction it applies in narrow-channel conditions is partly lost. Recommended minimum: 5,000 USD; 10,000 USD for the figures above to apply as printed.

Most breaks are traded by two to four ladders at the same second (measured: 81-84 % of positions sit in such events), so the exposure on one break is up to five times the lot per ladder. Switching ladders off lowers that exposure but costs more in the worst weeks than it saves over a full cycle (measured over 8 years: every two- or three-ladder subset had a 20-75 % deeper worst week for the same profit), which is why the minimum stays at 5,000 USD rather than 'run fewer ladders'.

Requirements and limits

Is it waiting, or is it broken? — the regime monitor

This product earns in a particular market state and goes quiet outside it. That is disclosed above, but a disclosure without a number is not usable: meeting a flat stretch, you cannot tell whether the machine is waiting for its conditions or whether its edge has changed. This section gives you the one measurement that separates those, taken from this product's own record.

The state to watch is the daily Average True Range of the traded instrument, expressed as a percentile of its own trailing 250 days — not a fixed number of dollars or pips, which goes stale as the instrument reprices. Most charting packages will plot ATR; the percentile is simply where today's ATR sits within the last year of its own values.

Measured in the Strategy Tester on 8.2 years of OANDA GOLD.pro real ticks, 2018 to 2026 (92 months). Monthly net by that month's volatility band:

band months mean per month
below 0.35 18 +$16
0.35 – 0.50 16 below breakeven
0.50 – 0.65 18 +$72
0.65 – 0.80 15 +$320
above 0.80 25 +$251

Backtest, MetaTrader 5 Strategy Tester, real ticks, OANDA GOLD.pro, 2018 to 2026.

These are MONTHS, not the EA's own gate — do not read them as a gap in it. The stand-down reads each day's percentile, and by that daily measure the only two losing bands over 8.2 years are the bottom 10% and the top 2% — which are exactly the two the EA already stands down in. Every band between them is positive or flat by day. Raising the lower bound to 0.35 or 0.50 was tested and costs net (+$3,347 shipped against +$3,019 and +$2,799).

Backtest, MetaTrader 5 Strategy Tester, real ticks, OANDA GOLD.pro, 2018 to 2026.

Why a month can lose while its days do not: inside those sub-0.50 months the damage is done by their more active days — days at the 50–65 percentile underperform inside a quiet month, while the same percentile earns $5 a day across the record as a whole. What hurts is volatility that is high against its own recent neighbourhood, not volatility that is low in absolute terms. An acceleration filter for exactly that was tested and rejected: it added cost without improving drawdown, so it is not part of the shipped engine.

Backtest, MetaTrader 5 Strategy Tester, real ticks, OANDA GOLD.pro, 2018 to 2026.

Good state: volatility percentile at or above 0.50 (63% of the record). In that state it earned in 60% of months, median +$80, and its deepest three-month dip stayed within about 10% of a 10,000 USD account — the tripwire below.

Tripwire — while volatility is at or above 0.50, a three-month dip deeper than about 10% of the account is outside anything the record contains. Below 0.50, a flat or mildly negative stretch is documented behaviour and is not evidence of decay.

Backtest, MetaTrader 5 Strategy Tester, real ticks, OANDA GOLD.pro, 2018 to 2026.

Read this alongside the concentration. The top 3 months of 99 carry 78% of all profit; the top 6 carry more than 100% of it, meaning the remaining 93 do not add further profit in aggregate. This engine waits and then earns in bursts. Any three-month window is close to uninformative about it, in either direction.

What this cannot tell you. While the market is outside the good state, a temporary quiet period and a permanent change in behaviour look identical. The tripwire is the earliest point at which they separate, not an early warning. Nothing here is a guarantee; it is the historical extreme of a backtested record, and being beyond it is evidence rather than proof.

Support

Report issues with the journal banner line and the broker name.

Complete reference — every input, its set-file key and default

Generated from the compiled source; enum defaults are the source names — the Inputs tab shows their plain labels. Sections 6-11 act only with Settings: Custom; with Recommended the validated values in this table are used whatever the inputs say.

Group Input Type Default Meaning
1. Start here InpAccountMode AccountMode ACCOUNT_PERSONAL Account type (prop mode sets the size itself)
1. Start here InpProfile StrategyProfile PROFILE_RECOMMENDED Settings (Custom unlocks the [Custom] sections)
1. Start here InpLotPer10k double 0.04 Lot per 10,000 of equity, per ladder
1. Start here InpFixedLot double 0.0 Fixed lot per ladder (0 = size from equity)
1. Start here InpVirtualBalance double 0 Size as if the account held at most this (0 = off)
1. Start here InpMaxSpreadUsd double 0 Skip order upkeep above this spread, USD (0 = off)
2. Ladders on or off InpRunA bool true Run ladder A (56-hour range)
2. Ladders on or off InpRunB bool true Run ladder B (20-day range)
2. Ladders on or off InpRunC bool true Run ladder C (64/82-hour range)
2. Ladders on or off InpRunD bool true Run ladder D (24-hour range)
2. Ladders on or off InpRunE bool true Run ladder E (30/32-hour range)
3. Prop-firm rules (0 = rule off) InpPropAccountSize double 0 Account size (0 = balance when the EA first starts)
3. Prop-firm rules (0 = rule off) InpPropDailyLossPct double 0 Daily loss limit % (0 = off)
3. Prop-firm rules (0 = rule off) InpPropDailyPctOf PropPctOf PROP_PCT_OF_SIZE Daily loss limit is a % of
3. Prop-firm rules (0 = rule off) InpPropDailyFrom PropDayFrom PROP_DAY_HIGHER Daily loss is counted from
3. Prop-firm rules (0 = rule off) InpPropMaxLossPct double 0 Maximum loss limit % (0 = off)
3. Prop-firm rules (0 = rule off) InpPropMaxRule PropMaxRule PROP_MAX_FIXED Maximum loss limit type
3. Prop-firm rules (0 = rule off) InpPropTrailLock bool true A trailing limit stops rising at the account size
3. Prop-firm rules (0 = rule off) InpPropSafetyPct double 0.5 Act this many % of account size BEFORE each loss limit
3. Prop-firm rules (0 = rule off) InpPropTargetPct double 0 Profit target %: close all and stop for good (0 = off)
3. Prop-firm rules (0 = rule off) InpPropDayGainPct double 0 Best-day cap %: close all and pause for the day (0 = off)
3. Prop-firm rules (0 = rule off) InpPropDayStartHour int 0 Hour the firm's day starts, broker server time (0-23)
3. Prop-firm rules (0 = rule off) InpPropFridayCloseHour int 0 Friday: close all at this hour (0 = off)
3. Prop-firm rules (0 = rule off) InpPropResetState bool false New challenge, same login: true once
4. When not to trade InpUseWeekend bool true Weekend protection (Friday close, Monday resume)
4. When not to trade InpFriNoEntryHr int 19 Friday: no new entries from this hour (server)
4. When not to trade InpFriDelPendHr int 21 Friday: delete pending orders at this hour
4. When not to trade InpFriClosePosHr int 23 Friday: close positions at this hour
4. When not to trade InpMonResumeHr int 1 Monday: resume at this hour
5. Safety InpEqStopPct double 0.0 Flatten and stop at this equity drawdown, % (0 = off)
5. Safety InpMagic long 89770 Magic number (the ladders use it and +1..+5)
6. Ladder windows [Custom] InpKAbuy int 112 Ladder A buy window, 30-minute bars
6. Ladder windows [Custom] InpKAsell int 112 Ladder A sell window, 30-minute bars
6. Ladder windows [Custom] InpKBbuy int 640 Ladder B buy window, 30-minute bars
6. Ladder windows [Custom] InpKBsell int 592 Ladder B sell window, 30-minute bars
6. Ladder windows [Custom] InpKCbuy int 128 Ladder C buy window, 30-minute bars
6. Ladder windows [Custom] InpKCsell int 164 Ladder C sell window, 30-minute bars
6. Ladder windows [Custom] InpKDbuy int 48 Ladder D buy window, 30-minute bars
6. Ladder windows [Custom] InpKDsell int 48 Ladder D sell window, 30-minute bars
6. Ladder windows [Custom] InpKEbuy int 60 Ladder E buy window, 30-minute bars
6. Ladder windows [Custom] InpKEsell int 64 Ladder E sell window, 30-minute bars
6. Ladder windows [Custom] InpBCalendar bool true Ladder B uses calendar-day extremes
6. Ladder windows [Custom] InpBCalDays int 20 Ladder B calendar days
6. Ladder windows [Custom] InpInsetBuyPct double 0.0284 Buy order inset from the level, % of price
6. Ladder windows [Custom] InpInsetSellPct double 0.0521 Sell order inset from the level, % of price
7. Arming distance [Custom] InpArmPctA double 0.285 Ladder A arm distance, % of price
7. Arming distance [Custom] InpArmPctB double 0.989 Ladder B arm distance, % of price
7. Arming distance [Custom] InpArmPctC double 0.284 Ladder C arm distance, % of price
7. Arming distance [Custom] InpArmPctD double 0.259 Ladder D arm distance, % of price
7. Arming distance [Custom] InpArmPctE double 0.189 Ladder E arm distance, % of price
7. Arming distance [Custom] InpUseRegimeArm bool true Adapt arm distance to trend strength
7. Arming distance [Custom] InpErDays int 20 Trend-strength lookback, days
7. Arming distance [Custom] InpErRankDays int 252 Trend-strength ranking window, days
7. Arming distance [Custom] InpArmTrendMultB double 0.33 Ladder B arm multiplier in trends
7. Arming distance [Custom] InpArmTrendMultD double 0.40 Ladder D arm multiplier in trends
7. Arming distance [Custom] InpArmTrendMultACE double 1.00 Ladders A/C/E arm multiplier in trends
8. Stops and targets [Custom] InpPctA double 0.3001 Ladder A stop, % of price
8. Stops and targets [Custom] InpPctB double 0.9925 Ladder B stop, % of price
8. Stops and targets [Custom] InpPctC double 0.2998 Ladder C stop, % of price
8. Stops and targets [Custom] InpPctD double 0.3000 Ladder D stop, % of price
8. Stops and targets [Custom] InpPctE double 0.2800 Ladder E stop, % of price
8. Stops and targets [Custom] InpSlPctMult double 1.00 Global stop multiplier
8. Stops and targets [Custom] InpTpRatioA double 7.667 Ladder A target as a multiple of the stop
8. Stops and targets [Custom] InpTpRatioB double 2.100 Ladder B target as a multiple of the stop
8. Stops and targets [Custom] InpTpRatioC double 5.000 Ladder C target as a multiple of the stop
8. Stops and targets [Custom] InpTpRatioD double 8.333 Ladder D target as a multiple of the stop
8. Stops and targets [Custom] InpTpRatioE double 8.214 Ladder E target as a multiple of the stop
9. Exit [Custom] InpEP1R double 0.71 Close half at this profit (1st mark), R
9. Exit [Custom] InpEP2R double 0.89 Close half again at this profit (2nd mark), R
9. Exit [Custom] InpEP3R double 1.01 Close half again at this profit (3rd mark), R
9. Exit [Custom] InpTrail0R double 0.71 Trail giveback before the 1st mark, R
9. Exit [Custom] InpTrail1R double 0.71 Trail giveback after the 1st mark, R
9. Exit [Custom] InpTrail2R double 0.71 Trail giveback after the 2nd mark, R
10. Volatility controls [Custom] InpMaxD1AtrPct double 0.98 Stand down: yesterday's D1 ATR percentile at or above
10. Volatility controls [Custom] InpMinD1AtrPct double 0.10 Stand down: yesterday's D1 ATR percentile below
10. Volatility controls [Custom] InpD1AtrPeriod int 14 D1 ATR period
10. Volatility controls [Custom] InpD1AtrRank int 250 Percentile ranking window, D1 bars
10. Volatility controls [Custom] InpH1SizeBase double 0.25 H1-channel sizing: base (0 = off)
10. Volatility controls [Custom] InpH1SizeK double 1.5 H1-channel sizing: slope k
10. Volatility controls [Custom] InpH1SizePow double 2.0 H1-channel sizing: curvature
10. Volatility controls [Custom] InpH1WidthBars int 20 H1 channel lookback, bars
10. Volatility controls [Custom] InpH1WidthRank int 200 Percentile ranking window, H1 bars
10. Volatility controls [Custom] InpH1GateExemptB bool true Ladder B is exempt from the H1-channel sizing
11. Order handling [Custom] InpRependEpsPct double 0.02 Re-aim orders when level moves, % of price
11. Order handling [Custom] InpUseSparseClock bool true Place new orders only at clock slots
11. Order handling [Custom] InpArmEveryH int 4 Clock slot spacing, hours
11. Order handling [Custom] InpUseSideState bool true One side per ladder at a time
11. Order handling [Custom] InpSideHyst double 0.15 Side flip threshold, window fraction
11. Order handling [Custom] InpPendTtlH int 36 Pending order lifetime, hours (fallback)
11. Order handling [Custom] InpTtlSqrtC double 5.0 Lifetime scale: c x sqrt(window)
11. Order handling [Custom] InpSlCooldownMin int 15 Pause after a stop, minutes
12. Panel and chart InpPanel bool true Show the control panel (Pause, Refresh orders, Lock profit, Close all)
12. Panel and chart InpDrawTrades bool true Describe the levels, orders and trades on the chart
12. Panel and chart InpCleanChart bool true Clean chart: hide the grid (put back when the EA is removed)
12. Panel and chart InpTextSize int 10 Text size of the panel and the chart labels (8-16)