Appearance

Personalize your experience

Mode
Accent Color
Direction
Geometric Decay

Geometric Decay

Anti-Martingale

Tunable shrink rate via ratio r.

At a glance

Engine value
anti_marti_geometric
Size at level i
size(i) = base / rⁱ (r = 1.5)
Family
— Size shrinks deeper into — capital protection first.
Risk band
Low risk
Capital profile
Geometric (r>1) — total bounded by base·r/(r−1).
Best for
Trends where you want controllable de-risking.
Orders per level
One entry order and one take-profit per level.
Ladder cost @ 10 levels
1.97× base lot
Versus a flat ladder
0.20× the capital
Deepest rung
0.02× base (0.03× the first rung)
Entry orders resting
10 at 10 levels
Break-even bounce
7.97% from the deepest fill (flat ladder: 5.00%)

What this curve is for

Decay with a dial: size is divided by rⁱ, so r sets the de-risking rate precisely. It is the decay counterpart to and the choice when you want to express "reduce exposure at this exact rate" rather than pick a named taper.

How the sizing rule works

Size at level i is r⁻ⁱ. With r near 1 the taper is almost flat; as r approaches 2 the converges on halving decay. Total ladder cost is bounded by base × r/(r − 1) regardless of depth.

LevelPer-order sizeOrdersLevel totalCumulativeEntry priceTake-profit
L10.67×10.67×0.67×99.0099.99
L20.44×10.44×1.11×98.0098.98
L30.30×10.30×1.41×97.0097.97
L40.20×10.20×1.60×96.0096.96
L50.13×10.13×1.74×95.0095.95
L60.09×10.09×1.82×94.0094.94
L70.06×10.06×1.88×93.0093.93
L80.04×10.04×1.92×92.0092.92
L90.03×10.03×1.95×91.0091.91
L100.02×10.02×1.97×90.0090.90
Reference configuration: 10 levels, 1% apart, 1% target, base price 100, long. Sizes are in base-lot units.

The ladder, as the engine builds it

Below is the 's own ladder and the trading terminal's chart engine, both driven by buildLadderPlan for this . Change the level count, spread or target and the rung prices, sizes, and chart lines recompute exactly as they would in the .

base lot 100 USDT · long · no stop

Ladder shape — Geometric Decay

LONG · base 100.00 (illustrative) · 10 levels stepping down · 1% apart

Base positionEntry rung (buy)Init target
Opening position & init targets200 USDT
T2
target 2 sell @ 102.00
+2 USDT
T1
target 1 sell @ 101.00
+1 USDT
L0
Market buy · 2 lots @ 100.00
200 USDT

Targets are stacked above the opening buy because a long grid exits higher than it enters.

Entry ladder

Limit buys below the base · L1 nearest, L10 deepest · every amount in USDT

Entry ladder: one row per rung, showing entry and exit price, size, order count, notional, margin, running capital and profit at exit.
LevelSize curveEntry buyUSDTExit sellUSDTFrom base%Sizebase lotsOrdersNotionalUSDTMarginUSDTCum. capitalUSDTProfit at exitUSDT
L1100%99.0099.991.00%0.667×166.6766.672670.67
L267%98.0098.982.00%0.444×144.4444.443110.44
L344%97.0097.973.00%0.296×129.6329.633410.3
L430%96.0096.964.00%0.198×119.7519.753600.2
L520%95.0095.955.00%0.132×113.1713.173740.13
L613%94.0094.946.00%0.088×18.788.783820.09
L79%93.0093.937.00%0.059×15.855.853880.06
L86%92.0092.928.00%0.039×13.93.93920.04
L94%91.0091.919.00%0.026×12.62.63950.03
L103%90.0090.9010.00%0.017×11.731.733970.02
Levels 1–10 of 10
1 / 1
Ladder cost 1.97×Capital 397 USDTAvg entry 98.60Cycle profit 4.97
Loading the chart engine…

What depth costs

Bounded by the geometric sum, so extra levels are nearly free. Capital planning is a single closed-form , which makes this the easiest decay to reason about at arbitrary depth.

LevelsLadder costDeepest rungEntry ordersCost vs 5 levelsCoverage
5 levels1.74×0.13×51.00×5%
10 levels1.97×0.02×101.13×10%
20 levels2.00×0.00×201.15×20%
40 levels2.00×0.00×401.15×40%
Ladder cost is Σ of every rung in base-lot units, excluding the opening L0 batch. At a grid size of 100 USDT, the 10-level ladder commits 197 USDT of notional at 1× leverage.

