Deep Research

BTC Entry Bands

BTC 15-minute UP entries gated on BTC and ETH both being up over 15 minutes and 1 hour. Test whether the entry price band or the presence of take-profit/stop exits drives the result, holding signals, size (5), max position (20), loop interval (30s), and one-entry-per-market fixed.

Historical research only. Not investment advice.

Comparison Results

BTC 15-Minute UP Entries: Entry Band vs. Exit Style

Short disclaimer: This is historical simulation research on a 30-day Kalshi crypto window. It is not investment advice and says nothing about future results.

Intro / thesis

The signal here is simple. Enter Kalshi's 15-minute BTC market on the YES side when both BTC and ETH are up over the last 15 minutes and the last hour, and price is in a specific band with five minutes or less to expiry. The question this batch set out to answer was narrow: within that fixed signal, size (5), position cap (20), loop cadence (30s), and one-entry-per-market, does the entry price band drive the outcome, or does the presence of take-profit and stop exits drive it?

That framing matters because entry band and exit style are easy to conflate. A wider or narrower band changes both how often you get filled and what you pay when you do. Adding a +5c profit target and a -10c stop changes when you get out and at what price. Running them against each other in the same period is the only honest way to separate the two effects.

Variant and strategy explanation

Four variants ran, and all four share the same base DSL. Each is a Kalshi custom strategy evaluated every 30 seconds. Rule 1 fires a 5-contract YES buy when all four momentum conditions hold (BTC and ETH each up over 15m and 1h) and the YES best bid sits in the variant's band with time_to_expiry <= 5m. Rule 4 cancels everything in the last 30 seconds. Rule 2 and Rule 3 are the exits, and both operate per fill — each one sells only the specific fill it's gated on, never flattening unrelated positions:

  • Rule 2 (take profit): when yes_position_size > 0, sell the selected fill when the executable side bid clears that fill's actual purchase price by at least +0.05, before fees.
  • Rule 3 (stop loss): when yes_position_size > 0, sell the selected fill when the executable side bid drops to the fill's purchase price minus 0.10. Gaps can fill lower than the stop level.

The four candidates:

  1. Band 0.55–0.65, +5c profit, -10c stop — smallest band, exits on.
  2. Band 0.60–0.70, +5c profit, -10c stop — the current saved version, exits on.
  3. Band 0.65–0.75, +5c profit, -10c stop — highest band, exits on.
  4. Band 0.60–0.70, no exits, hold to settlement — same band as #2, exits removed.

Comparing #1, #2, and #3 isolates the band with exits held constant. Comparing #2 and #4 isolates the exits with the band held constant. That's the whole design.

Top results

RankVariantTradesWin rateTotal P&LROIMax DDSharpe
1Band 0.55–0.65, +5c / -10c23760.2%+30.61153.05%-12.600.30
2Band 0.60–0.70, +5c / -10c21867.3%+28.67143.35%-15.150.26
3Band 0.65–0.75, +5c / -10c24467.8%+28.00140.00%-13.500.29

The low band took first place, but the spread across all three bands is small — roughly 13 points of ROI and about 2.6 dollars of total P&L from best to worst. Two things stand out. First, the winning band did not win on win rate; it actually had the lowest win rate of the three at 60.2%, and still produced the best P&L and ROI. So the edge in the low band is coming from payoff per trade, not from hitting more often. Second, the higher bands traded more (244 vs. 237 vs. 218), consistent with more qualifying markets at higher prices, but the extra trade count bought no extra P&L.

One thing I can't cleanly resolve: the top-ranked variant posts the best ROI and best total P&L while also having the lowest win rate of the three exit-on variants. On its face that's a mild inconsistency in terms of what "win rate" is measuring versus what's driving the dollars. I'm flagging it rather than explaining it away — the per-fill exit mechanics and how round trips are counted could plausibly account for it, but I did not verify that, so the discrepancy stands unresolved.

Bottom results

RankVariantTradesWin rateTotal P&LROIMax DDSharpe
4Band 0.60–0.70, no exits, hold to settlement21262.3%+24.87124.35%-23.700.18

