Classify2

This commit is contained in:
liaozhaorun
2025-05-08 15:42:17 +08:00
parent 6387b30d10
commit 791c84aba6
20 changed files with 9487 additions and 5468 deletions

View File

@@ -32,22 +32,22 @@
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date\n",
"0 000001.SZ 20250312\n",
"1 000002.SZ 20250312\n",
"2 000004.SZ 20250312\n",
"3 000006.SZ 20250312\n",
"4 000007.SZ 20250312\n",
"... ... ...\n",
"43070 920108.BJ 20250421\n",
"43071 920111.BJ 20250421\n",
"43072 920116.BJ 20250421\n",
"43073 920118.BJ 20250421\n",
"43074 920128.BJ 20250421\n",
" ts_code trade_date\n",
"0 000001.SZ 20250312\n",
"1 000002.SZ 20250312\n",
"2 000004.SZ 20250312\n",
"3 000006.SZ 20250312\n",
"4 000007.SZ 20250312\n",
"... ... ...\n",
"5381 920445.BJ 20250506\n",
"5382 920489.BJ 20250506\n",
"5383 920682.BJ 20250506\n",
"5384 920799.BJ 20250506\n",
"5385 920819.BJ 20250506\n",
"\n",
"[7648931 rows x 2 columns]\n",
"20250430\n",
"start_date: 20250506\n"
"[7654317 rows x 2 columns]\n",
"20250506\n",
"start_date: 20250507\n"
]
}
],
@@ -88,28 +88,28 @@
"text": [
"任务 20250619 完成\n",
"任务 20250620 完成\n",
"任务 20250618 完成\n",
"任务 20250617 完成\n",
"任务 20250613 完成\n",
"任务 20250618 完成\n",
"任务 20250616 完成\n",
"任务 20250611 完成\n",
"任务 20250613 完成\n",
"任务 20250612 完成\n",
"任务 20250611 完成\n",
"任务 20250610 完成\n",
"任务 20250609 完成\n",
"任务 20250606 完成\n",
"任务 20250605 完成\n",
"任务 20250604 完成\n",
"任务 20250603 完成\n",
"任务 20250529 完成\n",
"任务 20250530 完成\n",
"任务 20250529 完成\n",
"任务 20250528 完成\n",
"任务 20250527 完成\n",
"任务 20250526 完成\n",
"任务 20250523 完成\n",
"任务 20250522 完成\n",
"任务 20250521 完成\n",
"任务 20250519 完成\n",
"任务 20250520 完成\n",
"任务 20250519 完成\n",
"任务 20250516 完成\n",
"任务 20250515 完成\n",
"任务 20250514 完成\n",
@@ -117,8 +117,7 @@
"任务 20250512 完成\n",
"任务 20250509 完成\n",
"任务 20250508 完成\n",
"任务 20250507 完成\n",
"任务 20250506 完成\n"
"任务 20250507 完成\n"
]
}
],

View File

