Run it · How it works · Surfaces · Stack · Limits
BTC Seer reads the market the way an oracle reads omens — many signals at once, one call at the end.
BTC Seer is a full-stack system that predicts which way Bitcoin moves next — over the next hour, four hours, day, week, and month — and shows its working instead of hiding it.
It does not promise riches. It ingests a wide slice of the market (price, order-flow, on-chain, macro, sentiment, derivatives, ETF and exchange flows, whale activity), compresses it into a 200+ feature vector, runs that through a four-model machine-learning ensemble plus a 15+ model quant-theory overlay, and emits a directional call with a confidence score and ATR-based target/stop.
Every prediction is stored and scored against what actually happened, so the track record is auditable — not cherry-picked screenshots.
Not financial advice. Predictions are ML-generated and can be wrong. Past accuracy does not guarantee future results.
TFT 40 / XGBoost 25 / LSTM 20 / TimesFM 15) are the starting point, not the final word.
FeatureBuilder assembles everything into a single 200+ dimension feature vector.±50% sentiment modifier and the quant-theory score adjust it; horizon confidence decays from 1h outward.SignalGenerator converts the prediction into an actionable signal — direction, confidence, and ATR-based targets and stops — then serves it to every surface.| Surface | What you get |
|---|---|
| Web app (React) | Dashboard, prediction cards, technical/on-chain/macro panels, accuracy tracker, Elliott Wave, power-law, whales, liquidations, mock trading |
| Telegram bot (aiogram) | /predict, /signal, /news, /accuracy, /advisor, alerts, referrals — a Telegram Mini-App front end |
| REST API (FastAPI) | Programmatic access to predictions, signals, market data, and charts |
The whole stack — Python backend, ML ensemble, and the built React front end — ships as one Docker image.
git clone https://github.com/xidik12/btc-seer.git
cd btc-seer
# 1. Configure — copy the example and fill in what you have
cp .env.example .env
# Minimum useful setup: TELEGRAM_BOT_TOKEN (for the bot).
# Most data collectors run on free public endpoints; API keys are optional.
# DATABASE_URL defaults to local SQLite; Postgres is auto-wired on Railway.
# 2. Bring it up
docker compose up --build
The API and web app come up on http://localhost:8000 (health check at /health). Predictions warm up as the schedulers collect their first data.
cd backend
pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cpu
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000
Build the front end separately with cd webapp && npm ci && npm run build.
Out of the box the ensemble runs in a heuristic mode (XGBoost-heavy, TimesFM zero-shot) so it works before any training. To train the real models and produce weights under backend/app/models/weights/:
cd backend
python ml/train_xgboost.py
python ml/train_lstm.py
python ml/backtest.py # evaluate on historical data
| Layer | Tech |
|---|---|
| API | FastAPI · Uvicorn/Gunicorn · WebSockets |
| ML | PyTorch · pytorch-forecasting (TFT) · XGBoost · scikit-learn · TimesFM · ARCH/GARCH · PyWavelets |
| Data / NLP | pandas · numpy · ta · VADER + Transformers sentiment · ccxt · yfinance · feedparser |
| Storage | SQLAlchemy (async) · SQLite (dev) / PostgreSQL (prod) · Alembic · Redis cache |
| Front end | React 18 · Vite · Tailwind · Recharts · i18n (EN/RU/ZH) |
| Bot | aiogram 3 · Telegram Mini-App + Stars subscriptions |
| Ops | Docker · Railway · Sentry · Prometheus · n8n growth automations |
backend/ FastAPI app — api/ collectors/ features/ models/ signals/ advisor/ bot/ scheduler/
webapp/ React + Vite front end (Telegram Mini-App)
n8n/ Growth-automation workflows
docs/ Marketing playbook
RESEARCH_BTC_MODELS.md Research behind the quant-theory engine
See the repository for license terms.
242 commits
Python
62.5%
JavaScript
37.0%
Run it · How it works · Surfaces · Stack · Limits
BTC Seer reads the market the way an oracle reads omens — many signals at once, one call at the end.
BTC Seer is a full-stack system that predicts which way Bitcoin moves next — over the next hour, four hours, day, week, and month — and shows its working instead of hiding it.
It does not promise riches. It ingests a wide slice of the market (price, order-flow, on-chain, macro, sentiment, derivatives, ETF and exchange flows, whale activity), compresses it into a 200+ feature vector, runs that through a four-model machine-learning ensemble plus a 15+ model quant-theory overlay, and emits a directional call with a confidence score and ATR-based target/stop.
Every prediction is stored and scored against what actually happened, so the track record is auditable — not cherry-picked screenshots.
Not financial advice. Predictions are ML-generated and can be wrong. Past accuracy does not guarantee future results.
TFT 40 / XGBoost 25 / LSTM 20 / TimesFM 15) are the starting point, not the final word.
FeatureBuilder assembles everything into a single 200+ dimension feature vector.±50% sentiment modifier and the quant-theory score adjust it; horizon confidence decays from 1h outward.SignalGenerator converts the prediction into an actionable signal — direction, confidence, and ATR-based targets and stops — then serves it to every surface.| Surface | What you get |
|---|---|
| Web app (React) | Dashboard, prediction cards, technical/on-chain/macro panels, accuracy tracker, Elliott Wave, power-law, whales, liquidations, mock trading |
| Telegram bot (aiogram) | /predict, /signal, /news, /accuracy, /advisor, alerts, referrals — a Telegram Mini-App front end |
| REST API (FastAPI) | Programmatic access to predictions, signals, market data, and charts |
The whole stack — Python backend, ML ensemble, and the built React front end — ships as one Docker image.
git clone https://github.com/xidik12/btc-seer.git
cd btc-seer
# 1. Configure — copy the example and fill in what you have
cp .env.example .env
# Minimum useful setup: TELEGRAM_BOT_TOKEN (for the bot).
# Most data collectors run on free public endpoints; API keys are optional.
# DATABASE_URL defaults to local SQLite; Postgres is auto-wired on Railway.
# 2. Bring it up
docker compose up --build
The API and web app come up on http://localhost:8000 (health check at /health). Predictions warm up as the schedulers collect their first data.
cd backend
pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cpu
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000
Build the front end separately with cd webapp && npm ci && npm run build.
Out of the box the ensemble runs in a heuristic mode (XGBoost-heavy, TimesFM zero-shot) so it works before any training. To train the real models and produce weights under backend/app/models/weights/:
cd backend
python ml/train_xgboost.py
python ml/train_lstm.py
python ml/backtest.py # evaluate on historical data
| Layer | Tech |
|---|---|
| API | FastAPI · Uvicorn/Gunicorn · WebSockets |
| ML | PyTorch · pytorch-forecasting (TFT) · XGBoost · scikit-learn · TimesFM · ARCH/GARCH · PyWavelets |
| Data / NLP | pandas · numpy · ta · VADER + Transformers sentiment · ccxt · yfinance · feedparser |
| Storage | SQLAlchemy (async) · SQLite (dev) / PostgreSQL (prod) · Alembic · Redis cache |
| Front end | React 18 · Vite · Tailwind · Recharts · i18n (EN/RU/ZH) |
| Bot | aiogram 3 · Telegram Mini-App + Stars subscriptions |
| Ops | Docker · Railway · Sentry · Prometheus · n8n growth automations |
backend/ FastAPI app — api/ collectors/ features/ models/ signals/ advisor/ bot/ scheduler/
webapp/ React + Vite front end (Telegram Mini-App)
n8n/ Growth-automation workflows
docs/ Marketing playbook
RESEARCH_BTC_MODELS.md Research behind the quant-theory engine
See the repository for license terms.
242 commits
Python
62.5%
JavaScript
37.0%