Changelog
How DQL changed, set by set.
The language reached its current shape through four change sets. They are kept because a client written against an earlier one needs to know what moved, and because a decision is easier to argue with when you can see when it was taken.
Nothing in a change set was a breaking change to a released client: the platform had no public clients while they were made. From here on, a change that would break one gets its own note here first.
DQL v1 — Change Set 01
Section titled “DQL v1 — Change Set 01”-
- Verdict on the review
-
- C1-01 — Sampled snapshot series
- Motivation
- Amendments
-
- C1-02 — Functions:
abs,rolling_sum,percentile,percentile_rank
- C1-02 — Functions:
-
- C1-03 — Fields:
bid_size,ask_size,tick_size,lot_size,min_qty
- C1-03 — Fields:
-
- C1-04 — Book depth within a price band (replaces the top-25 sums)
-
- C1-05 —
selectclause (projection)
- C1-05 —
-
- C1-06 — Multi-key
order by
- C1-06 — Multi-key
-
- C1-07 — Numeric precision in responses
-
- C1-08 — Small corrections to draft 1
-
- Conformance additions
- 9.1 Fixture additions (§16.1)
- 9.2 Queries and expected results (§16.2, continued)
-
- Guide additions (new cookbook entries)
- 4.16 Mark price up more than half a percent in five minutes, on three venues or more
- 4.17 Spread below its own 24-hour 90th percentile
- 4.18 At least 50 000 quote units resting within 10 bps of mid on the bid side, on any venue
- 4.19 Ask for values you are not filtering on, and order by two keys
- Guide §6 (missing data) — add one line to the table
- Guide §7 (Pine) — add
- Guide §8 (SQL) — add
-
- Rejected and deferred, with reasons
-
- Notes for the data endpoints (outside DQL)
-
- Open questions added to §17
DQL and Market-Data API — Change Set 02 (bot migration readiness)
Section titled “DQL and Market-Data API — Change Set 02 (bot migration readiness)”-
- Verdict on the second review
-
- C2-01 — Timeframes
2m,3m,12h
- C2-01 — Timeframes
-
- C2-02 — Mark-price and index-price candle sources
-
- C2-03 —
percentilemethod argument
- C2-03 —
-
- C2-04 — Instruments contract:
GET /v2/instruments
- C2-04 — Instruments contract:
-
- C2-05 — Latest snapshots contract:
POST /v2/snapshots
- C2-05 — Latest snapshots contract:
-
- C2-06 — Snapshot history contract:
POST /v2/snapshots/history
- C2-06 — Snapshot history contract:
-
- C2-07 — Candles contract:
POST /v2/candles
- C2-07 — Candles contract:
-
- C2-08 — Order books contract:
POST /v2/books
- C2-08 — Order books contract:
-
- C2-09 — Batch limits, numbers, consistency
-
- Migration protocol: source change ≠ indicator change
-
- Rejected and still deferred
-
- Open questions added
-
- Conformance additions (DQL only; endpoint contracts get contract tests, not corpus entries)
DQL and Market-Data API — Change Set 03
Section titled “DQL and Market-Data API — Change Set 03”-
- Verdict on the third review
-
- C3-01 — Liquidity band metrics (supersedes C1-04 and change-set-02 §8 for liquidity)
- 1.1 Definition (ingestion time)
- 1.2 Exposure in the data endpoints
- 1.3 DQL (replaces the C1-04 rules)
- 1.4 Cadence disclosure
-
- C3-02 — Candle volume “as published”;
mark_volume/index_volumesources
- C3-02 — Candle volume “as published”;
-
- C3-03 — Corrections to change-set-02 text
- 3.1 Hydration (replaces the last paragraph of change set 02 §6)
- 3.2 Cycle alignment (replaces the
2mrow of change set 02 §0 and the sentence in §1) - 3.3 Settled replay (replaces the
settledrule of change set 02 §6) -
- C3-04 —
include_rawonGET /v2/instruments; rules normalisation
- C3-04 —
-
- C3-05 — Migration protocol additions (change set 02 §10)
-
- Open questions added
-
- Conformance updates
DQL and Market-Data API — Change Set 04 (platform decisions)
Section titled “DQL and Market-Data API — Change Set 04 (platform decisions)”-
- C4-01 — An instrument is a market;
instrumentandbasefields
- C4-01 — An instrument is a market;
-
- C4-02 —
where: selection is part of the language
- C4-02 —
- 2.1 Grammar
- 2.2 Semantics
- 2.3 Every endpoint selects with
where -
- C4-03 — Venue codes come from the registry:
GET /v2/venues
- C4-03 — Venue codes come from the registry:
-
- C4-04 — Units are requested, and every value states its own
-
- C4-05 — Alerts leave the API
-
- C4-06 — The platform as it is (facts replacing assumptions)
-
- C4-07 — Endpoint set of v2
- 7a. C4-08 —
GET /v2/stream(decision 2026-09-22) -
- Open questions — status
-
- Conformance additions
The full text of each set is in the repository under docs/engineering/api/history/. The specification
has absorbed all of them: where the two disagree, the specification is right and the change set is
history.