BTC 5m Momentum
Coinbase BTC-USD 5-minute momentum (change_5m) predicts short-term repricing in Kalshi KXBTC15M contracts. Enter long (buy_yes) when change_5m exceeds a positive threshold and short (buy_no) when it falls below the negative threshold; exit via a direction-agnostic near-zero momentum-decay band around zero. The goal is to isolate signal quality: 1 contract per entry, max_position 1, $2 account-level max_loss, no pyramiding, no averaging down, no fixed take-profit. Test whether neighboring momentum thresholds and price band combinations remain profitable rather than which single cell maximizes P&L. A 120-second re-entry cooldown is not expressible in custom DSL and is documented as a known limitation.
Historical research only. Not investment advice.
Top strategy variants
Bottom strategy variants
Research Report: Kalshi KXBTC15M Momentum Strategy
Short Disclaimer
This is historical simulation research only. No live trading was conducted. Past simulated performance does not guarantee future results.
Intro / Thesis
We tested whether Coinbase BTC-USD 5-minute momentum (change_5m) can predict short-term repricing in Kalshi's KXBTC15M contracts. The core idea: enter long (buy_yes) when 5-minute momentum exceeds a positive threshold, enter short (buy_no) when it falls below the negative threshold, and exit when momentum decays back toward zero via a direction-agnostic band.
The design was deliberately simple — 1 contract per entry, max_position of 1, $2 account-level max loss, no pyramiding, no averaging down, no fixed take-profit. The goal was to test whether neighboring momentum thresholds and price band combinations remain profitable, not to optimize a single cell for maximum P&L.
Variant and Strategy Explanation
A 100-cell parameter sweep was completed across two axes:
- Price floor: 0.05 to 0.45 (10 values)
- Price ceiling: 0.55 to 0.95 (10 values)
All 100 variants completed successfully. Each successful variant is saved as a runnable Turbine strategy.
The base strategy logic:
- Entry long: When
change_5m > 0.00075, price is within the specified band, spread ≤ 0.03, and time to expiry > 20 minutes. - Entry short: When
change_5m < -0.00075, with the same price, spread, and time conditions. - Exit long: When
change_5m ≤ 0.00005(momentum decays back to near zero). - Exit short: When
change_5m ≥ -0.00005(same decay logic for shorts). - Safety exits: Cancel all orders when time to expiry ≤ 20 minutes.
The loop interval was 10 seconds, with Coinbase BTC-USD data refreshing every 5 seconds.
Known limitation: A 120-second re-entry cooldown was desired but is not expressible in the custom DSL. This is documented as an unresolved design constraint.
Top Results
The top 8 variants, ranked by net P&L, are:
| Rank | Variant | Total Trades | Win Rate | Total P&L | Max Drawdown |
|---|---|---|---|---|---|
| 1 | floor 0.05 / ceil 0.55 | 0 | 0% | $0 | $0 |
| 2 | floor 0.05 / ceil 0.59 | 0 | 0% | $0 | $0 |
| 3 | floor 0.05 / ceil 0.64 | 0 | 0% | $0 | $0 |
| 4 | floor 0.05 / ceil 0.68 | 0 | 0% | $0 | $0 |
| 5 | floor 0.05 / ceil 0.73 | 0 | 0% | $0 | $0 |
| 6 | floor 0.05 / ceil 0.77 | 0 | 0% | $0 | $0 |
| 7 | floor 0.05 / ceil 0.82 | 0 | 0% | $0 | $0 |
| 8 | floor 0.05 / ceil 0.86 | 0 | 0% | $0 | $0 |
Every variant produced zero trades, zero P&L, zero drawdown, and a zero Sharpe ratio. The strategy never triggered an entry condition during the simulation window.
Bottom Results
The bottom 8 variants are identical to the top 8. Every variant in the entire 100-cell sweep produced exactly the same result: zero trades, zero P&L, zero drawdown.
There is no performance spread to analyze. The sweep did not differentiate between parameter combinations in any meaningful way.
Conclusion
This strategy did not trade. Across all 100 parameter combinations, the entry conditions were never satisfied during the simulation window. The thesis — that Coinbase BTC-USD 5-minute momentum predicts short-term repricing in KXBTC15M — was not actually tested, because the strategy never engaged with the market.
The robustness statistics reinforce this. The permutation test produced a p-value of 1.000, indicating the edge feed's timing beat 0.0% of 143 re-sweeps against time-scrambled versions of the same feed. In plain terms: there is no evidence the signal carried any predictive value in this window.
The warnings are important to state plainly:
- Trade floor warning: The winner has 0 resolved trades, well below the 30-trade threshold for statistical reliability.
- Inert axes: Varying
price_floorandprice_ceilingproduced identical trades in every cell — meaning these parameters were never exercised. The flatness across the sweep is not evidence of robustness; it's evidence of inactivity.
The top results are consistent with selection noise. There is no variant here that can be described as strong, validated, or promising. The strategy requires more permissive entry conditions, a wider price acceptance band, a different momentum threshold, or a longer simulation window with more price movement to generate any trades at all.
Long Disclaimer
This report is a historical simulation produced for research purposes. It was not a live trading exercise. No actual capital was at risk. The data reflects a specific simulation window on the Kalshi platform using a custom Turbine strategy written in YAML DSL.
Several limitations apply:
No trades were executed. The strategy's entry conditions were never met during the simulation window. All performance metrics (P&L, win rate, Sharpe, drawdown) are zero because there was no activity to measure.
The permutation test returned p = 1.000. This means the strategy's edge-feed timing failed to outperform time-scrambled versions of the same feed. The market price series was not permuted; price-based conditions in the rules were not tested by this design.
The parameter axes were inert. Price floor and price ceiling variations did not produce different behavior because no entries triggered regardless of parameter settings. The apparent flatness of the sweep is not evidence of parameter robustness.
The 120-second re-entry cooldown could not be implemented in the custom DSL. This limitation may have affected the strategy's behavior in ways not fully captured by this simulation.
Past simulation performance does not predict future results. Market conditions change. Momentum signals that performed well in one window may fail in another. Kalshi contract pricing involves spreads, liquidity constraints, and expiry dynamics that historical simulations may not fully capture.
This report should not be construed as investment advice, a recommendation to trade, or a claim that the tested strategy has any predictive edge. It is a record of what did and did not happen in a specific simulation under specific conditions.
This report is generated from historical simulations. Backtests can be wrong or incomplete, and live trading can differ materially because of liquidity, fees, slippage, latency, market resolution, outages, and data quality. Do your own review before running any strategy.