SUPPORT
Troubleshooting
Common issues and fixes for the Predict & Profit weather bot and inflation bot.
Try This First
Try This Before Anything Else
Paste your full error message into Claude (claude.ai) or Gemini (gemini.google.com). Describe what you were trying to do. AI assistants are excellent at debugging Python errors and can solve most setup issues in under a minute. Still stuck? Read on.
Issue 1. Received a non-JSON response from /portfolio/orders+
Cause
Kalshi's API had a brief service blip. It returned an HTML error page instead of JSON. This is a Kalshi server issue, not a bug in the bot.
Fix
Wait 5-10 minutes and try again. The issue resolves on its own. Also verify your BASE URL is exactly: https://api.elections.kalshi.com/trade-api/v2 The old demo.kalshi.com URL returns the same error.
Issue 2. raw candidates = 0 for a long time, is that normal?+
Cause
Yes. The bot applies strict filters before placing any trade. When no weather or inflation contract meets all thresholds simultaneously, it scans and finds nothing. This is the filter doing its job.
Fix
Wait for a GFS forecast update. GFS runs 4 times per day at 00Z, 06Z, 12Z, and 18Z UTC (8pm, 2am, 8am, 2pm Eastern). The bot finds the most candidates 30-60 minutes after each update. To see more activity for testing purposes only, run with looser filters: --min-price 0.15 --min-score 0.30
Issue 3. Most of my bets lose / wins are only $1-$5+
Cause
The original v1.0 default settings (min-price 0.05) were buying cheap longshots that rarely win. A 5-cent contract needs to win 1 in 10 times just to break even.
Fix
Upgrade to v2.0 (free for existing buyers). Then use these settings: python auto_trader.py --live \ --min-price 0.40 --min-score 0.70 \ --min-confidence 0.55 --min-agreement 3 \ --max-contracts 5 --max-per-city 1 The bot will trade less often but win more consistently.
Issue 4. BEA API key says 'This UserId is not active'+
Cause
The BEA API requires email activation after registration. The key does not work until you click the activation link.
Fix
Check your email (including spam) for a message from BEA with an activation link. If you cannot find it, re-register at https://apps.bea.gov/API/signup/ and check again. The key activates immediately after clicking the link.
Issue 5. Open trade limit reached, bot is not taking new trades+
Cause
The bot has reached its maximum number of simultaneous open positions (default 10). It pauses until a position settles or closes.
Fix
Wait for existing positions to settle. Or increase the limit: --max-open-trades 20 Make sure you also increase --total-budget proportionally to give the bot enough capital to take new positions.
Issue 6. Do I need money in my Kalshi account for dry-run mode?+
Cause
No. Dry-run mode connects to the Kalshi API to read market data but never places an order.
Fix
You can run --dry-run with a zero balance account. The bot will scan markets, score candidates, and log what it would have done without spending anything. Run dry-run for at least 1-2 weeks before going live.
Issue 7. Can I run both bots at the same time?+
Cause
Yes, they are completely independent processes with separate databases.
Fix
Run each bot in its own terminal or background process. They do not share state or interfere with each other. Both read from the same Kalshi account.
Issue 8. Bot is running but I have not seen any trades for days+
Cause
Strict filters plus low-edge market conditions. The bot is designed to wait for high-conviction setups.
Fix
Check the logs for REJECTED lines to see why candidates are being filtered out. Common reasons: price_too_low, agreement_too_low, ensemble_too_uncertain. These rejection reasons are the bot working correctly. Alternatively, the market may be efficiently priced right now with no genuine edge available.
Issue 9. Permission error or path not found error on Windows+
Cause
Windows has a 260-character path limit that Python scripts can hit when installed in deep folder structures.
Fix
Install to a short path like C:\projects\predict-and-profit\ If you still get path errors, enable Windows long paths: open Registry Editor, navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem and set LongPathsEnabled to 1. Alternatively, use WSL2 (Windows Subsystem for Linux) which avoids path issues entirely.
Issue 10. REGIME CHANGE DETECTED warnings in the log+
Cause
The regime change detector found that your current model view contradicts an existing open position. For example, the model now predicts CPI at 3.58% but you hold a NO position on CPI above 3.2% (implying you thought CPI would be below 3.2%).
Fix
This is a warning, not an error. The bot continues running. Review the flagged positions and decide whether to close them manually in the Kalshi app. The bot will not auto-close positions unless you enable --auto-close-contradictions.
Issue 11. STRIKE_CONSISTENCY REJECTED in the log+
Cause
The bot tried to place a trade but it would have created a logically contradictory position. For example, you already hold CPI above 3.5% NO (predicting CPI < 3.5%) and the bot tried to add CPI above 3.2% YES (predicting CPI > 3.2%). These cannot both be correct simultaneously.
Fix
This is the safety net working correctly. The bot rejected the contradictory trade to protect you. No action needed. If you believe the new trade is correct, manually close the existing contradictory position in the Kalshi app first.
Issue 12. ImportError or ModuleNotFoundError on startup+
Cause
A required Python package is missing from your environment.
Fix
Make sure you activated your virtual environment before running the bot: source .venv/bin/activate (Linux/Mac) .venv\Scripts\activate (Windows) Then reinstall dependencies: pip install -r requirements.txt If the error mentions scipy, run: pip install scipy If problems persist, delete the .venv folder and recreate it from scratch.
Still stuck?
Email support@predictandprofit.io with your full error message. I personally read every email and respond within 48 hours. Before emailing, paste your error into Claude (claude.ai) or Gemini (gemini.google.com) first.