View as markdown
Endpoints · Signals

List a signal's occurrence events on one ticker

GEThttps://api.tickerbot.io/v2/signals/{signal}/{ticker}/events

Per-bar booleans (`history`) are useful for historical analysis; per-occurrence records are what you want for chart overlays and dashboards. This endpoint returns each *firing* of a signal on a ticker as a single row. For **state**-style signals (`above_sma_50`, `in_uptrend`, `at_52w_high`, …) each row is a true-window: `started_at` is when the condition flipped false→true, `ended_at` is when it flipped back (or null if it's still true). `start_price` and `end_price` carry the price at the open/close of the window. For **event**-style signals (`golden_cross_today`, `gap_up`, `breakout`, …) each row is a point firing: `started_at` is when the event fired and `ended_at` is the same value. `start_price` is the price at that bar. Custom (expression) signals are returned in the state shape — the expression is evaluated per bar and contiguous true runs are collapsed into windows.

Plan access

Included on every plan.

Rate limit

Hobby 600/min · Pro 2,000/min · Scale 10,000/min.

History

All-time on every paid plan.

stringrequired

Built-in flag name or your custom signal name.

stringrequired

Ticker symbol (case-insensitive).

string

Earliest `started_at` (inclusive). ISO timestamp or epoch ms. Defaults to 2 years ago.

string

Latest `started_at` (inclusive). ISO timestamp or epoch ms. Defaults to now.

integerdefault 500

Page size. Max 2000.

string

Opaque pagination cursor from a previous response.

200
{ as_of, ticker, signal, count, next_cursor, events: [...] } newest-first.
404
not_found — no such signal or ticker on this account.
400
bad_request for malformed from/to/limit.