Data sources and history depth
Which free endpoints feed the tool, the Binance / Bybit / MEXC fallback chain, how far history goes back and how spot data fills the pre-futures months.
All data is free and public
No market-data API key is used anywhere. The sources are:
| Data | Primary | Fallback |
|---|---|---|
| Futures candles, trades, order book, funding, open interest, long/short ratios, taker volume, liquidations | Binance USDT-margined futures public REST and WebSocket; bulk history from data.binance.vision | Bybit v5 public API, then MEXC contract public API |
| BTC dominance and total market cap | CoinGecko public /global, polled every five minutes |
skipped when rate-limited |
| Fear and Greed index | alternative.me, daily | skipped |
| Macro calendar | ForexFactory weekly JSON feed | manual entries |
Source priority and fallback
Settings > Data sources > Priority lists binance, bybit, mexc; move them with the arrows. The first healthy source serves each pair. If a source fails for a symbol the next one is used automatically and the widget's source badge shows which. If Binance is blocked in your region everything still works through Bybit or MEXC, with two limits: their free history is shallower, and some derivative series (long/short ratios) only exist on Binance.
Settings > Data source check > Test data sources calls each API from the server and reports status, latency and the error text.
Switches under Data sources: CoinGecko context, Fear & Greed index, Bulk history from data.binance.vision (fast backfill) and Demo mode (synthetic offline data; patterns and signals in demo mode are not real).
History depth
| Timeframe | Stored history |
|---|---|
| 5m, 15m, 1h, 2h, 4h, 1d, 1w, 1M | back to 2018-01-01 |
| 1m | the last 365 days at backfill; pruned to 1m candle retention (days) (default 400) afterwards |
The 1M timeframe is built locally from daily candles.
Backfill order
- Monthly zip files from data.binance.vision for the deep past. This static host usually works even where the Binance API is blocked, whatever source serves the live data.
- For months before the futures contract existed, the same month of Binance spot is used. It is the same price series, so the pattern history and statistics cover the pair's whole life rather than only the futures listing.
- The current and previous month, and anything the bulk host cannot serve, are paged from the REST API of the active source.
- Large timeframes finish first, so analysis starts while 5m and 1m are still loading.
The first backfill of a pair downloads several hundred megabytes of zips and takes 10 to 20 minutes. If the bulk host is unreachable after a few attempts the tool falls back to REST paging, which is slower.
Derivative data
Funding rate, open interest, long/short ratios and taker volume are available from the exchange for about 30 days. The tool stores every poll from the day a pair is added, so these series grow locally over time. Liquidations exist only as a live stream and are aggregated per minute from the moment the pair starts streaming. The Derivatives tab on the pair detail page shows the source, socket health and which ratio kinds the source provides.
Live streams
Candles, trades, depth and liquidations arrive over WebSocket. If a socket is silent for 20 seconds the last two 1-minute candles are refreshed over REST and the widget shows polling. Stored candles are compared with live prices continuously; a divergence triggers an automatic repair of recent candles and an amber chip on the chart.
Where data lives
Two SQLite files in the data directory: sentinel.db holds candles, patterns, outcomes, signals, alerts, crash events and trades; portal.db holds accounts, subscriptions and the knowledge base. Trained models are pickled under data/models/. In the hosted service market data is shared by all users; only your watchlist, positions, accounts and alert preferences are yours.
Note: exchanges occasionally revise or delist symbols. A pair that stops receiving data shows no live data; see Troubleshooting.