v1.0 · Options layer · powered by RedisMarketBridge

Sell the premium.
Cap the risk. Skip the screen.

A multi-strategy options bot for put credit spreads, call credit spreads, and iron condors. EM-based strike placement, Monte Carlo probability, Kelly sizing — every trade scored before a single leg is placed. Crypto today, forex next.

Supported venues
Deribit Bybit OANDA · soon IBKR · soon
tfb:signal:__top__ · live LIVE
BTC 62000/60000 Put Credit Spread +$420 84% GRADE A
ETH 2400/2300 Put Credit Spread +$180 81% GRADE A
SOL 145/150 Iron Condor +$96 78% GRADE B
BTC 72000/74000 Call Credit Spread +$210 76% GRADE B
ETH 2100/2000 Put Credit Spread +$72 71% WATCH
12scored signals
4grade A
84%top POP
5 of 12 shown · refresh 300s
01
Core Strategies

Three structures.
One regime read.

Each strategy targets a specific volatility regime with dedicated strike placement, probability modelling, and exit logic. The regime engine routes signals automatically — bullish to puts, bearish to calls, neutral to condors.

01
Bullish premium

Put Credit Spread

Sells a put below spot, buys a further put for protection. Collects premium while price stays above the short strike. The core income engine — defined max loss, theta works in your favour every day.

Strike placementEM · 0.40–0.65 SD
Target POP75%+ for Grade A
Capture target50% · dynamic to 65%
SignalType: "PutSpread"
02
Bearish premium

Call Credit Spread

Sells a call above spot, buys a further call for protection. Activates when the regime turns mean-reverting — RSI overbought, extended rally, sector caution. Captures premium on the fade.

ActivationMean-revert > 0.50
TriggerRSI > 75 · 3+ names
Capture target50% · dynamic
SignalType: "CallSpread"
03
Neutral premium

Iron Condor

Put spread plus call spread on the same name. Profits when price stays inside a range through expiry. Built when the regime is neutral — moderate IV, no strong directional bias either way.

StructureBoth wings
Max lossWider wing − credit
Profit zoneBetween short strikes
SignalType: "IronCondor"
+

Let the regime decide

Set SignalType: "All" and the regime engine routes automatically: bullish reads fire put spreads, overbought reads fire call spreads, neutral reads build condors. A put and call on the same name simply become an iron condor — no conflicting signals, ever.

02
Signal Engine

Scored first.
Placed second.

Every trade starts with a graded signal. Expected-move strike placement, a 10,000-path Monte Carlo for probability of profit, and a credit-to-risk gate — only signals that clear every threshold reach Grade A.

tfb:signal:__top__ · scored spreads
SpreadTypePOPC/RGrade
BTC 62k/60kPut84%22%A
ETH 2400/2300Put81%18%A
SOL 145/150Condor78%16%B
BTC 72k/74kCall76%20%B
ETH 2100/2000Put71%11%C
iv:surface:__all__ · implied vol rank
AssetIV RankEM 7dRegime
BTC0.627.2%SELL
ETH0.588.1%SELL
SOL0.7111.4%SELL
BNB0.345.0%NEUTRAL
XRP0.224.1%SKIP
03
Platform Features

Every detail engineered.

The infrastructure underneath the strategies. Protection-first leg execution, dual-database history, Kelly calibration, contagion detection, and a live dashboard — all part of the same Rust core, none of it bolted on.

01 — EXECUTION

Protection-first legs

The long protective leg always fills before the short premium leg. If the second leg fails inside the timeout, the first is cancelled and the spread aborts. No naked short exposure, ever.

LegOrder: "ProtectionFirst"
LegFillTimeout: 30s
MaxSpreadSlippage: 10%
02 — SIZING

Kelly calibration

Half-Kelly position sizing recalibrated at 50 / 100 / 200 trade milestones. Win rate and win-loss ratio read straight from your live trade log. Size expressed as max risk, never notional.

Mode: "kelly"
Fraction: 0.5
Recalibrate: [50,100,200]
03 — RISK

Contagion detection

When a sector bellwether reports earnings inside your DTE window, every correlated position is flagged and auto-sized down. The config-driven bellwether map encodes the lesson once and applies it forever.

BellwetherMap:
  BTC: [ETH, SOL, BNB]
  ETH: [SOL, BNB]
04 — SIZING

Dynamic flag sizing

Caution flags reduce position size automatically. One flag holds full size, two flags halve it, three or more quarter it. Negative gamma regimes halve again on top. No manual judgement at the desk.

1 flag  → full
2 flags → half
3+ flags→ quarter
05 — STORAGE

Dual database

PostgreSQL for production, SQLite for local — same codebase, driver-detected at startup. Sharpe, Sortino, Calmar, max drawdown, and close-reason breakdown computed from day one.

Driver: sqlite | postgres
Metrics: Sharpe · Sortino
         Calmar · Drawdown
06 — ALERTS

Discord + Telegram

Trade cards, position-monitor signals, and risk alerts on separate channels. Each card shows grade, POP, EV, credit-to-risk, distance, dynamic size, and any contagion warning — automatically.

#tfb-trade-card
#tfb-position-monitor
#tfb-manage-alerts
07 — RUNTIME

Mode switching

One YAML line switches the bot between scan-only, auto-trade, monitor-only, and full automation. Run two instances — a put bot and a call bot — for live A/B testing of each signal type.

