149 lines
5.1 KiB
Plaintext
149 lines
5.1 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"id": "initial_id",
|
|
"metadata": {
|
|
"ExecuteTime": {
|
|
"end_time": "2025-04-08T13:37:01.282302Z",
|
|
"start_time": "2025-04-08T13:37:00.318950Z"
|
|
}
|
|
},
|
|
"source": [
|
|
"from operator import index\n",
|
|
"\n",
|
|
"import tushare as ts\n",
|
|
"import pandas as pd\n",
|
|
"import time\n",
|
|
"\n",
|
|
"ts.set_token('3a0741c702ee7e5e5f2bf1f0846bafaafe4e320833240b2a7e4a685f')\n",
|
|
"pro = ts.pro_api()"
|
|
],
|
|
"outputs": [],
|
|
"execution_count": 1
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"id": "f448da220816bf98",
|
|
"metadata": {
|
|
"ExecuteTime": {
|
|
"end_time": "2025-04-08T13:37:02.801052Z",
|
|
"start_time": "2025-04-08T13:37:01.292316Z"
|
|
}
|
|
},
|
|
"source": [
|
|
"# 定义四个指数\n",
|
|
"index_list = ['399300.SH', '000905.SH', '000852.SH', '399006.SZ']\n",
|
|
"\n",
|
|
"# 获取并存储数据\n",
|
|
"all_data = []\n",
|
|
"\n",
|
|
"for ts_code in index_list:\n",
|
|
" df = pro.index_daily(ts_code=ts_code) # 可根据需要设置日期\n",
|
|
" df['ts_code'] = ts_code # 添加ts_code列来区分数据\n",
|
|
" all_data.append(df)\n",
|
|
"\n",
|
|
"# 合并所有数据\n",
|
|
"final_df = pd.concat(all_data, ignore_index=True)\n",
|
|
"\n",
|
|
"# 存储到H5文件\n",
|
|
"final_df.to_hdf('../../data/index_data.h5', key='index_data', mode='w')\n",
|
|
"\n",
|
|
"print(\"数据已经成功存储到index_data.h5文件中\")"
|
|
],
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"数据已经成功存储到index_data.h5文件中\n"
|
|
]
|
|
},
|
|
{
|
|
"name": "stderr",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"C:\\Users\\liaozhaorun\\AppData\\Local\\Temp\\ipykernel_25240\\3209233630.py:13: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
|
|
" final_df = pd.concat(all_data, ignore_index=True)\n"
|
|
]
|
|
}
|
|
],
|
|
"execution_count": 2
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"id": "907f732d3c397bf",
|
|
"metadata": {
|
|
"ExecuteTime": {
|
|
"end_time": "2025-04-08T13:37:03.042004Z",
|
|
"start_time": "2025-04-08T13:37:03.007507Z"
|
|
}
|
|
},
|
|
"source": [
|
|
"h5_filename = '../../data/index_data.h5'\n",
|
|
"key = '/index_data'\n",
|
|
"with pd.HDFStore(h5_filename, mode='r') as store:\n",
|
|
" df = store[key]\n",
|
|
" print(df)\n"
|
|
],
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
" ts_code trade_date close open high low \\\n",
|
|
"0 000905.SH 20250408 5326.9140 5279.7566 5371.1834 5249.2318 \n",
|
|
"1 000905.SH 20250407 5287.0333 5523.9636 5587.8502 5212.6773 \n",
|
|
"2 000905.SH 20250403 5845.5045 5842.6167 5906.7057 5817.9662 \n",
|
|
"3 000905.SH 20250402 5899.0865 5884.8925 5936.6467 5884.1126 \n",
|
|
"4 000905.SH 20250401 5892.8502 5870.9424 5931.5038 5867.8480 \n",
|
|
"... ... ... ... ... ... ... \n",
|
|
"13441 399006.SZ 20100607 1069.4680 1005.0280 1075.2250 1001.7020 \n",
|
|
"13442 399006.SZ 20100604 1027.6810 989.6810 1027.6810 986.5040 \n",
|
|
"13443 399006.SZ 20100603 998.3940 1002.3550 1026.7020 997.7750 \n",
|
|
"13444 399006.SZ 20100602 997.1190 967.6090 997.1190 952.6110 \n",
|
|
"13445 399006.SZ 20100601 973.2330 986.0150 994.7930 948.1180 \n",
|
|
"\n",
|
|
" pre_close change pct_chg vol amount \n",
|
|
"0 5287.0333 39.8807 0.7543 2.238407e+08 2.618753e+08 \n",
|
|
"1 5845.5045 -558.4712 -9.5539 2.365227e+08 2.673974e+08 \n",
|
|
"2 5899.0865 -53.5820 -0.9083 1.349386e+08 1.736621e+08 \n",
|
|
"3 5892.8502 6.2363 0.1058 1.121600e+08 1.406421e+08 \n",
|
|
"4 5857.7721 35.0781 0.5988 1.364486e+08 1.793280e+08 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"13441 1027.6810 41.7870 4.0661 2.655275e+06 9.106095e+06 \n",
|
|
"13442 998.3940 29.2870 2.9334 1.500295e+06 5.269441e+06 \n",
|
|
"13443 997.1190 1.2750 0.1279 1.616805e+06 6.240835e+06 \n",
|
|
"13444 973.2330 23.8860 2.4543 1.074628e+06 4.001206e+06 \n",
|
|
"13445 1000.0000 -26.7670 -2.6767 1.356285e+06 4.924177e+06 \n",
|
|
"\n",
|
|
"[13446 rows x 11 columns]\n"
|
|
]
|
|
}
|
|
],
|
|
"execution_count": 3
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3 (ipykernel)",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.11.11"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|