@@ -1,194 +0,0 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "f74ce078-f7e8-4733-a14c-14d8815a3626",
"metadata": {},
"outputs": [],
"source": [
"import tushare as ts\n",
"ts.set_token('3a0741c702ee7e5e5f2bf1f0846bafaafe4e320833240b2a7e4a685f')\n",
"pro = ts.pro_api()"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "44dd8d87-e60b-49e5-aed9-efaa7f92d4fe",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date\n",
"0 801001.SI 20250221\n",
"1 801002.SI 20250221\n",
"2 801003.SI 20250221\n",
"3 801005.SI 20250221\n",
"4 801010.SI 20250221\n",
"... ... ...\n",
"1044388 857344.SI 20170103\n",
"1044389 857411.SI 20170103\n",
"1044390 857421.SI 20170103\n",
"1044391 857431.SI 20170103\n",
"1044392 858811.SI 20170103\n",
"\n",
"[1044393 rows x 2 columns]\n",
"20250221\n",
"start_date: 20250224\n"
]
}
],
"source": [
"import pandas as pd\n",
"import time\n",
"\n",
"h5_filename = '../../../data/sw_daily.h5'\n",
"key = '/sw_daily'\n",
"max_date = None\n",
"with pd.HDFStore(h5_filename, mode='r') as store:\n",
" df = store[key][['ts_code', 'trade_date']]\n",
" print(df)\n",
" max_date = df['trade_date'].max()\n",
"\n",
"print(max_date)\n",
"trade_cal = pro.trade_cal(exchange='', start_date='20170101', end_date='20250420')\n",
"trade_cal = trade_cal[trade_cal['is_open'] == 1] # 只保留交易日\n",
"trade_dates = trade_cal[trade_cal['cal_date'] > max_date]['cal_date'].tolist()\n",
"start_date = min(trade_dates)\n",
"print(f'start_date: {start_date}')"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "747acc47-0884-4f76-90fb-276f6494e31d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"任务 20250417 完成\n",
"任务 20250418 完成\n",
"任务 20250416 完成\n",
"任务 20250415 完成\n",
"任务 20250411 完成\n",
"任务 20250414 完成\n",
"任务 20250410 完成\n",
"任务 20250409 完成\n",
"任务 20250408 完成\n",
"任务 20250403 完成\n",
"任务 20250407 完成\n",
"任务 20250402 完成\n",
"任务 20250401 完成\n",
"任务 20250331 完成\n",
"任务 20250328 完成\n",
"任务 20250327 完成\n",
"任务 20250326 完成\n",
"任务 20250325 完成\n",
"任务 20250324 完成\n",
"任务 20250321 完成\n",
"任务 20250320 完成\n",
"任务 20250319 完成\n",
"任务 20250317 完成\n",
"任务 20250314 完成\n",
"任务 20250318 完成\n",
"任务 20250313 完成\n",
"任务 20250312 完成\n",
"任务 20250311 完成\n",
"任务 20250310 完成\n",
"任务 20250307 完成\n",
"任务 20250306 完成\n",
"任务 20250305 完成\n",
"任务 20250304 完成\n",
"任务 20250303 完成\n",
"任务 20250228 完成\n",
"任务 20250227 完成\n",
"任务 20250226 完成\n",
"任务 20250225 完成\n",
"任务 20250224 完成\n"
]
}
],
"source": [
"from concurrent.futures import ThreadPoolExecutor, as_completed\n",
"\n",
"all_daily_data = []\n",
"\n",
"# API 调用计数和时间控制变量\n",
"api_call_count = 0\n",
"batch_start_time = time.time()\n",
"\n",
"index_list = ['399300.SH', '000905.SH', '000852.SH', '399006.SZ']\n",
"def get_data(trade_date):\n",
" time.sleep(0.1)\n",
" data = pro.sw_daily(trade_date=trade_date)\n",
" if data is not None and not data.empty:\n",
" return data\n",
"\n",
"\n",
"with ThreadPoolExecutor(max_workers=2) as executor:\n",
" future_to_date = {executor.submit(get_data, td): td for td in trade_dates}\n",
"\n",
" for future in as_completed(future_to_date):\n",
" trade_date = future_to_date[future] # 获取对应的交易日期\n",
" try:\n",
" result = future.result() # 获取任务执行的结果\n",
" all_daily_data.append(result)\n",
" print(f\"任务 {trade_date} 完成\")\n",
" except Exception as e:\n",
" print(f\"获取 {trade_date} 数据时出错: {e}\")\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "c6765638-481f-40d8-a259-2e7b25362618",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"所有每日基础数据获取并保存完毕!\n"
]
}
],
"source": [
"all_daily_data_df = pd.concat(all_daily_data, ignore_index=True)\n",
"\n",
"# 将所有数据合并为一个 DataFrame\n",
"\n",
"# 将数据保存为 HDF5 文件table 格式)\n",
"all_daily_data_df.to_hdf(h5_filename, key=key, mode='a', format='table', append=True, data_columns=True)\n",
"\n",
"print(\"所有每日基础数据获取并保存完毕!\")"
]
}
],
"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
}

View File

@@ -32,22 +32,22 @@
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date\n",
"0 801001.SI 20250221\n",
"1 801002.SI 20250221\n",
"2 801003.SI 20250221\n",
"3 801005.SI 20250221\n",
"4 801010.SI 20250221\n",
"... ... ...\n",
"3507 859811.SI 20250421\n",
"3508 859821.SI 20250421\n",
"3509 859822.SI 20250421\n",
"3510 859852.SI 20250421\n",
"3511 859951.SI 20250421\n",
" ts_code trade_date\n",
"0 801001.SI 20250221\n",
"1 801002.SI 20250221\n",
"2 801003.SI 20250221\n",
"3 801005.SI 20250221\n",
"4 801010.SI 20250221\n",
".. ... ...\n",
"434 859811.SI 20250506\n",
"435 859821.SI 20250506\n",
"436 859822.SI 20250506\n",
"437 859852.SI 20250506\n",
"438 859951.SI 20250506\n",
"\n",
"[1065026 rows x 2 columns]\n",
"20250430\n",
"start_date: 20250506\n"
"[1065465 rows x 2 columns]\n",
"20250506\n",
"start_date: 20250507\n"
]
}
],
@@ -92,33 +92,32 @@
"任务 20250617 完成\n",
"任务 20250616 完成\n",
"任务 20250613 完成\n",
"任务 20250611 完成\n",
"任务 20250612 完成\n",
"任务 20250611 完成\n",
"任务 20250610 完成\n",
"任务 20250609 完成\n",
"任务 20250606 完成\n",
"任务 20250605 完成\n",
"任务 20250603 完成\n",
"任务 20250604 完成\n",
"任务 20250603 完成\n",
"任务 20250530 完成\n",
"任务 20250529 完成\n",
"任务 20250528 完成\n",
"任务 20250527 完成\n",
"任务 20250529 完成\n",
"任务 20250526 完成\n",
"任务 20250527 完成\n",
"任务 20250523 完成\n",
"任务 20250522 完成\n",
"任务 20250521 完成\n",
"任务 20250520 完成\n",
"任务 20250519 完成\n",
"任务 20250516 完成\n",
"任务 20250515 完成\n",
"任务 20250514 完成\n",
"任务 20250515 完成\n",
"任务 20250513 完成\n",
"任务 20250512 完成\n",
"任务 20250509 完成\n",
"任务 20250508 完成\n",
"任务 20250507 完成\n",
"任务 20250506 完成\n"
"任务 20250507 完成\n"
]
}
],

