Install
openclaw skills install kalshi-eth-btc-beta-traderTrades ETH price markets on Kalshi by exploiting the 1.3x beta relationship between ETH and BTC. When BTC odds shift, ETH markets lag behind -- this skill captures the catch-up. Requires SIMMER_API_KEY and simmer-sdk.
openclaw skills install kalshi-eth-btc-beta-traderThis is a template. The default signal uses a static 1.3x beta factor between ETH and BTC -- remix it with live correlation calculations, on-chain data feeds, or options-implied volatility surfaces. The skill handles all the plumbing (market discovery, trade execution, safeguards). Your agent provides the alpha.
ETH historically moves approximately 1.3x BTC on a percentage basis. When Kalshi BTC price markets shift, the corresponding ETH markets often lag by several hours. This skill detects the BTC shift, computes the expected ETH fair price using the beta multiplier, and trades when the ETH market has not yet caught up.
Key advantages:
ETH_expected_move = BTC_move * 1.3|fair - market| >= entry_edge| BTC Shift | ETH Expected | ETH Market | Edge | Action |
|---|---|---|---|---|
| +5% | +6.5% | +2% | +4.5% | BUY YES |
| -3% | -3.9% | -1% | -2.9% | BUY NO |
| +1% | +1.3% | +1% | +0.3% | Hold |
conviction = min(|edge| / entry_edge, 2.0) / 2.0size = max($5.00, conviction * MAX_POSITION_USD)| Parameter | Default | Notes |
|---|---|---|
| Entry edge | 10% | Min model-vs-market divergence to trade |
| Exit threshold | 45% | Sell when position price reaches this |
| Max position size | $5.00 USDC | Per market |
| Max trades per run | 4 | Rate limiting |
| Max slippage | 15% | Skip if slippage exceeds |
| Min liquidity | $0 | Disabled by default |
| Beta factor | 1.3 | ETH/BTC beta multiplier |
| Lag window | 6h | Hours to look back for BTC shifts |
clawhub install kalshi-eth-btc-beta-trader
Requires: SIMMER_API_KEY and SOLANA_PRIVATE_KEY environment variables.
Cron is set to null -- the skill does not run on a schedule until you configure it in the Simmer UI.
The skill defaults to dry-run mode. Real trades only execute when --live is passed explicitly.
| Scenario | Mode | Financial risk |
|---|---|---|
python trader.py | Dry run | None |
| Cron / automaton | Dry run | None |
python trader.py --live | Live (Kalshi via DFlow) | Real USDC |
The automaton cron is set to null -- it does not run on a schedule until you configure it in the Simmer UI. autostart: false means it won't start automatically on install.
| Variable | Required | Notes |
|---|---|---|
SIMMER_API_KEY | Yes | Trading authority. Treat as a high-value credential. |
SOLANA_PRIVATE_KEY | Yes | Base58-encoded Solana private key for live trading. |
All risk parameters are declared in clawhub.json as tunables and adjustable from the Simmer UI without code changes.
| Variable | Default | Purpose |
|---|---|---|
SIMMER_ETH_BTCBETA_ENTRY_EDGE | 0.10 | Min divergence to trigger trade |
SIMMER_ETH_BTCBETA_EXIT_THRESHOLD | 0.45 | Sell position when price reaches this level |
SIMMER_ETH_BTCBETA_MAX_POSITION_USD | 5.00 | Max USDC per trade |
SIMMER_ETH_BTCBETA_MAX_TRADES_PER_RUN | 4 | Max trades per execution cycle |
SIMMER_ETH_BTCBETA_SLIPPAGE_MAX | 0.15 | Max slippage before skipping (15%) |
SIMMER_ETH_BTCBETA_MIN_LIQUIDITY | 0 | Min market liquidity USD (0 = disabled) |
SIMMER_ETH_BTCBETA_BETA | 1.3 | ETH/BTC beta multiplier |
SIMMER_ETH_BTCBETA_LAG_HOURS | 6.0 | Hours to look back for BTC shifts |
simmer-sdk is published on PyPI by Simmer Markets.
Review the source before providing live credentials if you require full auditability.