BotMode: "Scanner"
        | "AutoTrade"
        | "Monitor" | "Full"
08 — MONITOR

24/7 position watcher

A Tokio interval loop checks every open spread every two hours — distance to short strike, capture percentage, days to expiry. Auto-closes at the dynamic capture target or fires a MANAGE signal.

MonitorInterval: 7200s
CaptureTarget: dynamic
ManageAt: 5% distance
04
Risk Controls

Protect first.
Profit second.

Three independent exit layers — distance, capture, and event — operate concurrently on every open spread. Any layer can close both legs. The defined-risk structure caps the worst case before a single check runs.

01
Distance guard

MANAGE signal

Monitors how close spot is to the short strike. When price moves within the configured distance band, the position is flagged for management and reduced or closed before the strike is breached.

BTC / ETH band5% distance
SOL band7% distance
Immediate close2.5% distance
On breachBoth legs close
02
Capture target

Dynamic profit lock

Closes winners at the capture target instead of holding to expiry. Healthy positions in calm regimes run to 65%; stressed positions take profit at 40%. The options analogue of a smart trailing exit.

Healthy regime65% capture
Normal regime50% capture
Stressed regime40% capture
Close before expiryDTE = 1
03
Event guard

Emergency close

Integrates with the market-watch crash detector. When a compound BTC/ETH/SOL crash exceeds threshold in real time, exposed positions close before the move completes — no waiting for the next monitor cycle.

Crash triggerCompound 2.5%
Max loss cap150% of credit
Contagion bufferDTE + 3 days
Applies toAll strategies
05
Paper Trading

Prove it first.
Then go live.

Paper mode runs every strategy on real option chains — no order placement, no capital risk. Two weeks of paper data builds the conviction, and the Sharpe/Sortino track record, to justify your first live position size.

reports/paper-trading/open/ btc_putspread_20260612.txt PAPER MODE
Trade IDPCS-BTC-20260612063000
StrategyPut Credit Spread
Short strike$62,000
Long strike$60,000
Spot at entry$66,800
Distance OTM7.2%
Net credit$420
Max loss$1,580
Credit / risk22.0%
Monte Carlo POP84.1%
GradeA
Execution modePAPER — no real orders
01

Paper mode · 2 weeks

Run BotMode: "Scanner" and review reports in /paper-trading/. Validate grade quality, expected vs realised capture, and timing against real chains.

02

Small live · $100–500 risk

Switch to AutoTrade with minimum contracts. Compare real fills and slippage vs paper estimates. Tune capture targets and credit-to-risk thresholds against live data.

03

Scale with conviction

Each milestone recalibrates Kelly sizing from your own track record. Sharpe, Sortino, and drawdown — objective data, not gut feel — justify each step up in size.

06
Data Infrastructure

The surface
never sleeps.

ThetaFlowBot doesn't poll exchanges — RedisMarketBridge does that once, for the whole bot family. Option chains, implied vol surfaces, and pre-scored signals land in Redis. The bot reads structured opportunity data and executes.

01 Data sources
  • Deribit BTC · ETH
  • Bybit BTC · ETH · SOL
  • Spot feed compound watch
  • Funding cross-venue
  • OANDA FX · soon
02 RedisMarketBridge
  • Phase 1 chain sync
  • Phase 2 IV surface
  • Phase 3 spot ticks · 5s
  • Phase 4 EM compute
  • Phase 5 Monte Carlo
  • Phase 6 grade + score
03 ThetaFlowBot reads
  • tfb:signal:__top__
  • iv:surface:__all__
  • chain:*:__quotes__
  • market:crash:*
  • tfb:positions:open
3
Strategies · Put · Call · Condor
10k
Monte Carlo paths per signal
5s
Spot tick refresh rate
2h
Position monitor cycle
07
Pricing & Plans

Start free.
Scale live.

Paper trading is always free. Pay only when you switch to live execution. License key delivered instantly — the bot goes live on the next restart, no config rewrite, no reinstall.

00 Evaluation

Free

Full bot, real chains, paper execution. The complete experience before you commit real capital.
$0 forever
no card required
  • All 3 strategies · paper mode
  • Real signal scoring
  • Full dashboard + alerts
  • Unlimited paper positions
  • Performance metrics
  • Live order execution
  • Kelly auto-sizing
Download free
01 Entry

Basic

Live execution unlocked for put credit spreads. The simplest path to real premium income.
$29 /mo
monthly · cancel anytime
  • Everything in Free
  • Live execution · Put spreads
  • Up to 3 live positions
  • PostgreSQL storage
  • Email support
  • Call spreads & condors live
  • Kelly auto-sizing
Get Basic
03 Enterprise

Enterprise

Multi-node deployment, forex options access, custom thresholds, and white-glove onboarding.
Custom
volume-based · contact sales
  • Everything in Pro
  • Unlimited positions
  • Forex options access
  • Multi-node deployment
  • Custom grade thresholds
  • White-glove onboarding
  • Dedicated support channel
Contact sales
01 Run paper tier 02 Build the track record 03 Drop license key 04 Live in 60 seconds
Ready when you are

Sell premium.
Not your weekend.

ThetaFlowBot v1.0 — paper trading free forever. Go live when the analytics tell you you're ready. No credit card to start, no lock-in if you continue.

License delivery: instant Time to go live: under 60 seconds Cancel anytime · no lock-in