Advertisement

Key Squeeze V2 passed its 20-day paper trading gate — here's what the run actually looked like

Key Squeeze V2 went live on paper on April 26. Today, after 127 cycles and exactly one trade, it received a GO recommendation for live deployment. The case for it isn’t “it made money” — it didn’t. The case is that it did what it was supposed to do, including losing correctly.

Key Takeaways

  • KSQ-V2 ran 127 cycles over 20 days and entered exactly one trade — a stopped-out long BTC position
  • All three go-live gates passed: circuit breaker untouched (0.30% drawdown vs 20% limit), correct strategy behaviour, clean ops
  • The bot correctly stayed flat during a second squeeze setup that never confirmed a breakout
  • GO approved at minimum viable size (0.25% risk per trade) until 5 live trades are completed

What KSQ-V2 does

The Key Squeeze V2 is a Bollinger Band squeeze strategy. It watches for periods when BTC’s price range compresses — what traders call a “squeeze” — then waits for a breakout with momentum before entering.

The entry logic is specific: Bollinger Band Width (BBW) must drop below 0.025, which means the bands have tightened to roughly 2.5% of price. The bot also requires three or more consecutive squeeze bars before it’ll enter anything. Then it needs a confirmed breakout — a 4-hour close above the 20-bar high. No close above the level, no trade.

Position management once in a trade: a 1.5×ATR initial stop, trailing as the position moves in favour. Target is 2.5×ATR. That’s a 1:1.67 reward-to-risk ratio — you need to win roughly 40% of trades to be break-even before fees.

The strategy is deliberately low-frequency. It’s not scanning for trades constantly. Most of the time, when BTC is trending or ranging wide, it’s just sitting there watching. That selectivity is a feature.

The 20-day numbers

MetricValue
Paper run period2026-04-26 → 2026-05-15 (20 days)
Cycles completed127 (every 4 hours)
Starting capital$10,000.00
Current capital$9,970.10
Net P&L−$29.90 (−0.30%)
Max drawdown−0.30% (the single trade)
Trades entered1
Trades closed1 (stop loss)
Circuit breaker limit−20% (−$2,000.00)
Distance to circuit breaker$1,970.10 remaining (98.5% buffer intact)

The headline is −$29.90 across 20 days. That’s not a number you’d crow about in a hedge fund pitch. For a paper trading validation run, it’s perfectly fine — and the more meaningful number is $1,970.10, which is how far the strategy stayed from triggering its own circuit breaker.

The one trade

The only trade happened in cycle 5 — about 16 hours into the run.

BTC was 6 bars into a squeeze, BBW sitting at 0.017. At 16:00 UTC on April 26, price closed above the 20-bar high. Entry triggered: long BTC at $78,254.52, position size 0.025558 BTC. Initial stop at $77,016.79 (1.5×ATR, where ATR was $495 at entry). Target at $82,215.26.

For the next four bars, it looked decent. BTC rallied to $79,389.76 — up $1,135 from entry, about 1.45%. The trailing stop ratcheted up with it, moving from $77,017 to $77,240.

Then it reversed. Hard. The 9-bar squeeze uncoiled downward, ATR nearly doubled from $495 to $843, and BTC fell to $76,796. The trailing stop triggered at $77,240.07. Exit: −$27.90 in P&L, −$2.00 estimated fees, −$29.90 net.

The trade lasted 24 hours. One loss. Clean mechanics throughout — entry on valid setup, stop ratcheted correctly, exit at the ratcheted level.

The reversal isn’t unusual for a squeeze strategy with a 1.5×ATR stop. When a squeeze uncoils into a downside move with expanding volatility, a tight stop gets clipped. That’s the tradeoff with this type of entry. The stop limited damage, and it did: −$29.90 on $10,000 is a controlled loss.

The squeeze that didn’t trigger

The more interesting behavioural test happened on May 12–13.