View File

@@ -19,7 +19,7 @@
},
{
"cell_type": "code",
"execution_count": 2,
"execution_count": 3,
"id": "14671a7f72de2564",
"metadata": {
"ExecuteTime": {
@@ -68,19 +68,19 @@
"# 确保 name_change_df 的日期格式正确\n",
"name_change_df['start_date'] = pd.to_datetime(name_change_df['start_date'], format='%Y%m%d')\n",
"name_change_df['end_date'] = pd.to_datetime(name_change_df['end_date'], format='%Y%m%d', errors='coerce')\n",
"name_change_df = name_change_df[name_change_df.name.str.contains('ST')]\n",
"# name_change_df = name_change_df[name_change_df.name.str.contains('ST') ]\n",
"name_change_dict = {}\n",
"for ts_code, group in name_change_df.groupby('ts_code'):\n",
" # 只保留 'ST' 和 '*ST' 的记录\n",
" # st_data = group[(group['change_reason'] == 'ST') | (group['change_reason'] == '*ST')]\n",
" st_data = group[group['name'].str.contains('ST')]\n",
" st_data = group[(group['name'].str.contains('ST')) | (group['name'].str.contains('退'))]\n",
" if not st_data.empty:\n",
" name_change_dict[ts_code] = filter_rows(st_data)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"execution_count": 4,
"id": "e7f8cce2f80e2f20",
"metadata": {
"ExecuteTime": {
@@ -130,7 +130,7 @@
},
{
"cell_type": "code",
"execution_count": 4,
"execution_count": 5,
"id": "553cfb36-f560-4cc4-b2bc-68323ccc5072",
"metadata": {
"ExecuteTime": {
@@ -146,14 +146,14 @@
"text": [
"任务 20250718 完成\n",
"任务 20250717 完成\n",
"任务 20250715 完成\n",
"任务 20250716 完成\n",
"任务 20250711 完成\n",
"任务 20250715 完成\n",
"任务 20250714 完成\n",
"任务 20250709 完成\n",
"任务 20250711 完成\n",
"任务 20250710 完成\n",
"任务 20250707 完成\n",
"任务 20250709 完成\n",
"任务 20250708 完成\n",
"任务 20250707 完成\n",
"任务 20250704 完成\n",
"任务 20250703 完成\n",
"任务 20250702 完成\n",
@@ -164,8 +164,8 @@
"任务 20250625 完成\n",
"任务 20250624 完成\n",
"任务 20250623 完成\n",
"任务 20250619 完成\n",
"任务 20250620 完成\n",
"任务 20250619 完成\n",
"任务 20250618 完成\n",
"任务 20250617 完成\n",
"任务 20250616 完成\n",
@@ -178,14 +178,14 @@
"任务 20250605 完成\n",
"任务 20250604 完成\n",
"任务 20250603 完成\n",
"任务 20250530 完成\n",
"任务 20250529 完成\n",
"任务 20250528 完成\n",
"任务 20250530 完成\n",
"任务 20250527 完成\n",
"任务 20250528 完成\n",
"任务 20250526 完成\n",
"任务 20250523 完成\n",
"任务 20250522 完成\n",
"任务 20250521 完成\n",
"任务 20250522 完成\n",
"任务 20250520 完成\n",
"任务 20250519 完成\n",
"任务 20250516 完成\n",
@@ -253,7 +253,7 @@
},
{
"cell_type": "code",
"execution_count": 5,
"execution_count": 6,
"id": "919023c693d7a47a",
"metadata": {
"ExecuteTime": {
@@ -266,59 +266,59 @@
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date close turnover_rate turnover_rate_f \\\n",
"0 002390.SZ 20250506 3.48 0.7696 1.3833 \n",
"1 300708.SZ 20250506 11.64 2.8994 3.2217 \n",
"2 301171.SZ 20250506 27.73 9.9120 10.7228 \n",
"3 301662.SZ 20250506 52.50 17.0926 17.0926 \n",
"4 001309.SZ 20250506 129.63 5.7123 6.3388 \n",
"... ... ... ... ... ... \n",
"5381 000551.SZ 20250506 12.39 2.0213 3.1432 \n",
"5382 600792.SH 20250506 3.17 0.8036 2.3531 \n",
"5383 300176.SZ 20250506 6.62 1.7530 2.5325 \n",
"5384 000016.SZ 20250506 5.57 13.9545 20.7669 \n",
"5385 300339.SZ 20250506 56.53 11.3184 11.9579 \n",
" ts_code trade_date close turnover_rate turnover_rate_f \\\n",
"0 301261.SZ 20250507 97.25 15.5042 19.6511 \n",
"1 002643.SZ 20250507 11.12 1.3481 2.3303 \n",
"2 001211.SZ 20250507 22.11 3.5506 6.1239 \n",
"3 002466.SZ 20250507 28.98 1.0588 1.5771 \n",
"4 603005.SH 20250507 29.32 5.1961 6.1690 \n",
"... ... ... ... ... ... \n",
"10769 000551.SZ 20250506 12.39 2.0213 3.1432 \n",
"10770 600792.SH 20250506 3.17 0.8036 2.3531 \n",
"10771 300176.SZ 20250506 6.62 1.7530 2.5325 \n",
"10772 000016.SZ 20250506 5.57 13.9545 20.7669 \n",
"10773 300339.SZ 20250506 56.53 11.3184 11.9579 \n",
"\n",
" volume_ratio pe pe_ttm pb ps ps_ttm dv_ratio \\\n",
"0 1.02 66.7242 80.7223 1.0020 1.1214 1.1483 2.5321 \n",
"1 1.14 40.4767 37.8935 2.9328 2.8689 2.7390 1.3334 \n",
"2 0.95 56.4451 55.0565 3.6159 5.1380 4.3691 0.4867 \n",
"3 0.79 20.2143 23.5423 2.7909 2.0091 2.2310 NaN \n",
"4 1.02 59.8205 243.9150 8.6523 4.3939 4.0221 0.0702 \n",
"... ... ... ... ... ... ... ... \n",
"5381 1.20 19.9692 18.7030 1.8602 1.1939 1.1927 0.5650 \n",
"5382 0.89 NaN NaN 1.1995 0.5271 0.5777 2.1767 \n",
"5383 1.12 92.1443 96.5538 2.7208 1.4839 1.4627 0.0000 \n",
"5384 3.66 NaN NaN 5.6643 1.2067 1.1979 0.0000 \n",
"5385 2.40 279.4392 270.1037 12.8967 13.2445 13.0061 0.0000 \n",
" volume_ratio pe pe_ttm pb ps ps_ttm dv_ratio \\\n",
"0 0.84 122.6810 146.2352 5.5730 8.2774 8.3189 0.4627 \n",
"1 0.79 41.9902 45.3885 1.4569 2.8000 2.8594 2.6982 \n",
"2 0.83 56.0080 58.9563 1.8078 1.1637 1.1399 0.0000 \n",
"3 0.92 NaN NaN 1.1380 3.6409 3.6410 4.6569 \n",
"4 1.35 75.6520 71.1174 4.4020 16.9225 16.2060 0.1570 \n",
"... ... ... ... ... ... ... ... \n",
"10769 1.20 19.9692 18.7030 1.8602 1.1939 1.1927 0.5650 \n",
"10770 0.89 NaN NaN 1.1995 0.5271 0.5777 2.1767 \n",
"10771 1.12 92.1443 96.5538 2.7208 1.4839 1.4627 0.0000 \n",
"10772 3.66 NaN NaN 5.6643 1.2067 1.1979 0.0000 \n",
"10773 2.40 279.4392 270.1037 12.8967 13.2445 13.0061 0.0000 \n",
"\n",
" dv_ttm total_share float_share free_share total_mv \\\n",
"0 2.5321 194385.1868 185230.5076 103045.2550 6.764605e+05 \n",
"1 1.3003 68015.2346 52260.4413 47031.2918 7.916973e+05 \n",
"2 0.4867 47188.5905 30877.5025 28542.8345 1.308540e+06 \n",
"3 NaN 8000.0000 1577.6325 1577.6325 4.200000e+05 \n",
"4 NaN 16177.0306 8763.6153 7897.4398 2.097028e+06 \n",
"... ... ... ... ... ... \n",
"5381 0.5650 40394.4205 40263.2044 25893.0990 5.004869e+05 \n",
"5382 2.1767 110992.3600 105986.8113 36194.3684 3.518458e+05 \n",
"5383 NaN 38728.0800 38728.0800 26808.2764 2.563799e+05 \n",
"5384 NaN 240794.5408 159659.3800 107284.6868 1.341226e+06 \n",
"5385 NaN 79641.0841 77768.6667 73609.4256 4.502110e+06 \n",
" dv_ttm total_share float_share free_share total_mv \\\n",
"0 0.4627 8789.0196 3748.3321 2957.3203 8.547322e+05 \n",
"1 2.6982 92996.9005 90932.5570 52604.5851 1.034126e+06 \n",
"2 NaN 7200.0000 6699.6575 3884.4502 1.591920e+05 \n",
"3 4.6569 164122.1583 147584.5634 99084.9325 4.756260e+06 \n",
"4 0.1570 65217.1706 65217.1706 54932.1940 1.912167e+06 \n",
"... ... ... ... ... ... \n",
"10769 0.5650 40394.4205 40263.2044 25893.0990 5.004869e+05 \n",
"10770 2.1767 110992.3600 105986.8113 36194.3684 3.518458e+05 \n",
"10771 NaN 38728.0800 38728.0800 26808.2764 2.563799e+05 \n",
"10772 NaN 240794.5408 159659.3800 107284.6868 1.341226e+06 \n",
"10773 NaN 79641.0841 77768.6667 73609.4256 4.502110e+06 \n",
"\n",
" circ_mv is_st \n",
"0 6.446022e+05 False \n",
"1 6.083115e+05 False \n",
"2 8.562331e+05 False \n",
"3 8.282571e+04 False \n",
"4 1.136027e+06 False \n",
"... ... ... \n",
"5381 4.988611e+05 False \n",
"5382 3.359782e+05 False \n",
"5383 2.563799e+05 False \n",
"5384 8.893027e+05 False \n",
"5385 4.396263e+06 False \n",
" circ_mv is_st \n",
"0 3.645253e+05 False \n",
"1 1.011170e+06 False \n",
"2 1.481294e+05 False \n",
"3 4.277001e+06 False \n",
"4 1.912167e+06 False \n",
"... ... ... \n",
"10769 4.988611e+05 False \n",
"10770 3.359782e+05 False \n",
"10771 2.563799e+05 False \n",
"10772 8.893027e+05 False \n",
"10773 4.396263e+06 False \n",
"\n",
"[5386 rows x 19 columns]\n"
"[10774 rows x 19 columns]\n"
]
}
],
@@ -329,7 +329,7 @@
},
{
"cell_type": "code",
"execution_count": 6,
"execution_count": 7,
"id": "28cb78d032671b20",
"metadata": {
"ExecuteTime": {
@@ -342,59 +342,59 @@
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date close turnover_rate turnover_rate_f \\\n",
"23 000820.SZ 20250506 2.04 11.8279 12.1552 \n",
"33 300506.SZ 20250506 3.27 0.6104 0.8597 \n",
"82 839680.BJ 20250506 7.25 34.6648 39.7153 \n",
"105 300159.SZ 20250506 1.83 3.6351 4.0740 \n",
"114 300301.SZ 20250506 1.82 1.3707 1.4819 \n",
"... ... ... ... ... ... \n",
"5259 600243.SH 20250506 2.43 6.7484 8.1172 \n",
"5264 002528.SZ 20250506 2.35 2.0592 4.3961 \n",
"5294 300044.SZ 20250506 3.31 12.8866 13.4490 \n",
"5324 300097.SZ 20250506 4.36 2.5814 3.0107 \n",
"5345 600200.SH 20250506 3.04 0.2013 0.2433 \n",
" ts_code trade_date close turnover_rate turnover_rate_f \\\n",
"8 300147.SZ 20250507 6.58 5.3209 6.8857 \n",
"19 002501.SZ 20250507 2.10 2.8874 3.7273 \n",
"52 600238.SH 20250507 4.55 11.2843 13.8699 \n",
"63 300391.SZ 20250507 5.58 5.5505 7.0395 \n",
"73 600421.SH 20250507 4.99 2.8571 6.1511 \n",
"... ... ... ... ... ... \n",
"10647 600243.SH 20250506 2.43 6.7484 8.1172 \n",
"10652 002528.SZ 20250506 2.35 2.0592 4.3961 \n",
"10682 300044.SZ 20250506 3.31 12.8866 13.4490 \n",
"10712 300097.SZ 20250506 4.36 2.5814 3.0107 \n",
"10733 600200.SH 20250506 3.04 0.2013 0.2433 \n",
"\n",
" volume_ratio pe pe_ttm pb ps ps_ttm dv_ratio \\\n",
"23 3.99 NaN NaN 9.0141 10.6452 13.5427 0.0 \n",
"33 0.77 NaN NaN 28.5038 19.4588 19.2499 0.0 \n",
"82 1.96 NaN NaN 7.4242 9.3299 11.0451 NaN \n",
"105 1.34 NaN NaN NaN 4.1337 4.1261 0.0 \n",
"114 1.22 NaN NaN 120.9449 2.9900 3.1074 0.0 \n",
"... ... ... ... ... ... ... ... \n",
"5259 0.73 NaN NaN 1.6685 4.5071 4.6210 0.0 \n",
"5264 1.52 NaN NaN 15.5269 2.9812 3.6083 0.0 \n",
"5294 2.91 NaN NaN 24.3171 17.6463 26.1361 0.0 \n",
"5324 0.99 NaN NaN 2.7137 3.2758 3.8102 0.0 \n",
"5345 0.05 30.7156 NaN 1.2351 1.3543 1.7858 0.0 \n",
" volume_ratio pe pe_ttm pb ps ps_ttm dv_ratio \\\n",
"8 1.62 NaN NaN 4.4991 2.3410 2.5434 0.0 \n",
"19 1.28 NaN NaN 22.7988 22.3498 26.2757 0.0 \n",
"52 2.57 NaN NaN 20.0224 11.6394 12.3461 0.0 \n",
"63 1.35 NaN NaN NaN 17.5129 12.5138 0.0 \n",
"73 0.80 NaN NaN 135.5854 8.3301 8.4697 0.0 \n",
"... ... ... ... ... ... ... ... \n",
"10647 0.73 NaN NaN 1.6685 4.5071 4.6210 0.0 \n",
"10652 1.52 NaN NaN 15.5269 2.9812 3.6083 0.0 \n",
"10682 2.91 NaN NaN 24.3171 17.6463 26.1361 0.0 \n",
"10712 0.99 NaN NaN 2.7137 3.2758 3.8102 0.0 \n",
"10733 0.05 30.7156 NaN 1.2351 1.3543 1.7858 0.0 \n",
"\n",
" dv_ttm total_share float_share free_share total_mv circ_mv \\\n",
"23 NaN 64362.0201 29403.1899 28611.4718 131298.5210 59982.5074 \n",
"33 NaN 69559.6569 57572.5450 40880.9749 227460.0781 188262.2222 \n",
"82 NaN 6699.9900 4689.3344 4093.0077 48574.9275 33997.6744 \n",
"105 NaN 150196.5923 147183.9203 131325.6306 274859.7639 269346.5741 \n",
"114 NaN 82986.8769 78987.6719 73061.8561 151036.1160 143757.5629 \n",
"... ... ... ... ... ... ... \n",
"5259 NaN 43885.0000 43885.0000 36485.0000 106640.5500 106640.5500 \n",
"5264 NaN 119867.5082 104974.0608 49171.2582 281688.6443 246689.0429 \n",
"5294 NaN 76386.9228 76375.7508 73182.1277 252840.7145 252803.7351 \n",
"5324 NaN 28854.9669 27000.9948 23150.5534 125807.6557 117724.3373 \n",
"5345 NaN 71215.1832 71087.9480 58808.3718 216494.1569 216107.3619 \n",
" dv_ttm total_share float_share free_share total_mv \\\n",
"8 NaN 66127.9045 65745.9042 50804.9121 435121.6116 \n",
"19 NaN 355000.0000 354999.9006 274999.9006 745500.0000 \n",
"52 NaN 44820.0000 44500.1580 36204.3908 203931.0000 \n",
"63 NaN 35033.6112 35033.6112 27623.1259 195487.5505 \n",
"73 NaN 19560.0000 19560.0000 9085.2748 97604.4000 \n",
"... ... ... ... ... ... \n",
"10647 NaN 43885.0000 43885.0000 36485.0000 106640.5500 \n",
"10652 NaN 119867.5082 104974.0608 49171.2582 281688.6443 \n",
"10682 NaN 76386.9228 76375.7508 73182.1277 252840.7145 \n",
"10712 NaN 28854.9669 27000.9948 23150.5534 125807.6557 \n",
"10733 NaN 71215.1832 71087.9480 58808.3718 216494.1569 \n",
"\n",
" is_st \n",
"23 True \n",
"33 True \n",
"82 True \n",
"105 True \n",
"114 True \n",
"... ... \n",
"5259 True \n",
"5264 True \n",
"5294 True \n",
"5324 True \n",
"5345 True \n",
" circ_mv is_st \n",
"8 432608.0496 True \n",
"19 745499.7913 True \n",
"52 202475.7189 True \n",
"63 195487.5505 True \n",
"73 97604.4000 True \n",
"... ... ... \n",
"10647 106640.5500 True \n",
"10652 246689.0429 True \n",
"10682 252803.7351 True \n",
"10712 117724.3373 True \n",
"10733 216107.3619 True \n",
"\n",
"[196 rows x 19 columns]\n"
"[394 rows x 19 columns]\n"
]
}
],
@@ -404,7 +404,7 @@
},
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 8,
"id": "692b58674b7462c9",
"metadata": {
"ExecuteTime": {
@@ -430,7 +430,7 @@
},
{
"cell_type": "code",
"execution_count": 8,
"execution_count": 9,
"id": "d7a773fc20293477",
"metadata": {
"ExecuteTime": {
@@ -444,7 +444,7 @@
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"Index: 8604524 entries, 0 to 5385\n",
"Index: 8609912 entries, 0 to 10773\n",
"Data columns (total 3 columns):\n",
" # Column Dtype \n",
"--- ------ ----- \n",
@@ -452,7 +452,7 @@
" 1 trade_date object\n",
" 2 is_st bool \n",
"dtypes: bool(1), object(2)\n",
"memory usage: 205.1+ MB\n",
"memory usage: 205.3+ MB\n",
"None\n"
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -34,17 +34,17 @@
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"Index: 8435700 entries, 0 to 40956\n",
"Index: 8440821 entries, 0 to 5120\n",
"Data columns (total 2 columns):\n",
" # Column Dtype \n",
"--- ------ ----- \n",
" 0 ts_code object\n",
" 1 trade_date object\n",
"dtypes: object(2)\n",
"memory usage: 193.1+ MB\n",
"memory usage: 193.2+ MB\n",
"None\n",
"20250430\n",
"start_date: 20250506\n"
"20250506\n",
"start_date: 20250507\n"
]
}
],
@@ -84,18 +84,18 @@
"name": "stdout",
"output_type": "stream",
"text": [
"任务 20250717 完成\n",
"任务 20250718 完成\n",
"任务 20250715 完成\n",
"任务 20250717 完成\n",
"任务 20250716 完成\n",
"任务 20250715 完成\n",
"任务 20250714 完成\n",
"任务 20250711 完成\n",
"任务 20250710 完成\n",
"任务 20250709 完成\n",
"任务 20250710 完成\n",
"任务 20250708 完成\n",
"任务 20250707 完成\n",
"任务 20250704 完成\n",
"任务 20250703 完成\n",
"任务 20250704 完成\n",
"任务 20250702 完成\n",
"任务 20250701 完成\n",
"任务 20250630 完成\n",
@@ -106,8 +106,8 @@
"任务 20250623 完成\n",
"任务 20250620 完成\n",
"任务 20250619 完成\n",
"任务 20250618 完成\n",
"任务 20250617 完成\n",
"任务 20250618 完成\n",
"任务 20250616 完成\n",
"任务 20250613 完成\n",
"任务 20250612 完成\n",
@@ -120,14 +120,14 @@
"任务 20250603 完成\n",
"任务 20250530 完成\n",
"任务 20250529 完成\n",
"任务 20250527 完成\n",
"任务 20250528 完成\n",
"任务 20250523 完成\n",
"任务 20250527 完成\n",
"任务 20250526 完成\n",
"任务 20250521 完成\n",
"任务 20250523 完成\n",
"任务 20250522 完成\n",
"任务 20250520 完成\n",
"任务 20250521 完成\n",
"任务 20250519 完成\n",
"任务 20250520 完成\n",
"任务 20250516 完成\n",
"任务 20250515 完成\n",
"任务 20250514 完成\n",
@@ -135,8 +135,7 @@
"任务 20250512 完成\n",
"任务 20250509 完成\n",
"任务 20250508 完成\n",
"任务 20250507 完成\n",
"任务 20250506 完成\n"
"任务 20250507 完成\n"
]
}
],

View File

@@ -97,14 +97,14 @@
"任务 20250716 完成\n",
"任务 20250714 完成\n",
"任务 20250711 完成\n",
"任务 20250709 完成\n",
"任务 20250710 完成\n",
"任务 20250709 完成\n",
"任务 20250708 完成\n",
"任务 20250707 完成\n",
"任务 20250703 完成\n",
"任务 20250704 完成\n",
"任务 20250701 完成\n",
"任务 20250703 完成\n",
"任务 20250702 完成\n",
"任务 20250701 完成\n",
"任务 20250630 完成\n",
"任务 20250627 完成\n",
"任务 20250626 完成\n",
@@ -123,10 +123,10 @@
"任务 20250609 完成\n",
"任务 20250606 完成\n",
"任务 20250605 完成\n",
"任务 20250604 完成\n",
"任务 20250603 完成\n",
"任务 20250530 完成\n",
"任务 20250604 完成\n",
"任务 20250529 完成\n",
"任务 20250530 完成\n",
"任务 20250528 完成\n",
"任务 20250527 完成\n",
"任务 20250526 完成\n",
@@ -193,21 +193,20 @@
"name": "stdout",
"output_type": "stream",
"text": [
"[]\n"
]
},
{
"ename": "ValueError",
"evalue": "No objects to concatenate",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[4], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;28mprint\u001b[39m(all_daily_data)\n\u001b[0;32m 2\u001b[0m \u001b[38;5;66;03m# 将所有数据合并为一个 DataFrame\u001b[39;00m\n\u001b[1;32m----> 3\u001b[0m all_daily_data_df \u001b[38;5;241m=\u001b[39m pd\u001b[38;5;241m.\u001b[39mconcat(all_daily_data, ignore_index\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m)\n",
"File \u001b[1;32me:\\Python\\anaconda\\envs\\new_trader\\Lib\\site-packages\\pandas\\core\\reshape\\concat.py:382\u001b[0m, in \u001b[0;36mconcat\u001b[1;34m(objs, axis, join, ignore_index, keys, levels, names, verify_integrity, sort, copy)\u001b[0m\n\u001b[0;32m 379\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m copy \u001b[38;5;129;01mand\u001b[39;00m using_copy_on_write():\n\u001b[0;32m 380\u001b[0m copy \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mFalse\u001b[39;00m\n\u001b[1;32m--> 382\u001b[0m op \u001b[38;5;241m=\u001b[39m _Concatenator(\n\u001b[0;32m 383\u001b[0m objs,\n\u001b[0;32m 384\u001b[0m axis\u001b[38;5;241m=\u001b[39maxis,\n\u001b[0;32m 385\u001b[0m ignore_index\u001b[38;5;241m=\u001b[39mignore_index,\n\u001b[0;32m 386\u001b[0m join\u001b[38;5;241m=\u001b[39mjoin,\n\u001b[0;32m 387\u001b[0m keys\u001b[38;5;241m=\u001b[39mkeys,\n\u001b[0;32m 388\u001b[0m levels\u001b[38;5;241m=\u001b[39mlevels,\n\u001b[0;32m 389\u001b[0m names\u001b[38;5;241m=\u001b[39mnames,\n\u001b[0;32m 390\u001b[0m verify_integrity\u001b[38;5;241m=\u001b[39mverify_integrity,\n\u001b[0;32m 391\u001b[0m copy\u001b[38;5;241m=\u001b[39mcopy,\n\u001b[0;32m 392\u001b[0m sort\u001b[38;5;241m=\u001b[39msort,\n\u001b[0;32m 393\u001b[0m )\n\u001b[0;32m 395\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m op\u001b[38;5;241m.\u001b[39mget_result()\n",
"File \u001b[1;32me:\\Python\\anaconda\\envs\\new_trader\\Lib\\site-packages\\pandas\\core\\reshape\\concat.py:445\u001b[0m, in \u001b[0;36m_Concatenator.__init__\u001b[1;34m(self, objs, axis, join, keys, levels, names, ignore_index, verify_integrity, copy, sort)\u001b[0m\n\u001b[0;32m 442\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mverify_integrity \u001b[38;5;241m=\u001b[39m verify_integrity\n\u001b[0;32m 443\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcopy \u001b[38;5;241m=\u001b[39m copy\n\u001b[1;32m--> 445\u001b[0m objs, keys \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_clean_keys_and_objs(objs, keys)\n\u001b[0;32m 447\u001b[0m \u001b[38;5;66;03m# figure out what our result ndim is going to be\u001b[39;00m\n\u001b[0;32m 448\u001b[0m ndims \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_get_ndims(objs)\n",
"File \u001b[1;32me:\\Python\\anaconda\\envs\\new_trader\\Lib\\site-packages\\pandas\\core\\reshape\\concat.py:507\u001b[0m, in \u001b[0;36m_Concatenator._clean_keys_and_objs\u001b[1;34m(self, objs, keys)\u001b[0m\n\u001b[0;32m 504\u001b[0m objs_list \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mlist\u001b[39m(objs)\n\u001b[0;32m 506\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(objs_list) \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[1;32m--> 507\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mNo objects to concatenate\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m 509\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m keys \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 510\u001b[0m objs_list \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mlist\u001b[39m(com\u001b[38;5;241m.\u001b[39mnot_none(\u001b[38;5;241m*\u001b[39mobjs_list))\n",
"\u001b[1;31mValueError\u001b[0m: No objects to concatenate"
"[ trade_date ts_code up_limit down_limit\n",
"0 20250507 000001.SZ 12.06 9.86\n",
"1 20250507 000002.SZ 7.51 6.15\n",
"2 20250507 000004.SZ 7.95 7.19\n",
"3 20250507 000006.SZ 7.11 5.81\n",
"4 20250507 000007.SZ 7.50 6.14\n",
"... ... ... ... ...\n",
"7107 20250507 920445.BJ 13.42 7.24\n",
"7108 20250507 920489.BJ 31.69 17.07\n",
"7109 20250507 920682.BJ 16.41 8.85\n",
"7110 20250507 920799.BJ 78.58 42.32\n",
"7111 20250507 920819.BJ 5.82 3.14\n",
"\n",
"[7112 rows x 4 columns]]\n"
]
}
],
@@ -219,7 +218,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 5,
"id": "ad9733a1-2f42-43ee-a98c-0bf699304c21",
"metadata": {
"ExecuteTime": {