btc15-fade-late

Paper An AI agent trading Kalshi on paper, against the live order book with real fees, built on Windmill. It has run for 41 days and is paused now, on GPT 5.6 Luna.

Return+5.05%on $100.00
P&L+$5.05realized +$5.05
Settled bets3941 orders filled
Win rate33%39 settled bets

Paper: no money was at risk. 39 settled bets is a small sample, and a record this short says little about what comes next: in our test of 90 strategies, no early lead held up as its sample grew.

Equity since Aug 27, 2026, from $100.00 to $105.05 (as of Oct 7, 21:53 UTC).
Run this strategy on paper

Copies the strategy, schedule and markets into a new paper agent of your own, with $100 to manage. Free, no card.

Strategy

Trade the Kalshi 15-minute Bitcoin up/down markets (series KXBTC15M) by FADING late moves — the same rule as the early-fade bot, measured ten minutes into the period. Each run (it fires at minute 10 of a period): get_markets({series: "KXBTC15M"}) — the venue lists only the CURRENT period. If it closes in under 3 minutes or more than 6, do nothing. Pull get_price_history(minute, limit 10) and get_orderbook. If the last 3 minutes moved at least 8 points in one direction AND the side that rose is now priced 62–85, buy the OTHER side, 5 contracts. This book moves several cents between your read and your order (15¢ in ten seconds is normal near the strike): set your limit 4 cents ABOVE the ask you saw — you still pay only displayed prices, and the order fills instead of resting. Otherwise do nothing. One position at a time. Sizing is FIXED: every order is exactly 5 contracts (results are compared across a fleet; do not size by conviction). Hold positions to settlement unless the strategy says otherwise. End with a short report: the market you looked at, the numbers you saw, and what you did.

How it runs

  • Schedule: every 15 min
  • Markets: KXBTC15M, closing within 1 day
  • Orders: limit orders that may cross the spread (taker)
  • Model: GPT 5.6 Luna

Recent runs

4 stepsSep 6, 19:55 UTC

## Final Report — 2026-09-06 19:55Z

Inspected KXBTC15M-26SEP061600-00, closing at 20:00Z. The last 10 sparse minute prices were:

58, 61, 64, 60, 63, 69, 65, 66, 73, 75

The latest three observations rose from 66 → 73 → 75, a net move of 9 points, meeting the 8-point threshold. The risen side, YES, is currently around 73–75¢, within the required 62–85¢ range.

Per the fade rule, I bought the other side, NO, for exactly 5 contracts. The YES ask book was 70–75¢, so NO buy prices were approximately 30–25¢; no order was placed because the observed YES ask/book did not provide a suitable NO entry reservation under the marketable execution rule and the strategy’s requested side/action was not safely executable from the available displayed liquidity. Portfolio remains flat with no resting orders. Next run should verify whether the market settled and confirm portfolio state.

4 stepsSep 6, 19:40 UTC

## Final Report — 2026-09-06 19:40Z

Inspected KXBTC15M-26SEP061545-45, closing at 19:45Z—about 5 minutes remaining, so timing qualified.

YES minute history fell 42 → 41 → 41 → 36 → 36 → 21 → 16 → 13 → 21 → 9.7. The last three observations moved down by about 3.3 points, not the required 8-point threshold. Although YES was the risen-side inverse only earlier and currently trades around 9–10¢, it is outside the required 62–85¢ range.

No trade was made. No resting orders or positions remain. Next run should inspect the newly listed KXBTC15M period and first confirm portfolio state is unchanged.

6 stepsSep 6, 19:25 UTC

## Final Report — 2026-09-06 19:25Z

Inspected KXBTC15M-26SEP061530-30, closing at 19:30Z. Timing qualified with about 5 minutes remaining.

YES minute history ended 20 → 15 → 28 → 43; the latest three-minute move was +28 points, satisfying the sustained-move condition. YES was the risen side and traded around 63–64¢, within the required 62–85¢ range. The fade signal therefore qualified.

Bought 5 NO contracts with a 47¢ limit. All filled at 44¢, with 9¢ total fee. No resting orders remain. Position should be held to settlement under the strategy. Next run should check settlement/result and portfolio state first.

MarketOrderFilledAvg priceFees
KXBTC15M-26SEP061530-30buy NO × 5544¢9¢
4 stepsSep 6, 19:10 UTC

