Coding

kalshi-weather-trader

Try it

Trade Kalshi temperature markets with NOAA forecasts via DFlow on Solana.

What it does

A framework for trading Kalshi temperature markets through the Simmer SDK and DFlow's Solana infrastructure. The default signal is NOAA temperature forecasts. Each scan cycle pulls active weather markets, matches NOAA forecasts to price buckets, runs safeguards (flip-flop, slippage, time decay, market status), and places buys or sells against configurable thresholds. All trades are tagged sdk:kalshi-weather for tracking.

When to use it

  • Trade Kalshi temperature markets
  • Automate temperature bets on Kalshi
  • Compare NOAA forecasts against market prices
  • Configure entry/exit thresholds, position size, and cities

The skill document

Kalshi Weather Trader

Trade temperature markets on Kalshi using NOAA forecast data, via DFlow on Solana.

🚨 Framework, not a production trading system. Read DISCLAIMER.md before connecting to a wallet with real funds.

This is a template. The default signal is NOAA temperature forecasts — remix it with other weather APIs, different forecast models, or additional market types (precipitation, wind, etc.). The skill handles all the plumbing (market discovery, NOAA parsing, trade execution, safeguards). Your agent provides the alpha.

Powered by DFlow. Kalshi trades execute via DFlow's Solana-based prediction market infrastructure. KYC verification through Proof is required for buys.

When to Use This Skill

Use this skill when the user wants to:

  • Trade weather markets on Kalshi (not Polymarket)
  • Set up automated temperature trading on Kalshi
  • Check their Kalshi weather trading positions
  • Configure trading thresholds or locations

Setup Flow

When user asks to install or configure this skill:

  1. Install the Simmer SDK

    pip install simmer-sdk
    
  2. Ask for Simmer API key

    • They can get it from simmer.markets/dashboard → SDK tab
    • Store in environment as SIMMER_API_KEY
  3. Ask for Solana private key (required for live trading)

    • This is the base58-encoded secret key for their Solana wallet
    • Store in environment as SOLANA_PRIVATE_KEY
    • The SDK uses this to sign transactions client-side automatically
  4. Verify KYC

    • Required for Kalshi buys (not sells)
    • Complete at dflow.net/proof
    • Check status: curl "https://api.simmer.markets/api/proof/status?wallet=YOUR_SOLANA_ADDRESS"
  5. Fund the wallet

    • SOL on Solana mainnet for transaction fees (~0.01 SOL)
    • USDC on Solana mainnet for trading capital
  6. Ask about settings (or confirm defaults)

    • Entry threshold: When to buy (default 15¢)
    • Exit threshold: When to sell (default 45¢)
    • Max position: Amount per trade (default $2.00)
    • Locations: Which cities to trade (default NYC)
  7. Save settings to environment variables

  8. Set up cron (disabled by default — user must enable scheduling)

Configuration

SettingEnvironment VariableDefaultDescription
Entry thresholdSIMMER_WEATHER_ENTRY_THRESHOLD0.15Buy when price below this
Exit thresholdSIMMER_WEATHER_EXIT_THRESHOLD0.45Sell when price above this
Max positionSIMMER_WEATHER_MAX_POSITION_USD2.00Maximum USD per trade
Max trades/runSIMMER_WEATHER_MAX_TRADES_PER_RUN5Maximum trades per scan cycle
LocationsSIMMER_WEATHER_LOCATIONSNYCComma-separated cities (NYC, Chicago, Seattle, Atlanta, Dallas, Miami)
Binary onlySIMMER_WEATHER_BINARY_ONLYfalseSkip range-bucket events, only trade binary yes/no markets
Smart sizing %SIMMER_WEATHER_SIZING_PCT0.05% of balance per trade
Slippage maxSIMMER_WEATHER_SLIPPAGE_MAX0.15Skip trades with slippage above this (0.15 = 15%)
Min liquiditySIMMER_WEATHER_MIN_LIQUIDITY0Skip markets with liquidity below this USD amount (0 = disabled)

Supported locations: NYC, Chicago, Seattle, Atlanta, Dallas, Miami

Quick Commands

# Check account balance and positions
python scripts/status.py

# Detailed position list
python scripts/status.py --positions

