AI trading data provenance is the record that connects each input and derived claim to its original source, exact instrument, observation time and processing version. Preserve the captured data, then link every cleaning, aggregation and calculation step to its inputs. A citation alone cannot show which snapshot the analysis used or whether a transformation changed its meaning. Provenance makes those changes inspectable; it does not prove the source was correct.
An AI report might correctly cite an exchange yet use the wrong candle from that exchange. It might calculate a valid percentage from a partial period, or summarize a repaired dataset as though the repair had existed at the original decision time. The final paragraph hides both mistakes unless the path from evidence to answer survives.
Treat an input as a particular object
“Binance data” identifies an origin too broadly to reproduce an analysis. A useful record names the venue, instrument type, exact symbol, endpoint or stream, request parameters, returned fields and captured payload. A price also needs its meaning: last trade, candle close, mark price or another defined observation.
The W3C PROV primer models provenance through entities, activities and responsible agents, including derivation and revision relationships. Applied here, a saved response is an entity, normalization is an activity, and the resulting feature table is another entity. That is a useful organizing model; a trading worksheet does not need to implement the full standard to record those relationships.
Give each object a stable local identity. “latest.json” is a location that can be overwritten. A capture ID plus a content hash identifies the saved version more precisely. Retain the actual bytes under an appropriate retention policy: a hash with no recoverable object cannot reconstruct the input.
Keep private credentials out of the record. Save the endpoint and nonsecret request parameters, not authorization headers or API secrets. If account information is required for a separate audit, use access-controlled records and explicit retention rules.
Build a ledger with parents, not just timestamps
Use this worksheet for one material derived claim. Each output points to the exact objects it consumed; recording a pipeline name without those parent references leaves a gap.
| Stage | Minimum record | Question it resolves |
|---|---|---|
| Capture | Capture ID, venue, instrument, endpoint or stream, parameters, original payload and hash | Which observation actually entered the system? |
| Timing | Source event time, candle boundaries if relevant, receive time and decision cutoff, with units | What was observed, and when was it available locally? |
| Normalize | Output ID, parent capture IDs, parser version, symbol mapping, timezone and unit conversions | How did raw fields become standardized values? |
| Derive | Feature ID, parent normalized IDs, formula, lookback, missing-data rule and calculation version | Which exact values produced this number? |
| Explain | Analysis ID, feature IDs supplied, saved input bundle and output | Which evidence could the AI actually use? |
A feature requiring twenty observations needs a reference to that complete input set, not only its most recent candle. A resampled hourly bar needs the contributing lower-timeframe records and aggregation rule. A join needs both parents and its matching rule; otherwise a correct price can acquire another instrument's volume.
Timestamp labels need the same care. Binance's Spot kline stream schema separately describes event time, symbol, interval, candle start and close times, close price and the x closed-candle flag. Preserve those distinctions during normalization. Renaming several fields to “time” loses information even when the original response was accurate.
The market-data freshness guide covers age and readiness checks. Provenance records which objects those checks evaluated and which policy version produced their result.
Reconstruct a partial-candle substitution
The following prices, timestamps and identifiers are fictional Binance-shaped BTCUSDT spot fixtures, not captured market data. A hypothetical analysis compares the latest completed hourly close with its predecessor. Its decision cutoff is 12:00:00.500 UTC, and all three records have arrived by then.
| Capture ID | Candle window UTC | Close in USDT | Closed state | Local arrival UTC |
|---|---|---|---|---|
| S0 | 10:00–10:59:59.999 | 50,000 | True | 11:00:00.100 |
| S1 | 11:00–11:59:59.999 | 51,000 | True | 12:00:00.150 |
| S2 | 12:00–12:59:59.999 | 52,000 | False | 12:00:00.300 |
The end boundary of S2 describes its scheduled window; it does not mean that window has finished. Its provisional close is merely the fixture's current value.
Suppose normalization version N1 drops the closed-state field. A baseline selector retains S0 from the requested previous hour, but a separate “latest row” selector chooses S2 because its start time is newest. The feature record F1 computes (52,000 / 50,000 − 1) × 100 = 4%. The AI accurately repeats “the latest completed hourly close rose 4%,” following a mislabeled input.
The lineage trace identifies a specific failure: F1 consumed a value derived from S2, while the stated rule required S1. The intended comparison is (51,000 / 50,000 − 1) × 100 = 2%. Correct arithmetic did not rescue the wrong observation.
Fix the transformation by retaining closure state and selecting verified completed windows under the declared rule. Create normalized version N2 from S0 and S1, then feature F2 from those N2 outputs; retain N1, F1 and the original analysis as incident evidence. Regenerate the affected explanation from F2. Do not silently rewrite the old record to make it appear the first analysis used the corrected input.
This is also why claim-level hallucination checks and provenance complement each other. One asks whether the claim is supported; the other lets a reviewer recover how its supposed support was produced.
Preserve revisions and the time they became available
A historical download is not necessarily an immutable artifact. Binance's public-data repository documents checksum companions for archive ZIP files and says archived files can be updated after issues are discovered, with replaced and replacement checksums recorded. Save the downloaded version and acquisition time instead of assuming the same URL always retrieves the same bytes.
The repository also specifies microsecond timestamps for its Spot archive data from January 1, 2025 onward. That is an archive-specific rule, not permission to treat every exchange API timestamp as microseconds. Record the parser's unit assumption with the source format and version.
A checksum comparison can establish that bytes match a stated checksum; it cannot establish that the observations are economically correct. Likewise, a documented correction may improve a research dataset without describing what a live system knew earlier. Keep the original capture and later revision separately. The look-ahead bias audit explains the separate decision-clock question.
Use the trace at review and execution boundaries
For a disputed claim, start at the saved output and walk backward: supplied feature, formula and input set, normalized records, then raw capture. Stop when a parent is missing, an instrument changes without an explicit mapping, a unit conversion is undocumented or the required capture is unrecoverable. State which conclusion remains unverified.
Data lineage belongs beside, rather than inside, model identity. A fixed dataset can produce different explanations after a model, prompt or tool change; model version pinning records that separate replay dimension. Conversely, pinning a model does not preserve a mutable data response.
If a workflow uses analysis to propose an order, record the evidence bundle that reached its eligibility checks. The risk-check order guide addresses where gates belong before an action. A complete provenance record does not grant execution permission, and it cannot guarantee a fill or a return.
This worksheet describes a general review method, not a claim that KLINEO exposes every field or storage control listed. This AI-assisted article follows the editorial policy; its incident is an original teaching example, and venue documentation supports schema and archive behavior only.