Read the cost vs 5 levels column as the escalation test. A flat ladder doubles when the depth doubles; anything materially above that is a whose coverage has to be bought rather than simply configured.

Capital budgetLevels affordableAdverse move covered
10× base200 levels200.0%
25× base200 levels200.0%
50× base200 levels200.0%
100× base200 levels200.0%
250× base200 levels200.0%
How far price can move against the grid before it runs out of rungs, per capital budget, at 1% spacing. This is the question a funding decision actually turns on.

Averaging and recovery

With every rung , the volume-weighted average entry is 97.18 against a base of 100 and a deepest rung of 90.00 — so the average sits 28% of the way down the covered range. Getting back to flat from the bottom therefore needs a 7.97% , against 5.00% for a flat ladder of the same depth — 2.97% more work.

ExcursionLevels filledDeployedAverage entryMarkUnrealisedBounce to flat
Shallow dipL1–L31.41×98.2697.00-0.02×1.30%
Half the ladder fillsL1–L51.74×97.7695.00-0.05×2.90%
Full ladderL1–L101.97×97.1890.00-0.14×7.97%
Reference configuration: 10 levels, 1% apart, 1% target, base price 100, long. Sizes are in base-lot units. Deterministic arithmetic, not a simulation: no assumption is made about how price reached each depth.

Divides by a constant ratio each level, so the decay rate is a dial: r near 1 decays slowly, larger r approaches the halving .

Where the exposure sits

Held by the shallowest quarter
71.6% of total size
Held by the deepest quarter
4.2% of total size
Unrealised loss at full fill
0.14× base (7.3% of deployed capital)
Profit if every rung books its target
0.02× base
One shallow cycle, against reserved capital
33.9 bps

The last row is the metric that separates modes. Profit for a full cycle is the target of deployed capital in every , so it cannot discriminate. What differs is how much capital has to sit reserved to earn one shallow cycle: this mode 1.97× base to collect 33.9 bps of it when the first rung completes.

Which market pays this curve

Trends where you want a specific, auditable de-risking profile — for instance matching the taper to an 's historical continuation probability.

Divides by a constant ratio each level. r closer to 1 decays slowly, larger r decays fast (toward the halving ). Lets you dial capital protection precisely. Floored at 1 lot.

The shape of the risk

capital risk. The trade-off is , and r controls exactly how much of it you give up.

ℹ
Note:Capital is bounded by base × r/(r − 1) regardless of depth — extra levels are nearly free.

Run it over real history

This is the product's grid backtester, not a summary of one. It fetches public candles for the you pick, rebuilds the ladder on the first candle of the , then applies the engine's own fill, take-profit, and stop-loss rules bar by bar. The caveat block inside the is part of the output — read it before trusting a number.

Instrument

BTCUSD

delta-india

Geometric Decay · 10 levels @ 1% · target 1% · 100 USDT / level · 1× · long · no stop

What this does not model

  • Exact intrabar ticks. Bullish/doji candles use open → low → high → close; bearish candles use open → high → low → close. Finer timeframes reduce sensitivity to this deterministic assumption.
  • Queue position. Limit orders are assumed filled when touched, which flatters a maker grid in fast markets.
  • Margin rejection and liquidation. Deep rungs fill here even if the account could not fund them — check the capital requirement.
  • Slippage and funding. Only the fee you set above is charged; funding, borrow and slippage are absent.

Run the ladder over real history

The grid is rebuilt anchored on the first candle of the window, then the engine's own fill, exit, refill and stop-loss rules are applied bar by bar. You get the real fill sequence for this configuration on this instrument.

Measured against other modes

First the arithmetic, then the market. The below is computed from the size curves alone; the underneath replays every one of those ladders over the same real candle , with grid_mode as the only variable.

ModeLadder costDeepest rungBreak-even bounceEntry ordersShallow cycle
Geometric Decay (this mode)1.97×0.02×7.97%1033.9 bps
Fixed10.0×1.00×5.00%1010.0 bps
Square-Root Decay4.32×0.30×5.85%1016.4 bps
Exponential Decay1.00×0.00×8.90%1050.0 bps
Linear Martingale55.0×10.0×2.38%551.8 bps
Reference configuration: 10 levels, 1% apart, 1% target, base price 100, long. Sizes are in base-lot units. Peers are chosen from this mode's own direction plus the flat baseline, so the comparison is meaningful rather than decorative.

Nothing is precomputed here. Press run and the backtester fetches one candle window and replays 5 ladders across it — identical settings, identical bars, grid_mode as the only difference.