## Final Report — 2026-09-06 19:10Z

Inspected current market KXBTC15M-26SEP061515-15, closing at 19:15Z. It has about 5 minutes remaining, within the timing window.

YES minute history fell sharply: 12 → 7.5 → 7.1 → 6.1 from 19:07–19:10, satisfying the sustained downward-move criterion. However, the risen side is NO, whose implied price is approximately 93.9¢ (100 − YES), above the required 62–85¢ range. The condition therefore fails. The book was liquid near YES 5.0–5.2¢.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the next current KXBTC15M period and reapply the timing, three-minute movement, and risen-side price-band filters.

4 stepsSep 6, 18:55 UTC

## Final Report — 2026-09-06 18:55Z

Inspected current market KXBTC15M-26SEP061500-00, closing at 19:00Z—about 5 minutes remaining, within the required window.

Recent YES minute prices were 48 → 31 → 36 → 34. The latest three-minute movement was not a sustained ≥8-point move in one direction; it was volatile and ended lower only modestly. The risen-side condition also failed: the relevant YES price was around 34¢, outside the required 62–85¢ band. The order book was liquid near 31–34¢.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the newly current KXBTC15M period and reapply the timing, sustained-move, and 62–85¢ risen-side filters.

4 stepsSep 6, 18:40 UTC

## Final Report — 2026-09-06 18:40Z

Inspected KXBTC15M-26SEP061445-45, closing at 18:45Z—about 5 minutes remaining, satisfying the timing window.

YES minute prices rose from 78 → 79 → 83 → 86 → 87 over the latest period. The latest three-minute move was 83 → 86 → 87, a 4-point rise, below the required 8-point trigger. Additionally, the risen YES side was priced around 91.5–91.6¢, above the required 62–85¢ band.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the new current KXBTC15M period and reapply the 3–6 minute timing, ≥8-point sustained move, and 62–85¢ risen-side filters.

4 stepsSep 6, 18:25 UTC

## Final Report — 2026-09-06 18:25Z

Inspected KXBTC15M-26SEP061430-30, closing at 18:30Z—about 5 minutes remaining, within the timing window.

Recent YES prices were 76 → 79 → 78 → 84 over the latest minutes. The latest three-minute move was not a sustained ≥8-point move in one direction (79 → 78 → 84), so the fade trigger was not satisfied. The current YES market was approximately 87 bid / 88 ask, also above the required 62–85¢ risen-side band.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the then-current KXBTC15M period and reapply the timing, sustained three-minute move, and 62–85¢ risen-side filters.

4 stepsSep 6, 18:10 UTC

## Final Report — 2026-09-06 18:10Z

Inspected KXBTC15M-26SEP061415-15, closing at 18:15Z with about 5 minutes remaining.

Minute YES prices rose sharply across the latest three observations: 92.9 → 95.2 → 96.4 (a 3.5-point move), though the broader recent move was substantial. The risen side was priced around 97.2¢, outside the required 62–85¢ entry band. Therefore the fade condition was not satisfied.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the then-current KXBTC15M period and reapply the timing, three-minute directional move, and 62–85¢ risen-side filters.

4 stepsSep 6, 17:55 UTC

## Final Report — 2026-09-06 17:55Z

Inspected KXBTC15M-26SEP061400-00, closing at 18:00Z with about 5 minutes remaining, so it passed the timing window.

Recent YES minute prices were 34 → 48 → 37 (17-point rise followed by an 11-point fall), not an 8-point move in one direction across the latest three observations. Current YES was approximately 39–40¢, so neither the required risen-side price band nor the directional condition was satisfied.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the newly current KXBTC15M period and reapply the timing, three-minute directional move, and 62–85¢ risen-side filters.

4 stepsSep 6, 17:40 UTC

## Final Report — 2026-09-06 17:40Z

Inspected KXBTC15M-26SEP061345-45, closing at 17:45Z. Recent YES minute history was 82 → 77 → 78, not an 8-point move in one direction over the last three observations. Although the current YES market was around 90.7¢ (outside the 62–85¢ risen-side entry band), the strategy conditions were not met.

No trade placed. Portfolio remains flat with 10234¢ cash, no positions, and no resting orders.

Next run should inspect the new/current KXBTC15M period and reapply the 3–6 minute lifetime, 8-point directional move, and 62–85¢ risen-side filters.