BTC Forecasting & Trading Engine
A confidential engagement for a crypto trading operation. We built the signal brain behind their automated BTC strategy: every cycle it collects dozens of market signals, reduces them to a single directional forecast with a confidence level, writes a plain-English analyst briefing with an LLM, and feeds a decoupled execution layer that sizes or stands down trades accordingly, all running unattended on a VPS.
Problem
Crypto signals are scattered across dozens of sources (price action, derivatives, options, on-chain, macro, sentiment, news), and no human can watch and weigh them all around the clock without bias or fatigue. Discretionary trading on that noise is emotional and inconsistent.
Goal
Turn a sprawl of market data into one disciplined, explainable directional call every hour (with a confidence level and an honest read on disagreement), and use it to drive an automated strategy that sizes up in strong conditions and stands down when signals conflict.
AI solution
A rule-based, fully transparent scoring engine fed by nine independent collectors (~28 signals). Each signal is normalized to a score in minus-one to plus-one with a confidence, weighted (trend and order-flow highest, sentiment and dominance lowest), and reduced to a composite score, a direction (bullish / bearish / neutral), a signal-agreement percentage, and ranked drivers and contradictions. An LLM (gpt-5-mini) then writes a senior-analyst briefing (the call, the story, key tensions, what to watch) grounded strictly in the computed signals. A decoupled forecast contract maps the result to a position multiplier or a hard stand-down gate that the automated execution layer acts on.
Workflow
- 1Every hour, nine collectors pull ~28 signals (technicals, derivatives, options, on-chain, macro, sentiment, news, dominance)
- 2Each signal is normalized to a directional score and a confidence
- 3A weighted engine reduces them to a composite score, direction and agreement percentage
- 4An LLM writes an analyst briefing grounded only in the computed signals
- 5The forecast gates and sizes the automated strategy; every call is logged for backtesting
Model & AI components
- Weighted composite scoring engine (transparent, ML-ready)
- ~28 signals across 9 categories, each with score + confidence
- Voting-only aggregation so zero-info signals do not dilute the call
- LLM analyst briefing (OpenAI gpt-5-mini), grounded in the signals
- Confidence + agreement scoring with ranked drivers and contradictions
- Built-in accuracy / backtesting loop (outcomes tracked per forecast)
Features
- One hourly directional call (bullish / bearish / neutral) with confidence
- ~28 market signals fused across nine categories
- Plain-English LLM analyst briefing every cycle
- Drives automated trading: position sizing plus a fail-safe stand-down gate
- Telegram alerts and machine-readable JSON / SQLite output
- Backtesting loop that scores past forecasts against outcomes
Architecture
A modular Python service: a registry of nine collectors normalizes every source into a uniform signal contract, a weighted engine reduces them to a forecast, an LLM layer adds the briefing, and results persist to SQLite plus a latest-forecast JSON. Collectors degrade gracefully (any source can drop out without breaking the cycle), and the forecast is a decoupled contract, so the automated execution layer consumes it independently, with a stale-forecast guard that fails safe.
Frontend & dashboard
Reporting is headless and operator-first: a colorized terminal breakdown of every signal by category, a formatted Telegram alert each cycle, and machine-readable JSON + SQLite that downstream systems and the backtesting loop consume.
Integrations
- Market data: Binance (spot + futures), Deribit options, CoinGecko
- Macro & on-chain: FRED, mempool.space, blockchain.info
- Sentiment & news: Fear & Greed, CryptoPanic, NewsAPI
- OpenAI (analyst briefings) and Telegram (alerts)
Deployment
Runs unattended on a VPS as a systemd service in loop mode: hourly cycles on a 4-hour forecast horizon, with automatic crash-retry and .env-based secrets. A lean Python process with no heavy infrastructure; a stale-forecast guard makes the downstream trading fail safe if a cycle stalls.
Tech stack
- Core
- Python 3pandasnumpyscikit-learnThreadPoolExecutor
- Signal sources
- Binance spot & futuresDeribit optionsCoinGeckoFREDmempool.spaceFear & GreedCryptoPanic / NewsAPI
- Forecast engine
- Weighted composite scoringConfidence + agreementVoting-only aggregationBacktesting loop
- LLM
- OpenAI SDKgpt-5-miniOpenAI-compatible
- Storage & alerts
- SQLiteJSON exportTelegram Bot API
- Ops
- VPSsystemd (loop mode)cron.env secrets
Results
I used to sit there juggling ten tabs trying to feel out the market. Now I get one clear call every hour with the reasoning laid out, and it just runs on its own. It took the emotion out of it, which is exactly what I needed.
Build something like BTC Forecasting & Trading Engine.
Tell us your workflow and goals. We'll map the highest-leverage AI use case and a clear path to production.