LogoMalgotDocsPricing
Sign In

6 · Robustness

Roadmap
Stress the system against a hostile world: costs, regimes, randomness and unseen data.
On the roadmap — not shipped yet
This stage is designed but not yet built into Malgot. The page below teaches the methodology so you can practise it manually today and recognise the feature when it lands. Anything describing a concrete Malgot screen is marked accordingly.

Sensitivity perturbs your parameters. Robustness perturbs the world. A system is robust if it survives conditions that differ from the tidy backtest — because live markets always will. This is the last gate before risking money (paper or real).

The stress tests that matter

1
Cost stress

Re-run with pessimistic frictions: higher commission, wider slippage, a real short- borrow rate. If a modest cost bump erases the edge, the edge was mostly a costing artefact.

2
Regime / period slicing

Evaluate separately across bull, bear and sideways periods, and across years. A system that only prints money in one regime isn't a system — it's a bet on that regime continuing.

3
Out-of-sample & holdout

Keep a slice of history you have never looked at during development or optimization, and test on it exactly once. If you peek repeatedly, it stops being out-of-sample.

4
Monte-Carlo / resampling

Shuffle or resample the trade sequence (or bootstrap returns) to build a distribution of outcomes. It answers "how much of my result was luck?" and gives an honest range for drawdown and final equity, not a single hero number.

5
Perturbation of entries

Delay every fill by one bar, or add random noise to fill prices. An edge that vanishes when execution is slightly worse was never executable.

What "robust" looks like

  • Positive (if smaller) net of pessimistic costs.
  • Profitable — or at least not catastrophic — across multiple regimes.
  • OOS results consistent with in-sample.
  • A Monte-Carlo drawdown distribution you can actually stomach.
Robustness beats peak performance

Given two systems, prefer the one with the lower backtest return but far tighter, more stable behaviour under stress. The flashy one is usually overfit; the boring one is usually deployable.

Position sizing is part of robustness

The best entry logic can still blow up with reckless sizing. Volatility-targeted sizing (risk a fixed fraction of equity per trade, scaled by an ATR-style stop distance) keeps risk roughly constant across assets and time — and is what lets a system survive its worst stretch, which Monte-Carlo will show you is worse than your backtest's.

In Malgot

Roadmap
Dedicated robustness tooling (regime fan-out, Monte-Carlo, holdout management) is on the roadmap; the optimization design treats regime testing as a sibling feature. Several ingredients already exist today:

  • Cost stress is fully available now — clone your broker with pessimistic commission, slippage and short-borrow settings and re-run.
  • Period slicing — run the same system over different date windows and compare.
  • Trade-distribution shape — the histogram view is a first, manual read on tail risk.

Practise it today, manually: run your candidate over three separate regimes and under a "pessimistic broker", and compare the metrics side by side. If it holds up, you're ready to trade it without money at risk.


Previous

5 · Sensitivity

Next

7 · Paper trading