Events and past reactions
Story events with a type, how fresh they are, and what the price did after earlier stories of the same type.
Every cluster of near-identical headlines becomes one story event. Each event has a type, a freshness label and, once the price
bars exist, the price reactions measured so far. Reading events needs news:read; /v1/events/stats needs sentiment:read.
Everything here is a historical measurement, not financial advice. Past reactions do not predict future ones.
List events
curl -s -H "X-API-Key: $KEY" \
"https://news.trademcp.dev/v1/events?symbols=BTC&event_type=etf_flows&limit=5"| Parameter | Meaning |
|---|---|
symbols | Repeatable |
event_type | Repeatable: hack_exploit, listing, delisting, etf_flows, etf_regulatory, regulatory_action, regulation_policy, central_bank_decision, central_bank_speech, macro_data, supply_unlock, institutional_adoption, exchange_outage_insolvency, geopolitical_shock, market_structure, other |
freshness | fresh, priced_in (the price had already moved the same way), stale (we saw it over 6 hours after publication), rehash (an older story again) |
min_impact | 0 to 1 |
since, until | Default: last 7 days; at most 366 days apart |
limit, cursor | Up to 100; pass back next_cursor |
high_impact is accepted but is not set yet: filtering on it returns nothing until we calibrate it on live data.
Reactions
Each listed event has reaction: the percent returns (ret_15m_pct, ret_1h_pct, ret_4h_pct, ret_24h_pct) of its main tradable symbol after the story first
appeared, and ret_1h_z, the 1-hour return in units of that asset's hourly volatility measured before the event. Horizons that have not elapsed yet are null, and
reaction is null when the event has no priced symbol. past_reactions summarises earlier events of the same type (see below) and spread shows how many outlets
carried the story within 15 and 60 minutes.
GET /v1/events/{id} returns one event with reactions[] for every related symbol. A currency story (for example a US data release) also reaches pairs that contain
that currency (via_leg: true); each reaction adds pre_60m_pct, range_1h_pct and z-scores per horizon.
What happened after similar stories
curl -s -H "X-API-Key: $KEY" \
"https://news.trademcp.dev/v1/events/stats?event_type=etf_flows&symbol=BTC&horizon=1h"Returns n (events used), median move in z units, median absolute z, median return and the share of events followed by a rise. With fewer
than 8 earlier events for the symbol it uses the symbol's asset class (scope: "asset_class"); with too few again it answers 404 not_enough_history.
Small n means the numbers are weak evidence.
Event types come from rules and a language model; exchange listing announcements are typed by their source. Type accuracy has not been measured on live data yet.