Backtesting

Get News Events

Query the archived market-moving news tape, with market-response labels.

The backtestable form of /api/v1/news/market-moving: every qualified catalyst with its impact_score, signed bias, corroboration, and the MEASURED move that followed — ret_15m / ret_1h / ret_4h, vol_mult (vs that coin's own 30-day baseline), oi_change_pct, funding_shift and a combined abnormality. That last set is what makes the impact score calibratable rather than merely asserted.

Two constraints worth stating plainly:

  • Only qualified events are archived. Stories that failed the noise gate or scored below the impact threshold were discarded at ingest and no row exists for them. Do not treat this as "all news".
  • History starts when this shipped and CANNOT be backfilled. RSS serves a recent window only, so no earlier tape will ever exist — the same constraint as /regimes/history.

Response columns are NULL for windows that have not matured yet, which means "not yet measured", not "no reaction". Pro Plus.

get/api/v1/backtesting/news-events

Request

  • Base URL: https://cryptodataapi.com
  • URL: https://cryptodataapi.com/api/v1/backtesting/news-events
  • Auth: API key in header X-API-Key

Query parameters

symbolstring

Filter by HL perp symbol (e.g. SOL, kPEPE) or MARKET; omit for all

startstring required

Start time (ISO 8601 or unix ms)

endstring

End time (ISO 8601 or unix ms, defaults to now). EXCLUSIVE — the range is [start, end), so consecutive windows do not repeat a boundary row.

min_impactnumber

Minimum impact_score

boundsstring

Interval convention for start/end. half-open (default) is [start, end) — end is EXCLUSIVE, so consecutive windows tile without repeating a boundary row. closed is [start, end] — end INCLUSIVE, the pre-2026-08-08 behaviour; use it only to keep an existing integration byte-identical.

limitinteger

Response

Successful Response

symbolstring nullable required
countinteger required

Changes

No recorded changes to this operation across all 1 revision of this API.