← Taiwan Stock Snapshot Database
Home / Indicator library / Point-in-time snapshot time machine
Point-in-time · the time machine

Point-in-time snapshot time machine

Ask what a Taiwan listed company's valuation ratios were on a past date and get back the version that was on the record that morning — not today's restated figure applied backwards. Every trading day since mid-2024 is frozen once and never rewritten, which is what makes a backtest on this data free of look-ahead bias rather than merely claimed to be.

See it

The same ticker, seven different as-of dates, each answered with the version that existed on that day. Several of the requested dates were not publication days, and the table names the vintage actually served rather than quietly handing back the nearest number. This runs server-side with no key, no signup and no quota.

Ticker 2330 · seven historical viewpoints GET /v1/valuation/vintage?stock_id=2330&as_of=YYYY-MM-DD
Daily vintages stored
507
First vintage
2024-07-01
Latest vintage
2026-07-31
P/E across the ladder
20.07 – 31.66
As-of requestedVintage servedP/EP/BDividend yieldPublication lag
2024-07-012024-07-0129.306.901.34%same day
2024-12-252024-12-2527.137.051.20%same day
2025-05-012025-04-30 (rolled back — nothing was published on the date requested)20.075.491.87%same day
2025-10-102025-10-09 (rolled back — nothing was published on the date requested)25.588.151.18%same day
2026-01-022026-01-0225.908.221.07%same day
2026-05-312026-05-29 (rolled back — nothing was published on the date requested)31.6610.370.93%same day
2026-07-192026-07-17 (rolled back — nothing was published on the date requested)30.7910.080.96%same day
Ticker 2330 · 507 daily vintages on file from 2024-07-01 to 2026-07-31 · 4 of 7 requested dates rolled back to an earlier vintage because nothing was published that day · source: Taiwan Stock Exchange / Taipei Exchange (GODL v1) · historical statistics, not a signal.
What we publish is data and tooling — not investment advice, not stock picks, and no promise of returns. Every figure is either an official public source reproduced as published, or a derivation we document well enough for you to recompute it. What you trade on it is your call. A point-in-time record removes look-ahead bias from the inputs. It says nothing about whether a strategy built on them works.

How it is built

Four mechanics, and the fourth is the one that separates a real point-in-time store from a reconstruction.

01

Every trading day is frozen, once

At the close of each trading day the official valuation panel for the whole market is written to storage under that day's date and never rewritten. The row carries two dates: the day the underlying figure belongs to, and the day this site could actually see it. Nothing that arrives later is allowed back into an earlier file.

02

An as-of query walks backwards, never forwards

Asking for a date returns the latest frozen version at or before it. Ask for a Saturday and you get Friday's file, because Friday's is the last thing that existed. This is the whole mechanism, and it is why a query can never return a number that was published after the date you asked about.

03

Revisions are kept as extra rows, not as overwrites

When an official figure is restated the earlier version stays exactly where it was and the new one is appended under the day it appeared. A series therefore holds the full revision history of a number rather than only its current value, which is what makes an audit of a past backtest possible at all.

04

The lag is disclosed rather than smoothed away

The gap between the date a figure belongs to and the date it became visible is carried on every row and shown in the table below. Most days the gap is zero, some are one day, and a few are longer. Publishing the gap is the point: a backtest that assumes zero lag everywhere is already wrong before it starts, and it cannot know that unless the lag is in the data.

Terms

Four words carry this page:

Point-in-timePIT
In short: a record of what the database looked like on a given day, kept as a photograph rather than a living document. Take a picture on 1 March and it stays a picture of 1 March no matter how the numbers are restated afterwards.
Look-ahead biasthe reason this page exists
In short: a backtest using information that was not knowable at the time it claims to trade. It is the quiet killer of research results because it never throws an error — the equity curve just comes out better than the strategy deserved.
Vintage seriesone number, all its versions
In short: every version a figure has ever had, each stamped with the day it appeared. Financial statements get restated; a vintage series lets you recover what the filing actually said at the time instead of what it says now.
As-of datethe day you are pretending it is
In short: the viewpoint of the query. Set it to 2025-05-01 and the answer is restricted to what was on the record that morning, which is the only fair input to a decision dated 2025-05-01.

Where the line is

A point-in-time store removes one specific error: using information that did not exist yet. It does not make a backtest correct. Survivorship, transaction costs, borrow availability and the assumption that your order would have filled at the printed price are all still yours to handle, and none of them are visible in a valuation panel. What this data supports is a narrower and more useful claim — that the inputs were knowable on the dates they were used.

The record also starts when it starts. Vintages exist from mid-2024 onward because that is when the freezing began, and no honest process can manufacture a snapshot of a day nobody photographed. Anything reaching further back is a reconstruction from currently available figures, which is exactly the thing this page exists to avoid. The first vintage date is printed above rather than buried, so the boundary of the claim is visible before you rely on it.

FAQ

How is this different from just pulling historical prices?

A historical price series is a record of what the price was, and it is usually right because prices are not restated. Valuation ratios are a different matter: they are built on earnings, book value and dividends, all of which get revised, and a conventional source silently applies today's revised figure to every past date. That is what produces a price-to-earnings history nobody could have computed at the time. This page returns the ratio as it stood on the day, revisions and all.

Why does asking for one date return a different date?

Because an as-of query returns the latest version at or before the date you asked for, and the market does not publish on weekends, holidays or any day the source did not update. The demo ladder below deliberately includes such dates so the behaviour is visible rather than asserted. The row shows both the date requested and the vintage actually served, which is the honest way to answer a question the data cannot answer exactly.

What does the free tier actually give me?

The demo ladder on this page runs in full with no signup and no API key, and it is the same code path the paid endpoint uses. What a paid tier adds is reach, not different numbers: an arbitrary as-of date against any ticker in the universe, called programmatically. The indie tier covers a rolling ninety-day window, and the quant tier covers the full history.

How far back does the snapshot history go?

The frozen valuation panel starts in mid-2024 and adds a vintage every trading day since, which is a genuine point-in-time record rather than a reconstruction. Nobody can retroactively create a snapshot they did not take, and this site does not claim to have taken one before it started. The coverage endpoint reports the first and last vintage dates, and this page prints the count.

Can I audit a backtest with this?

That is the intended use. Take the dates on which your strategy claims to have acted, query each one as of that date, and compare the answer with the input your backtest actually used. Any gap between the two is look-ahead your results were carrying. This is also why the revision history is kept rather than collapsed: without the earlier versions, the comparison has nothing to run against.

Run it yourself

The free tier needs no signup — call this feature's API straight away with the demo key. Unlock as-of history and full ticker coverage on a paid tier.