ohlcvault 0.2.0__tar.gz → 0.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/PKG-INFO +7 -6
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/README.md +6 -5
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/pyproject.toml +1 -1
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/.gitignore +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/LICENSE +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/SPEC.md +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/__init__.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/adjust.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/client.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/codes.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/config.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/errors.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/net.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/sql.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/ohlcvault/store.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-calendar.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-idx-monthly.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-latest.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-manifest.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-monthly.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-snapshot.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/schema/example-symbols.json +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/tests/conftest.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/tests/test_adjust.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/tests/test_client.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/tests/test_perf.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/tests/test_store.py +0 -0
- {ohlcvault-0.2.0 → ohlcvault-0.2.1}/tests/test_symbols.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: ohlcvault
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Reproducible, checksummed daily OHLCV data for A-share, HK and US markets — static files, content-addressed snapshots, zero API keys.
|
|
5
5
|
Project-URL: Homepage, https://helpquant.com
|
|
6
6
|
Project-URL: Documentation, https://github.com/helpquant/ohlcvault#readme
|
|
@@ -144,7 +144,7 @@ the caller.
|
|
|
144
144
|
| No silently-corrupted data | Every file verified against the snapshot's `sha256` |
|
|
145
145
|
| No silently-changed history | Sealed months are never rewritten |
|
|
146
146
|
| No unverifiable numbers | Missing adjustment factors raise, instead of returning raw prices |
|
|
147
|
-
| No hidden survivorship bias | Delisted stocks are kept in the universe and in the data |
|
|
147
|
+
| No hidden survivorship bias | Delisted stocks are kept in the universe and in the data (`cn`; see coverage table for `hk`/`us` limits) |
|
|
148
148
|
| Byte-for-byte reproduction | Fixed-point integers, `gzip` with `MTIME=0`, no wall-clock timestamps |
|
|
149
149
|
|
|
150
150
|
**Delisted stocks matter.** If your backtest universe only contains companies that
|
|
@@ -159,12 +159,13 @@ Coverage is declared explicitly in `meta/symbols/{market}.json` under `coverage`
|
|
|
159
159
|
|
|
160
160
|
| Market | Status | Gaps |
|
|
161
161
|
|---|---|---|
|
|
162
|
-
| `cn` | Daily bars + indices
|
|
163
|
-
| `hk` |
|
|
164
|
-
| `us` |
|
|
162
|
+
| `cn` | Daily bars 1990-12→present (A-shares incl. 1,187 delisted) + 461 indices | **No Beijing Stock Exchange** (upstream source doesn't provide it); trade calendar starts 2000-01 (upstream boundary — earlier trading days must be inferred from bar dates); ETF/bond lists included, bars not collected |
|
|
163
|
+
| `hk` | Daily bars 2,806 stocks + HSI index (index history from 2013-08) | **List is current listings only** (survivorship bias, no IPO dates); calendar & index history start 2013-08 (free index source boundary) |
|
|
164
|
+
| `us` | Daily bars 7,513 stocks + SPX index (index history from 2004-01) | **List is current listings only** (survivorship bias, no IPO dates); 5,733 ETFs listed but bars not collected; calendar & index history start 2004-01 (free index source boundary) |
|
|
165
165
|
|
|
166
166
|
`hk` / `us` symbol lists carry **survivorship bias** (the upstream source only returns
|
|
167
|
-
currently-listed securities) and have no IPO dates.
|
|
167
|
+
currently-listed securities) and have no IPO dates. `cn` is unaffected: 1,187 delisted
|
|
168
|
+
stocks are in the list and their full history (e.g. `600001.SH` from 1998) is in the data.
|
|
168
169
|
|
|
169
170
|
An honest data project states its gaps. A dataset that quietly omits them is worse
|
|
170
171
|
than one that is merely incomplete.
|
|
@@ -112,7 +112,7 @@ the caller.
|
|
|
112
112
|
| No silently-corrupted data | Every file verified against the snapshot's `sha256` |
|
|
113
113
|
| No silently-changed history | Sealed months are never rewritten |
|
|
114
114
|
| No unverifiable numbers | Missing adjustment factors raise, instead of returning raw prices |
|
|
115
|
-
| No hidden survivorship bias | Delisted stocks are kept in the universe and in the data |
|
|
115
|
+
| No hidden survivorship bias | Delisted stocks are kept in the universe and in the data (`cn`; see coverage table for `hk`/`us` limits) |
|
|
116
116
|
| Byte-for-byte reproduction | Fixed-point integers, `gzip` with `MTIME=0`, no wall-clock timestamps |
|
|
117
117
|
|
|
118
118
|
**Delisted stocks matter.** If your backtest universe only contains companies that
|
|
@@ -127,12 +127,13 @@ Coverage is declared explicitly in `meta/symbols/{market}.json` under `coverage`
|
|
|
127
127
|
|
|
128
128
|
| Market | Status | Gaps |
|
|
129
129
|
|---|---|---|
|
|
130
|
-
| `cn` | Daily bars + indices
|
|
131
|
-
| `hk` |
|
|
132
|
-
| `us` |
|
|
130
|
+
| `cn` | Daily bars 1990-12→present (A-shares incl. 1,187 delisted) + 461 indices | **No Beijing Stock Exchange** (upstream source doesn't provide it); trade calendar starts 2000-01 (upstream boundary — earlier trading days must be inferred from bar dates); ETF/bond lists included, bars not collected |
|
|
131
|
+
| `hk` | Daily bars 2,806 stocks + HSI index (index history from 2013-08) | **List is current listings only** (survivorship bias, no IPO dates); calendar & index history start 2013-08 (free index source boundary) |
|
|
132
|
+
| `us` | Daily bars 7,513 stocks + SPX index (index history from 2004-01) | **List is current listings only** (survivorship bias, no IPO dates); 5,733 ETFs listed but bars not collected; calendar & index history start 2004-01 (free index source boundary) |
|
|
133
133
|
|
|
134
134
|
`hk` / `us` symbol lists carry **survivorship bias** (the upstream source only returns
|
|
135
|
-
currently-listed securities) and have no IPO dates.
|
|
135
|
+
currently-listed securities) and have no IPO dates. `cn` is unaffected: 1,187 delisted
|
|
136
|
+
stocks are in the list and their full history (e.g. `600001.SH` from 1998) is in the data.
|
|
136
137
|
|
|
137
138
|
An honest data project states its gaps. A dataset that quietly omits them is worse
|
|
138
139
|
than one that is merely incomplete.
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "ohlcvault"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.1"
|
|
8
8
|
description = "Reproducible, checksummed daily OHLCV data for A-share, HK and US markets — static files, content-addressed snapshots, zero API keys."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|