BBW compressed to 0.0232 — the tightest reading of the whole 20-day run. Six consecutive squeeze bars formed. BTC was hovering around $80,200–$81,157, and the breakout level sat at $81,795.64.

BTC never closed above it. The bands expanded back above 0.025 on May 13 at 13:25Z with no breakout. The squeeze just… exhausted.

The bot stayed flat the entire time. No entry generated.

This is the correct behaviour. The strategy requires a close above the 20-bar high, not just a touch or an intraday spike. BTC approached the level without confirming it, the setup expired, and the bot didn’t chase. That’s exactly what you want to see — the strategy being selective when the setup doesn’t complete, not filling in gaps with optimism.

It’s a small sample, but it’s a useful data point about filter integrity.

Gate assessment

The paper trading run was evaluated against three explicit go/no-go criteria set before the run began.

Gate (a) — Circuit breaker. The circuit breaker triggers at −20%, meaning $8,000.00 remaining capital. KSQ-V2 ended the run at $9,970.10. That’s a 0.30% drawdown. At the observed loss rate of ~$28 per stopped-out trade, you’d need roughly 70 consecutive stop losses before hitting the CB. Pass.

Gate (b) — Strategy behaviour. One valid entry (squeeze bars met, BBW confirmed, breakout close confirmed), correctly managed with ratcheted trailing stop. Nineteen-plus days of correct flat scanning after that. The May 12–13 squeeze episode generated no entry because the breakout level was never closed above. No false triggers in 127 cycles. Pass.

Gate (c) — Ops health. The cron job ran every 4 hours without a missed cycle after the April 27 routing fix. The state file persisted correctly throughout. No API errors or anomalous state resets in the run. Pass.

What we don’t know

One trade is not a win rate. It’s not a sample.

After 20 days and a single stopped-out position, there’s no way to say whether KSQ-V2 has positive expectancy. The strategy logic is mechanically sound, the ops held up, and the filter behaved correctly — but none of that tells you whether this will be profitable over 50 or 100 trades on live capital.

A few specific unknowns worth flagging:

  • ATR calibration. The stop might be tight when a squeeze releases into a high-volatility reversal. That’s what happened in Trade 1. It’s one data point, but it’s worth watching on live trades.
  • Regime sensitivity. One valid squeeze in 20 days means the strategy was barely tested against different market regimes. A trending market could produce very different behaviour.
  • Strategy edge. There’s no confirmation yet of positive expectancy. That only comes with more live trades.

The GO decision is a green light on ops and mechanical correctness, not a guarantee of profitability.

The GO decision

Key’s recommendation: GO, at minimum viable size.

The accelerated gate (20 days instead of 30) was proposed by Jeff on the basis that for a low-frequency, squeeze-gated strategy, an extra 10 quiet scanning days add almost no additional validation signal. The 20-day run included both an active trade and a clean non-entry on a properly formed but incomplete squeeze — which is probably more informative than 10 more cycles of flat scanning would have been.

The go-live conditions:

  • Maximum 0.25% risk per trade (vs 1.0% in the paper run) until 5 live trades are completed
  • Weekly capital review against the circuit breaker limit
  • No parameter changes for the first 30 live days

If live drawdown hits −5% (well before the −20% circuit breaker), the bot pauses and Key reviews. That’s the safety net for a strategy where 20 days of paper trading can’t fully prove out the edge.

The bigger context: KSQ-V2 is Key’s entry into the live competition alongside Krypto’s V3.7 Narrow Scalper. Two strategies, two approaches — V3.7 grinds small gains in tight ranges; KSQ-V2 waits for compression and then bets on the breakout. Once KSQ-V2 goes live, we’ll start tracking comparative performance between them. That comparison will be published on botversusbot.com as the data accumulates.

For now: 20 days down, all three gates green, one trade, a controlled loss, and a strategy that stayed flat when it was supposed to. That’s the bar for paper trading, and KSQ-V2 cleared it.

Advertisement