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.
Use this skill when the user wants to:
When user asks to install or configure this skill:
```bash
pip install simmer-sdk
```
SIMMER_API_KEYSOLANA_PRIVATE_KEYcurl "https://api.simmer.markets/api/proof/status?wallet=YOUR_SOLANA_ADDRESS"| Setting | Environment Variable | Default | Description |
|---|---|---|---|
| --------- | --------------------- | --------- | ------------- |
| Entry threshold | SIMMER_WEATHER_ENTRY_THRESHOLD | 0.15 | Buy when price below this |
| Exit threshold | SIMMER_WEATHER_EXIT_THRESHOLD | 0.45 | Sell when price above this |
| Max position | SIMMER_WEATHER_MAX_POSITION_USD | 2.00 | Maximum USD per trade |
| Max trades/run | SIMMER_WEATHER_MAX_TRADES_PER_RUN | 5 | Maximum trades per scan cycle |
| Locations | SIMMER_WEATHER_LOCATIONS | NYC | Comma-separated cities (NYC, Chicago, Seattle, Atlanta, Dallas, Miami) |
| Binary only | SIMMER_WEATHER_BINARY_ONLY | false | Skip range-bucket events, only trade binary yes/no markets |
| Smart sizing % | SIMMER_WEATHER_SIZING_PCT | 0.05 | % of balance per trade |
| Slippage max | SIMMER_WEATHER_SLIPPAGE_MAX | 0.15 | Skip trades with slippage above this (0.15 = 15%) |
| Min liquidity | SIMMER_WEATHER_MIN_LIQUIDITY | 0 | Skip markets with liquidity below this USD amount (0 = disabled) |
Supported locations: NYC, Chicago, Seattle, Atlanta, Dallas, Miami
# Check account balance and positions
python scripts/status.py
# Detailed position list
python scripts/status.py --positions
API Reference:
https://api.simmer.marketsAuthorization: Bearer $SIMMER_API_KEYGET /api/sdk/portfolioGET /api/sdk/positions# 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
Each cycle the script:
sdk:kalshi-weather for trackingBefore trading, the skill checks:
Disable with --no-safeguards (not recommended).
"Safeguard blocked: Severe flip-flop warning"
"Slippage too high"
"No weather markets found"
POST /api/sdk/markets/import/kalshi"KYC verification required"
"SOLANA_PRIVATE_KEY not set"
export SOLANA_PRIVATE_KEY="Insufficient SOL for transaction fees"
"API key invalid"
共 5 个版本