Market Archive
What the archive holds, how it is structured, what a date means, the standard every file passes, and how the external sources are handled. It covers the Japanese venues and Binance.
This is a record of what markets did. It is not a recommendation to trade, not investment advice, and not an indication of future results. It is sold for analysis and validation; investment decisions are your own.
What is in the archive
Coverage by market
What each market covers, which datasets it carries, and which days inside its span are missing. Generated from the catalogue, so it cannot disagree with what is actually served. Dates before a market starts or after it ends are outside the span rather than missing from it. GMO and Binance markets carry the order book only: each venue publishes its own trade history, so those are imported with Komachi rather than served here.
Per-day coverage is on the calendar too, before you spend a market-day on a date.
The two datasets
| Trade | ||
|---|---|---|
ts | double | UTC epoch seconds |
side | int | aggressor: 0 buy, 1 sell |
price | double | |
size | double | base currency |
| OrderBook | ||
|---|---|---|
ts | double | UTC epoch seconds |
bid0_price … bidN_price | double | best bid outward |
bid0_qty … bidN_qty | double | |
ask0_price … askN_price | double | best ask outward |
ask0_qty … askN_qty | double | |
Days, and what a day means
A partition is an Asia/Tokyo day. date=2026-01-15 holds
2026-01-15 00:00 to 23:59 JST, which is 2026-01-14 15:00 to 2026-01-15
14:59 UTC. Timestamps inside the file are UTC epoch seconds, so nothing
depends on the reader's timezone.
bronze/dataset=Trade/exchange=COINCHECK/symbol=BTC_SPOT/date=2026-01-15/data.parquet
Hive-partitioned parquet, so DuckDB, PyArrow, Spark and Athena all recover
dataset, exchange, symbol and
date as columns from the path. A market-year is one
read_parquet with a glob.
Quality, stated rather than assumed
Every file passes a check before publication: it must open, match the schema exactly, carry ordered timestamps within a measured tolerance, fall inside its own JST day, and cover at least 23 hours of it. A file that fails is not published.
Two things are reported rather than rejected, because they are the venue rather than the data.
- Sparse trading. In a quiet market a normal day has hundreds of minutes with no trade at all. That is liquidity, not loss.
- Exchange maintenance windows. GMO runs maintenance weekly: on the Saturdays it happens, the order book has a gap of 90 to 180 minutes starting just after 09:00 JST. A closed market produces no book. The other venues have their own maintenance windows, and the data is empty across those too. None of it is missing data; the market was not open.
Every file carries its coverage and its count of minutes with no record, both visible in the calendar before you spend a market-day.
Binance: the market that leads
Price discovery happens on the major offshore venues first, and the Japanese market follows. Putting Binance trades beside a domestic market is what makes lead-lag, arbitrage and book-reaction work possible: it is information a domestic market cannot show on its own, and it is useful to strategies that never trade Binance itself.
Binance L2 depth is sold here, because Binance Vision publishes spot trades and no order book. It carries the same schema, timestamps and partition layout as every other market and is cut onto the JST boundary, so a Binance day and a Japanese day cover the same hours rather than windows nine apart. That alignment is what a lead-lag study needs.
The trade history we do not sell, because Binance publishes it. Fetch it with Komachi into your own environment.
Venues cut the day differently. Binance publishes its trades on 00:00 UTC days; the data here is cut on the Asia/Tokyo midnight. Laid side by side untouched, that is a comparison of windows nine hours apart — Komachi re-cuts what it imports onto the JST boundary, so imported trades cover the same hours as the depth here and sit beside it in the same data lake.
komachi import --market BINANCE:BTC_USDT --start 2026-01-01 --end 2026-01-31
This data is collected from Binance public market-data feeds. It is not an official Binance product and is not supplied or endorsed by Binance. The Tools page has the importer usage.
GMO: trades published by the venue
GMO publishes its own trade history officially. We do not provide it from this site. Komachi imports it into the same layout as everything else. GMO's day rolls over at 06:00 JST; the import re-cuts it onto the JST boundary, so it lines up with every other market in the archive. It lands in the same data lake, in the same layout, as everything else here.
komachi import --market GMO:BTC_JPY --start 2026-01-01 --end 2026-01-31
GMO publishes no book depth, which is why the GMO markets here carry OrderBook only. The Tools page has the usage.