Download data
How to get simulation IDs and download output data.
All simulation data is downloaded via get_sim_data(sim_id). To use it you first need a sim_id — where you get one depends on your tier.
Getting simulation IDs
Free tier — cached simulations
Use list_cached() to browse pre-run simulations and pick a sim_id. See Simulations for the full list of available cached data and filtering options.
Pro tier — running a simulation
run() returns queued_sim_ids immediately on submission. You can also retrieve sim_ids from a completed job via get_job_results(). See Simulations for the full submission and job tracking API.
Downloading data
Once you have a sim_id, use get_sim_data() to download any of the output files as a Polars DataFrame.
Single simulation
# Full simulation output (default file)
df = client.simulation.get_sim_data(sim_id)
print(df.shape)
print(df.head())
# Mid-price resampled to 1-minute bars
mid_df = client.simulation.get_sim_data(sim_id, "mid_price_by_min.parquet")Bulk download
Download multiple simulations at once as a ZIP using get_bulk_data().
cached = client.simulation.list_cached(symbol="700.HK")
sim_ids = [s["example_sim_id"] for s in cached["simulations"]]
zip_bytes = client.simulation.get_bulk_data(
sim_ids=sim_ids,
include_sim_data=True,
include_mid_price=True
)
with open("simulation_data.zip", "wb") as f:
f.write(zip_bytes)
# Or load directly without saving
import zipfile, io, polars as pl
with zipfile.ZipFile(io.BytesIO(zip_bytes)) as zf:
for name in zf.namelist():
if name.endswith(".parquet"):
df = pl.read_parquet(io.BytesIO(zf.read(name)))
print(f"{name}: {df.shape}")Output files
| File | Description |
|---|---|
| sim_data.parquet | Full simulation output (order book + orders at tick resolution) |
| mid_price_by_min.parquet | Mid-price resampled to 1-minute bars |
| exec_schedule.parquet | Execution schedule with order times and quantities (if algo present) |
| schedule_by_min.parquet | Algo orders aggregated to 1-minute buckets (if algo present) |
| exec_results.parquet | Market slippage, risk and impact metrics (if algo present) |
| params.json | Simulation configuration and parameters |
| results.json | Summary metrics from the simulation |
mid_price_by_min.parquet
| Column | Type | Description |
|---|---|---|
| time | datetime | Minute timestamp |
| mid_price | float | Mid-price at end of minute |
mid_df = client.simulation.get_sim_data(sim_id, "mid_price_by_min.parquet")
import matplotlib.pyplot as plt
plt.plot(mid_df["time"], mid_df["mid_price"])
plt.title("Simulated Price Path")
plt.show()Execution files
Execution files are only present when the simulation was submitted with an exec_algos parameter (Pro tier only).
files = client.simulation.list_sim_files(sim_id)
if files["has_exec_schedule"]:
exec_df = client.simulation.get_sim_data(sim_id, "exec_schedule.parquet")Available symbols (Pro tier)
Pro tier users can run simulations across the top 50 most actively traded HKEX equities. Use client.data.get_available_symbols() to retrieve valid symbols and calibration dates programmatically.
| Name | Ticker | Industry |
|---|---|---|
| MEITUAN-W | 3690.HK | Consumer Internet / Food Delivery |
| TENCENT | 700.HK | Technology / Gaming / Social Media |
| BABA-SW | 9988.HK | E-commerce / Cloud / Technology |
| LAOPU GOLD | 6181.HK | Jewelry / Luxury Retail |
| XIAOMI-W | 1810.HK | Consumer Electronics / Technology |
| JD-SW | 9618.HK | E-commerce / Technology |
| KUAISHOU-W | 1024.HK | Social Media / Short Video |
| BIDU-SW | 9888.HK | Internet / AI / Technology |
| SHENZHOU INTL | 2313.HK | Apparel Manufacturing |
| LI AUTO-W | 2015.HK | Electric Vehicles / Automotive |
| CHINA MOBILE | 941.HK | Telecommunications |
| NTES-S | 9999.HK | Internet / Gaming / Entertainment |
| PING AN | 2318.HK | Insurance / Financial Services |
| CNOOC | 883.HK | Oil & Gas / Energy |
| SUNNY OPTICAL | 2382.HK | Optical Components / Technology |
| BILIBILI-W | 9626.HK | Online Entertainment / Video |
| PETROCHINA | 857.HK | Oil & Gas / Energy |
| ANTA SPORTS | 2020.HK | Sportswear / Consumer Goods |
| CHINA SHENHUA | 1088.HK | Coal / Energy |
| HKEX | 388.HK | Financial Services / Stock Exchange |
| CCB | 939.HK | Banking / Financial Services |
| BYD ELECTRONIC | 285.HK | Electronics Manufacturing |
| AIA | 1299.HK | Insurance / Financial Services |
| CHINAHONGQIAO | 1378.HK | Aluminum / Materials |
| TRIP.COM-S | 9961.HK | Travel / Online Services |
| CHINA RES GAS | 1193.HK | Gas Utilities / Energy |
| ICBC | 1398.HK | Banking / Financial Services |
| LI NING | 2331.HK | Sportswear / Consumer Goods |
| ZIJIN MINING | 2899.HK | Mining / Materials |
| XPENG-W | 9868.HK | Electric Vehicles / Automotive |
| HAIDILAO | 6862.HK | Restaurants / Food & Beverage |
| BRILLIANCE CHI | 1114.HK | Automotive |
| CM BANK | 3968.HK | Banking / Financial Services |
| SENSETIME-W | 20.HK | Artificial Intelligence / Technology |
| HSBC HOLDINGS | 5.HK | Banking / Financial Services |
| CHINA UNICOM | 762.HK | Telecommunications |
| SMIC | 981.HK | Semiconductors / Technology |
| LENOVO GROUP | 992.HK | Consumer Electronics / Technology |
| SINOPEC CORP | 386.HK | Oil & Gas / Chemicals / Energy |
| JD HEALTH | 6618.HK | Healthcare / Digital Health |
| BUD APAC | 1876.HK | Beverages / Consumer Goods |
| WUXI BIO | 2269.HK | Biotechnology / Healthcare |
| COSCO SHIP HOLD | 1919.HK | Shipping / Transportation |
| NONGFU SPRING | 9633.HK | Beverages / Consumer Goods |
| CPIC | 2601.HK | Insurance / Financial Services |
| MENGNIU DAIRY | 2319.HK | Dairy / Consumer Goods |
| GANFENGLITHIUM | 1772.HK | Lithium Mining / Materials |
| CHINA OVERSEAS | 688.HK | Real Estate / Property |
| ENN ENERGY | 2688.HK | Gas Utilities / Energy |
| HAIER SMARTHOME | 6690.HK | Home Appliances / Consumer Electronics |