README.md

July 19, 2026 · View on GitHub

┌─ DIVE INTO CRYPTO ─────────────────────────────────────────────┐
│                                                                │
│   Binance USDT-M perpetual-futures scanner.                    │
│   57 indicators · 12 timeframes · whale-divergence filter ·    │
│   one confidence-scored consensus verdict per symbol.          │
│                                                                │
│   No account. No API keys. No sign-up. Public data only.       │
└────────────────────────────────────────────────────────────────┘

License: MIT Last commit Python Kotlin React

Point it at the futures market and it tells you, per symbol, whether the evidence leans long, short, or neutral — and how much to trust that read. Every symbol runs a weighted vote of 57 technical indicators across all 12 timeframes, gets cross-checked against top-trader positioning (whale flow that diverges from price is empirically contrarian), and collapses into a single verdict with a 0–100 confidence and a LOW/MEDIUM/HIGH risk read.

It is not a bot. It places no orders, holds no keys, and reads nothing but public Binance market data. It is an instrument for seeing the market, not trading it for you.

Not financial advice. Not an automated trader. Crypto derivatives are high-risk; every decision is yours. See Disclaimer.


Two editions, one engine

DesktopAndroid
StackPython (FastAPI) + React terminal UIKotlin · Jetpack Compose
DataCrypcodile-fed, highest fidelityBinance USDT-M public REST + WS
Runslocal, terminal-launchedon your device, single APK
Enginefull 57 indicators + 3 overlaysfull 57 indicators + 3 overlays

Both run the same engine. Every indicator is pinned to the shared Python reference by fixture (see Parity); the desktop engine is the reference, the Kotlin engine is its fixture-verified mirror.


The interface — "Depth Terminal"

Not a dashboard. A precision instrument: a blueprint grid, schematic corner-brackets, hairline rulers, tabular numerics, one phosphor accent per theme, and glow only where something is alive. Four themes — Phosphor · Amber · Ice · Paper — switch live.

Scanner — the ranked sweepPanel — one symbol, in depth
ScannerPanel

What the engine actually does

1 · Fifty-seven indicators, one weighted vote. Each indicator returns a five-level signal (STRONG_BUY +2 … STRONG_SELL −2); the consensus is a weighted average with verdict thresholds, a conflict override that forces NEUTRAL on too much disagreement, ADX-driven regime adaptation, and a confidence score. The families:

TREND        ema/sma cross · macd · ichimoku · psar · adx/di · supertrend · vortex ·
             aroon · schaff · trix · kst · coppock · kalman · donchian · keltner · elder-ray
MOMENTUM     roc · awesome · rvi · cmo · tsi · qstick
OSCILLATOR   rsi · stochastic · williams %r · cci · connors-rsi · stoch-rsi · ultimate · fisher · wavetrend
VOLUME       obv · mfi · cmf · vwap · chaikin · klinger · a/d line · force-index · vwma cross
VOLATILITY   bollinger · %b · squeeze · choppiness · atr-filter · atr-percentile · hist-vol · mass · range-expansion
STATISTICAL  z-score reversion · linreg slope+R² · half-life (OU) · rolling sharpe · hurst · balance-of-power

2 · Three futures-native overlays (they never touch the parity-locked vote — they annotate it):

  • Microstructure — a bundle over open interest, funding, taker buy/sell and long/short ratios: OI-price divergence, OI-breakout confirmation, funding z-score fade, taker aggression, L/S crowding fade, and a smart-vs-dumb-money spread.
  • Regime-adaptive weighting — reads ADX + choppiness, routes trend vs. oscillator families.
  • Multi-timeframe confluence — a gate that asks the higher timeframes to agree before it fires.

3 · Whale-divergence filter. On top of the indicators, it watches top-trader long/short positioning and looks for it to trend against price over a window. A symbol whose whale flow contradicts its indicator verdict is eliminated from the ranking and back-filled by the next clean survivor.


Data sources

Public Binance USDT-M Futures endpoints only — no authentication.

DataEndpoint
Candles (OHLCV)fapi/v1/klines
Open interest historyfutures/data/openInterestHist
Top-trader long/shortfutures/data/topLongShort{Account,Position}Ratio
Global long/shortfutures/data/globalLongShortAccountRatio
Taker buy/sellfutures/data/takerlongshortRatio
Funding / mark / indexfapi/v1/premiumIndex, fapi/v1/fundingRate

Binance market data is geo-restricted in some regions — a network condition, not an app bug.


Run the desktop edition

Requires Python 3.12+ and uv. The UI ships prebuilt — no Node needed to run it.

git clone https://github.com/nazmiefearmutcu/dive-into-crypto.git
cd dive-into-crypto/desktop/backend
uv sync
uv run dive-desktop          # serves 127.0.0.1:8780 and opens the terminal UI

Nothing leaves your machine except public Binance requests. Details: desktop/README.md. Android: android/README.md.


Parity

Cross-language parity is enforced per indicator, not per screen, against a BTCUSDT 1h × 300 fixture (signal + score, exact): the original 15-indicator core has its long-standing fixture gate, and the 42 extended indicators have their own (ExtendedIndicatorsFixtureTest) — every Kotlin indicator must reproduce the Python reference bit-for-signal. The three overlays (microstructure · regime · MTF-confluence) are ported with mirrored unit tests. Nothing is synthesised — when a data source is unavailable it is shown as unavailable, never faked.

cd desktop/backend && uv run pytest -q      # engine, parity, parsers  (offline)
uv run pytest -m live -q                     # network-gated, against live Binance

Repository layout

dive-into-crypto/
├─ android/          native Kotlin/Compose edition (Gradle)
├─ desktop/
│  ├─ backend/       Python · FastAPI · the reference engine (57 indicators + overlays)
│  └─ ui/            React "Depth Terminal" — prebuilt bundle + design reference
└─ docs/             specs · screenshots

Disclaimer

Dive Into Crypto is an educational and research tool. It gives no financial advice, executes no trades, and makes no guarantee of accuracy or profitability. Cryptocurrency derivatives are high-risk. Use it at your own risk.

License

MIT © nazmiefearmutcu