First release: hourly or daily Kalshi candlestick history for named Climate
and Weather markets, as flat typed dataset rows.
- One row per returned candle. Each row is one market at one period
(
recordType: "marketCandle") with 41 typed columns and a stable rowKey
built from the market ticker, the period and the period end. Only candles
the source actually returned become rows: no missing period is filled in
and no price is inferred.
- Up to 12 named markets per run, read in the order given, over a UTC
window of at most 48 hours, at a 60-minute or 1440-minute period. Candles
are selected by their end time.
- Weather markets only. A market's series must carry the primary category
Climate and Weather before any candle is requested.
- Provenance on every row. Which detail and candle route answered, the
run's historical cutoff, and the UTC receipt time of the market, event and
candle responses.
- Every outcome is named. A market that produces no rows is recorded in
the run's
ERRORS record with its own class and a safe reason, never as a
dataset row; an empty candle answer is a note, not a failure; and a
malformed input is reported by field name before any request is made.
- Bounded requests. At most 61 requests per run, at least 3 seconds
between request starts, no retries and no redirects followed.