tickerbot.io

range_expansion

Today's true range is more than 2 × ATR(14), on volume. Direction-agnostic.

Facts

definitiontrue_range > 2 * atr_14 AND volume > 1.5 * avg_volume_10d AND volume > 100,000
typeevent (boolean)
firingsticky
cadence1 min · 4 AM–8 PM ET · crypto and FX 24/7
intervals1m 1h 1d
asset classesUS equities, Crypto, FX
universeall tickers
history1d recent only · since 2026; 1h full · since 2003; 1m full · since 2003
typical rolevol-regime tag, screen / active-name filter, risk-management gate

Examples

Screen on it

curl -X POST "https://api.tickerbot.io/v2/scan" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_KEY" \
  -d '{
    "q": "range_expansion"
  }'

Backtest it on a past date

curl -X POST "https://api.tickerbot.io/v2/scan" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_KEY" \
  -d '{
    "q": "range_expansion",
    "asof": "2026-08-08"
  }'

Get an alert when a ticker starts matching

curl -X POST "https://api.tickerbot.io/v2/scan/subscribe" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_KEY" \
  -d '{
    "q": "range_expansion",
    "target_url": "https://example.com/hooks/tickerbot"
  }'

Returns 201 with the created webhook object; deliveries carry the tickers matching the condition at each evaluation.

Its history

curl "https://api.tickerbot.io/v2/series?tickers=NVDA&columns=close,range_expansion" \
  -H "Authorization: Bearer YOUR_KEY"

Its firings

curl -G "https://api.tickerbot.io/v2/events" \
  -d "kind=signal" -d "signal=range_expansion" -d "transition=enter" -d "from=2026-03-31" \
  -H "Authorization: Bearer YOUR_KEY"