API Reference:

  • Base URL: https://api.simmer.markets
  • Auth: Authorization: Bearer $SIMMER_API_KEY
  • Portfolio: GET /api/sdk/portfolio
  • Positions: GET /api/sdk/positions

Running the Skill

# Dry run (default — shows opportunities, no trades)
python weather_trader.py

# Execute real trades
python weather_trader.py --live

# With smart position sizing (uses portfolio balance)
python weather_trader.py --live --smart-sizing

# Check positions only
python weather_trader.py --positions

# View config
python weather_trader.py --config

# Quiet mode — only output on trades/errors (ideal for high-frequency runs)
python weather_trader.py --live --smart-sizing --quiet

How It Works

Each cycle the script:

  1. Fetches active weather markets from Simmer API
  2. Groups markets by event (each temperature day is one event)
  3. Parses event names to get location and date
  4. Fetches NOAA forecast for that location/date
  5. Finds the temperature bucket that matches the forecast
  6. Safeguards: Checks context for flip-flop warnings, slippage, time decay
  7. Trend Detection: Looks for recent price drops (stronger buy signal)
  8. Entry: If bucket price < threshold and safeguards pass → BUY
  9. Exit: Checks open positions, sells if price > exit threshold
  10. Tagging: All trades tagged with sdk:kalshi-weather for tracking

Safeguards

Before trading, the skill checks:

  • Flip-flop warning: Skips if you've been reversing too much
  • Slippage: Skips if estimated slippage > 15%
  • Time decay: Skips if market resolves in < 2 hours
  • Market status: Skips if market already resolved
  • Kalshi maintenance: Kalshi's clearinghouse has a weekly maintenance window on Thursdays 3:00-5:00 AM ET — orders during this window will fail

Disable with --no-safeguards (not recommended).

Troubleshooting

"Safeguard blocked: Severe flip-flop warning"

  • You've been changing direction too much on this market
  • Wait before trading again

"Slippage too high"

  • Market is illiquid, reduce position size or skip

"No weather markets found"

  • Weather markets may not be active (seasonal)
  • Make sure you've imported Kalshi weather markets first: POST /api/sdk/markets/import/kalshi

"KYC verification required"

  • Complete verification at dflow.net/proof
  • Only required for buys, not sells

"SOLANA_PRIVATE_KEY not set"

  • The SDK signs transactions automatically when this env var is present
  • Fix: export SOLANA_PRIVATE_KEY=

"Insufficient SOL for transaction fees"

  • Fund your Solana wallet with at least 0.05 SOL for gas

"API key invalid"

  • Get new key from simmer.markets/dashboard → SDK tab

Questions people ask

Is this a production trading system?
No. The document explicitly describes it as a framework/template, not a production trading system, and points to a disclaimer before connecting a wallet with real funds.
Which markets and locations are supported?
Kalshi weather markets traded via DFlow on Solana. Defaults cover temperature buckets for NYC, Chicago, Seattle, Atlanta, Dallas, and Miami.
What safeguards run before each trade?
Flip-flop warning, slippage above 15%, time decay under 2 hours, market status, and Kalshi's Thursday 3:00-5:00 AM ET clearinghouse maintenance window.

Related skills

Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.

by johnpatternai21 installs8 stars

Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.

by Iván557 installs18 stars

Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.

by fly0pants4.3k installs296 stars

Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.

by nssa.io1.0k installs47 stars

Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.

by Iván855 installs69 stars

More from simmer

Browse all skills

Trade Polymarket 5-minute BTC fast markets using Binance momentum signals through the Simmer SDK.

by simmer263 installs50 stars

Trade prediction markets through one SDK across Polymarket, Kalshi, and a virtual $SIM practice venue.

by simmer313 installs23 stars

Scan Polymarket temperature markets and trade with NOAA or Open-Meteo forecasts, with dry-run and real-money controls.

by Simmer.Markets217 installs5 stars

Copy top Polymarket whale positions in batch or in real time, with built-in rebalancing and per-trade caps.

by simmer123 installs4 stars

Scan Polymarket markets resolving in minutes, filter for 60/40+ splits, and back the favored side with a capped bet size.

by simmer92 installs

Turn a trading idea into an installable Simmer prediction-market skill

by simmer58 installs