Install
openclaw skills install kalshi-traderAutomated Kalshi prediction market trading bot. Sets up a fully automated trading system that scans markets every 15 minutes, researches opportunities using direct web fetches, places trades based on strict EV IRR and half Kelly criteria, monitors positions, and sends daily Telegram summaries. Use when a user wants to automate Kalshi trading, set up a prediction market bot, configure market scanning, or get daily P&L reports from Kalshi.
openclaw skills install kalshi-traderAutomated prediction market trading on Kalshi. Scans every 15 minutes, researches before every trade, reports daily via Telegram.
pip install cryptography requests --break-system-packages
mkdir -p ~/.kalshi && chmod 700 ~/.kalshi
nano ~/.kalshi/private_key.pem # paste -----BEGIN RSA PRIVATE KEY----- block
chmod 600 ~/.kalshi/private_key.pem
echo "YOUR-API-KEY-ID-HERE" > ~/.kalshi/key_id.txt
chmod 600 ~/.kalshi/key_id.txt
Get your API key at: kalshi.com → Settings → API → Create Key
cp scripts/kalshi_bot.py ~/kalshi_bot.py
chmod 600 ~/kalshi_bot.py
python3 ~/kalshi_bot.py test
15-minute scan (silent unless trade placed or exited):
*/15 * * * *Daily summary (9am your timezone):
0 9 * * * with your timezonepython3 ~/kalshi_bot.py summary and send daily trading report with balance, open positions, recent trades, P&L, and fees paid."Only place a trade if EV IRR ≥ 50% (post-fee):
edge = fair_value - (market_price + entry_fee)
EV IRR = (edge / (market_price + entry_fee)) × (365 / days_to_close)
Minimum: EV IRR ≥ 0.50 (50%)
kelly_fraction = (edge / market_price) × 0.5
max_position = min(kelly_fraction × balance, 0.20 × balance)
contracts = floor(max_position / market_price)
Exit ONLY if current bid ≥ fair value estimate (net of exit fee).
Use web_fetch as primary research tool (no quota limits). Known data sources:
https://gasprices.aaa.com/https://www.whitehouse.gov/presidential-actions/https://home.treasury.gov/resource-center/data-chart-center/interest-rates/https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usdhttps://wttr.in/CityName?format=3https://www.congress.govOnly use web_search for open-ended research where the URL isn't known upfront.
python3 ~/kalshi_bot.py # scan for opportunities
python3 ~/kalshi_bot.py summary # print P&L summary
python3 ~/kalshi_bot.py test # verify API connection
See references/api.md for Kalshi authentication and endpoints.
See references/trade-research.md for finding and evaluating opportunities.