The hold-to-settlement variant is the clear laggard on every risk-adjusted measure. Compared with its exact same-band sibling that has the exits, dropping the exits cost about 19 points of ROI and roughly $3.80 of total P&L, and it did so with the worst drawdown of the batch by a wide margin (-23.70 vs. -15.15 for the identical band with exits) and the lowest Sharpe (0.18). That's the useful read: the bands mattered a little, but the exits mattered more, and they mattered most on the downside. Held to settlement, the same entries give back far more heat without earning it back.

Note the hold variant also has the fewest trades (212) — that's just fill/settlement flow, not a signal difference, since the entry rule is identical to variant #2.

Conclusion

Two takeaways, both modest. On entry band, the low band (0.55–0.65) edged out the others on P&L, ROI, and drawdown, but the margin is thin enough that I wouldn't call it a decisive finding from one 30-day window. On exits, the evidence is stronger: holding the same band and removing the profit/stop pair degraded ROI, Sharpe, and drawdown together. If you're going to run this family, the exits are the part earning their keep.

Each successful variant above is saved as a runnable Turbine strategy, so you can inspect the DSL, re-run the window, or point it at a different period directly.

Caveats, stated plainly. This was an explicit four-variant batch, not a sweep — no permutation testing, no out-of-sample validation, no robustness checks of any kind. A single 30-day window on one venue is a small sample, and a small edge in a market with this much short-horizon noise can flip on a different month. Differences of a few dollars of P&L between adjacent bands are within the range you'd expect from noise alone. Nothing here is a claim about live or future performance, and none of it is financial advice.


Long disclaimer: This document is research and informational material only. It is not investment, legal, tax, or accounting advice, and it is not an offer or solicitation to buy or sell any security, contract, or financial instrument, including event contracts on Kalshi or any other venue. All figures shown come from historical simulation of a 30-day lookback period using a defined ruleset; they are backtests, not realized trading results, and simulated results carry well-known limitations, including hindsight bias, look-ahead concerns in signal construction, and the fact that simulated fills may not reflect actual liquidity, queue position, spread, fees, or slippage. Past performance — simulated or live — does not indicate or guarantee future results. Event contracts involve risk of loss up to the full amount at risk, and markets can move against any position quickly. Drawdown figures, Sharpe ratios, win rates, ROI, and trade counts are model outputs subject to data quality, parameter, and methodology choices, and different assumptions or periods would produce different numbers. No representation is made that any strategy described here is suitable for any particular person or account. Nothing in this document should be relied upon as the basis for a trading decision; consult a qualified professional regarding your own circumstances. Any forward-looking statements are speculative and may prove incorrect.

About this Kalshi strategy backtest

What question does BTC Entry Bands investigate?

BTC 15-minute UP entries gated on BTC and ETH both being up over 15 minutes and 1 hour. Test whether the entry price band or the presence of take-profit/stop exits drives the result, holding signals, size (5), max position (20), loop interval (30s), and one-entry-per-market fixed.

Read the analysis alongside the individual variant results. Check which entry, exit, price-band or risk settings changed, which settings stayed fixed, and whether the report documents enough historical coverage to support its comparison. A different parameter value defines a different simulation; it does not establish a new source of live trading returns.

How many strategy variants are included?

This report lists 4 completed and 0 failed strategy variants. Failed comparisons do not count as successful tests with zero profit. Review trade counts and drawdown alongside net P&L, win rate and Sharpe, and read any coverage or execution caveats in the analysis. A result based on very few trades needs particular care, even when its return looks high.

Does a profitable Kalshi backtest predict live performance?

These are historical simulations. Live results can differ because of liquidity, fees, slippage, latency, market resolution, outages and data quality. Selecting the best result after comparing many variants can also overstate how reliably it will perform on new data. Compare nearby settings, inspect losing variants and test on a separate period before considering a live run. The report is research, not a promise of profit or investment advice.

How can I inspect or test a strategy from this report?

Use an available Open strategy link to inspect that variant. Review its rules, market, date window, fill assumptions, fees and trade history before changing parameters or rerunning it. Confirm which data and execution assumptions the selected market actually supports; a replay does not establish that every historical order could have filled live. For the workflow, read the Kalshi and prediction market backtesting guide. The Kalshi backtesting software page explains the product's supported testing workflow.

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.