When to use it

  • Trends where you want a precise, tunable de-risking .
  • You need the worst case to be a closed-form number at any depth.

When to avoid it

  • You want the deepest rungs to carry real size.
  • The configuration will be edited without re-reading what r does to .

Tuning

  • r = 1.1–1.3 keeps a real ladder; r ≥ 1.8 is effectively halving decay with extra steps.
  • Because cost is bounded, depth is the cheap dial and r is the meaningful one.

This is parametric. The and the settings show only the dial(s) it actually uses, and changing one is a structural — the resting ladder is cancelled and re-placed at the new sizes.

Ratio (r)
Constant multiplier between consecutive levels. 1.2–1.8 is a controllable middle ground; 2 is full exponential. Default 1.5, range 1.05–3.
★
Pro tip:After changing a tunable, re-read the capital above and re-run the . A dial that looks cosmetic on a can be a change to the worst case.

Running it in production

  • Watch how quickly executed size hits the one-lot — beyond that extra levels add coverage but almost no averaging.
  • Track realised cycles per day. Decay curves earn from frequency, so a falling cycle count is the signal that the market has left the .
  • Check the gap between average entry and . Decay curves keep it wide by design, so recovery expectations must be set from it, not from hope.

How it fails

  1. 1
    Over-tapering
    A high r collapses the ladder to the opening position plus a rounding error, which is rarely the intent.
  2. 2
    Floor interaction
    The truncates the taper wherever it lands, so two different r values can produce the same ladder. Verify in the .

Claims worth correcting

“Bounded cost means bounded loss.”

The ladder cost is bounded; the loss depends on how far price travels against the position you did open. A stop is still the only bound on the latter.

Interaction with the rest of the configuration

  • Spread sets how fast the ladder consumes depth. Widening it buys coverage for the same level count at the cost of fewer .
  • Target sets what each cycle books. Below -trip fees plus slippage, a grid is a fee generator regardless of the .
  • The is the only bound on the tail. Without it, the 's worst case is whatever the market does, not what you planned.

Questions this mode raises

  1. 1
    What is the total cost formula?
    base × r/(r − 1) in the limit — so r = 1.5 caps the whole ladder at about three base lots no matter how many levels you add.

Where these numbers come from

  • Sizes and capital: levelMultiplier / gridModeCurve in lib/grid/gridModes.ts, from grid_modes.hpp and the Python engine's lot calculator.
  • Rung and exit prices, , init targets and the stop line: buildLadderPlan — the same builder the and use.
  • Backtest , cycles and P&L: runBacktest / runBacktestSweep over public broker candles, applying the engine's fill, exit, and stop rules.
  • Price charts: the trading terminal's chart engine, with the ladder drawn through its own price-line API.
!
Caution:A backtest is evidence about one , not a . Fees are charged at the rate you set; slippage, funding, , margin rejection and are not modelled. For a growth especially, a profitable window mostly tells you the window did not contain the trend that would have tested it.

Related

  • 1.Grid Modes — Overview — The full taxonomy and how to choose
  • 2.Anti-Martingale family — What every curve in this family has in common
  • 3.Capital Allocation — Sizing an account to a Geometric Decay ladder
  • 4.Stop Loss — Bounding this curve's tail
  • 5.Reading the Ladder Plan — Verifying the curve before deploying
  • 6.Grid Structure — Levels, init batch and base size

Related articles

  • Anti-Martingale

    Automation / Grid Modes / Anti-Martingale

    Anti-Martingale explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Exponential Decay

    Automation / Grid Modes / Anti-Martingale

    Exponential Decay explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Half-Slope Inverse

    Automation / Grid Modes / Anti-Martingale

    Half-Slope Inverse explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Inverse Fibonacci

    Automation / Grid Modes / Anti-Martingale

    Inverse Fibonacci explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Linear Subtractive

    Automation / Grid Modes / Anti-Martingale

    Linear Subtractive explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Logarithmic Decay

    Automation / Grid Modes / Anti-Martingale

    Logarithmic Decay explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Square-Root Decay

    Automation / Grid Modes / Anti-Martingale

    Square-Root Decay explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Anti-Martingale reference.

  • Anti-Martingale family

    Automation / Grid Modes / Families

    Size shrinks as the ladder deepens. Capital protection first, recovery second.

  • Harmonic

    Automation / Grid Modes / Harmonic

    Harmonic explained: how it works in QuaTick, settings and worked examples. Part of the Automation / Grid Modes / Harmonic reference.

Browse all knowledge base articles →