swingBalancedmean-reversionmediumBest TF: 1DFailed out-of-sampleTV: Not yet ported to Pine

Bollinger Squeeze Breakout

Wait for Bollinger band width to contract into a squeeze, then trade the breakout when volatility expands.

Profitability metrics

This strategy has not been validated against TradingView multi-year history yet — RM/day, trades/day, and monthly projection are only computed from authoritative TV stats. The 1-month sweep below is in-sample only and should not be used as a profit forecast.

Philosophy

Volatility cycles. After a tight range, the market breathes out. Be ready with a plan, not a prediction of direction.

Walk-forward status: Failed out-of-sample

Every variant we walk-forward-tested collapsed out-of-sample (OOS SQN < 1.0 or negative). The in-sample numbers shown below are the RAW backtest — they did NOT transfer to unseen data. Reject for live trading.

This strategy: Mode A walk-forward on legacy_5m: bb20/60 OOS SQN -0.25, bb20/30 OOS SQN -0.64 (both fail). Featured snap_1D config untested directly but the intraday variants both fail OOS.

Best backtest config (1-month sweep)

SQN
0.52
Profit Factor
1.70
Win rate
50.0%
Trades
4
Net profit
MYR +780
Max drawdown
MYR +1,110
Dataset
snap_1D
Timeframe
1D

Strategy properties

Style
swing
Profile
Balanced
Trades / day
0.18
Avg bars held
TV compile status
Not yet ported to Pine
Walk-forward
Failed out-of-sample
Moderate WR with PF ~1.5–2. Workhorse — no extreme runs either way.

Parameters

bbPeriod
30
bbMult
2
squeezeLookback
60

Applies to

  • Market: FCPO (Crude Palm Oil Futures, Bursa Malaysia)
  • Timeframe: 1D
  • Style: Swing (hours to days)
  • Complexity: 2-3 rules, some discretion

When it works

Did not show a stable edge in the sample — treat with caution.

Pine Script coming soon

Related strategies (mean-reversion)

Full raw backtest result
{
  "dataset": "snap_1D",
  "tf": "1D",
  "params": {
    "bbPeriod": 30,
    "bbMult": 2,
    "squeezeLookback": 60
  },
  "trades": 4,
  "winRate": 50,
  "netProfitMYR": 780,
  "profitFactor": 1.7,
  "sqn": 0.52,
  "maxDrawdownMYR": 1110
}