A REST + WebSocket API that reports the current volatility state — low, normal, or high — for twenty USDT-quoted pairs on Binance, plus the return distribution that typically follows each transition and the cross-symbol lead-lag between them. Calibrated on real data. The math is documented. No predictions.
We pull 1-minute OHLCV from Binance spot. No re-aggregation tricks, no synthetic bars. What the exchange publishes is what we use.
30-minute rolling realized volatility, annualized. z-score against a 4-hour baseline. The short window measures now; the baseline measures recent normal.
low / normal / high, with
hysteresis. To transition we require several consecutive observations
past the boundary; single spikes don't move the state.
Each symbol is calibrated independently against 180 days of its own 1-minute klines — 2,304 threshold combinations, Pareto-front selection on the (F1, alerts/day) plane. Numbers below are for the balanced preset; full per-symbol F1 breakdown is in the docs.
Median detection lag: ~20 minutes. That is the honest number; we publish it rather than hide it. Regime detection against a smoothed percentile ground truth is genuinely noisy — anyone claiming F1 > 0.9 is labeling with future information.
The regime itself is the raw signal. What you probably want next is how price tends to move after a transition. That endpoint is live:
$ curl "https://api.amaneki.com/v1/regime/btcusdt/impact?to=high&lookback_days=365&timeframe=1m" { "symbol": "btcusdt", "to_regime": "high", "sample_size": N, "horizons": { "1h": { "median": ..., "p25": ..., "p75": ... }, "4h": { "median": ..., "p25": ..., "p75": ... }, "24h": { "median": ..., "p25": ..., "p75": ... } } }
Returns are natural-log. Sample size equals the count of past HIGH transitions inside your lookback window — we backfill from Binance on deploy so this endpoint is populated from day one, and each new transition adds to it. p25/p75 appear once N ≥ 20; p05/p95 once N ≥ 100 (anything lower is statistically noise). Numbers are the live response from our Postgres archive; try your own lookback_days and timeframe.
/v1/regime/lead-lag?leader=btcusdt&follower=ethusdt&to=high —
how often BTC's transitions precede ETH's, and by how long.
$ curl https://api.amaneki.com/v1/regime/btcusdt { "symbol": "btcusdt", "regime": "normal", "z_vol": -1.39, "realized_vol": 0.1788, "baseline_vol": 0.2374, "close": 73923.87, "last_update_ms": 1776236100000, "last_transition": null }
/v1/regime/{symbol}/v1/regime/{symbol}/history/v1/streamAnnual billing: 2 months free on Pro and Pro Plus. All plans include a 14-day trial.