Files
NewStock/main/data/daily_basic.ipynb
liaozhaorun 791c84aba6 Classify2
2025-05-08 15:42:17 +08:00

2409 lines
83 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"cells": [
{
"cell_type": "code",
"execution_count": 14,
"id": "18d1d622-b083-4cc4-a6f8-7c1ed2d0edd2",
"metadata": {
"ExecuteTime": {
"end_time": "2025-03-02T09:47:08.470810Z",
"start_time": "2025-03-02T09:47:07.512525Z"
}
},
"outputs": [],
"source": [
"import tushare as ts\n",
"\n",
"ts.set_token('3a0741c702ee7e5e5f2bf1f0846bafaafe4e320833240b2a7e4a685f')\n",
"pro = ts.pro_api()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "bc8f03e027027004",
"metadata": {
"ExecuteTime": {
"end_time": "2025-03-02T09:47:10.242731Z",
"start_time": "2025-03-02T09:47:08.470810Z"
}
},
"outputs": [],
"source": [
"from datetime import datetime\n",
"import pandas as pd\n",
"import warnings\n",
"\n",
"warnings.filterwarnings(\"ignore\")\n",
"def filter_rows(df):\n",
" # 按照 name 和 start_date 分组\n",
" def select_row(group):\n",
" # 如果有 end_date 不为 NaT 的行,优先保留这些行\n",
" valid_rows = group[group['end_date'].notna()]\n",
" if not valid_rows.empty:\n",
" return valid_rows.iloc[0] # 返回第一个有效行\n",
" else:\n",
" return group.iloc[0] # 如果没有有效行,返回第一行\n",
"\n",
" filtered_df = df.groupby(['name', 'start_date'], group_keys=False).apply(select_row)\n",
" filtered_df = filtered_df.reset_index(drop=True)\n",
" return filtered_df\n",
"\n",
"def is_st(name_change_dict, stock_code, target_date):\n",
" target_date = datetime.strptime(target_date, '%Y%m%d')\n",
" if stock_code not in name_change_dict.keys():\n",
" return False\n",
" df = name_change_dict[stock_code]\n",
" for i in range(len(df)):\n",
" sds = df.iloc[i, 2]\n",
" eds = df.iloc[i, 3]\n",
" if eds is None or eds is pd.NaT:\n",
" eds = datetime.now()\n",
" if (target_date - sds).days >= 0 and (target_date - eds).days <= 0:\n",
" return True\n",
" return False\n",
"\n",
"name_change_df = pd.read_hdf('../../data/name_change.h5', key='name_change')\n",
"name_change_df = name_change_df.drop_duplicates(keep='first')\n",
"\n",
"# 确保 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_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')) | (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": 16,
"id": "b151990c",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code name start_date end_date change_reason\n",
"0 600242.SH *ST中昌 2015-05-04 2016-04-06 *ST\n",
"1 600242.SH *ST中昌 2020-07-01 2021-05-19 *ST\n",
"2 600242.SH *ST中昌 2022-05-06 2023-05-30 *ST\n",
"3 600242.SH *ST华龙 2006-05-09 2006-10-08 *ST\n",
"4 600242.SH NST华龙 2009-01-05 2009-01-05 其他\n",
"5 600242.SH S*ST华龙 2006-10-09 2009-01-04 未股改加S\n",
"6 600242.SH ST中昌 2021-05-20 2022-05-05 摘星\n",
"7 600242.SH ST华龙 2009-01-06 2011-04-06 恢复上市加N\n",
"8 600242.SH 退市中昌 2023-05-31 NaT 终止上市\n"
]
}
],
"source": [
"print(name_change_dict['600242.SH'])\n",
"# print(name_change_df[name_change_df['ts_code'] == '600242.SH'])"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "553cfb36-f560-4cc4-b2bc-68323ccc5072",
"metadata": {
"ExecuteTime": {
"end_time": "2025-03-02T08:33:15.997350Z",
"start_time": "2025-03-02T08:17:08.727232Z"
},
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"任务 20250430 完成\n",
"任务 20250429 完成\n",
"任务 20250428 完成\n",
"任务 20250425 完成\n",
"任务 20250424 完成\n",
"任务 20250423 完成\n",
"任务 20250421 完成\n",
"任务 20250422 完成\n",
"任务 20250418 完成\n",
"任务 20250417 完成\n",
"任务 20250416 完成\n",
"任务 20250414 完成\n",
"任务 20250415 完成\n",
"任务 20250411 完成\n",
"任务 20250410 完成\n",
"任务 20250409 完成\n",
"任务 20250408 完成\n",
"任务 20250407 完成\n",
"任务 20250403 完成\n",
"任务 20250402 完成\n",
"任务 20250401 完成\n",
"任务 20250331 完成\n",
"任务 20250328 完成\n",
"任务 20250327 完成\n",
"任务 20250326 完成\n",
"任务 20250325 完成\n",
"任务 20250324 完成\n",
"任务 20250321 完成\n",
"任务 20250320 完成\n",
"任务 20250319 完成\n",
"任务 20250318 完成\n",
"任务 20250317 完成\n",
"任务 20250314 完成\n",
"任务 20250312 完成\n",
"任务 20250313 完成\n",
"任务 20250311 完成\n",
"任务 20250307 完成\n",
"任务 20250310 完成\n",
"任务 20250306 完成\n",
"任务 20250305 完成\n",
"任务 20250304 完成\n",
"任务 20250303 完成\n",
"任务 20250228 完成\n",
"任务 20250227 完成\n",
"任务 20250226 完成\n",
"任务 20250225 完成\n",
"任务 20250224 完成\n",
"任务 20250221 完成\n",
"任务 20250220 完成\n",
"任务 20250219 完成\n",
"任务 20250218 完成\n",
"任务 20250217 完成\n",
"任务 20250214 完成\n",
"任务 20250213 完成\n",
"任务 20250212 完成\n",
"任务 20250211 完成\n",
"任务 20250210 完成\n",
"任务 20250207 完成\n",
"任务 20250206 完成\n",
"任务 20250205 完成\n",
"任务 20250127 完成\n",
"任务 20250124 完成\n",
"任务 20250123 完成\n",
"任务 20250122 完成\n",
"任务 20250121 完成\n",
"任务 20250120 完成\n",
"任务 20250117 完成\n",
"任务 20250116 完成\n",
"任务 20250115 完成\n",
"任务 20250114 完成\n",
"任务 20250113 完成\n",
"任务 20250110 完成\n",
"任务 20250109 完成\n",
"任务 20250108 完成\n",
"任务 20250107 完成\n",
"任务 20250106 完成\n",
"任务 20250103 完成\n",
"任务 20250102 完成\n",
"任务 20241231 完成\n",
"任务 20241230 完成\n",
"任务 20241227 完成\n",
"任务 20241226 完成\n",
"任务 20241225 完成\n",
"任务 20241224 完成\n",
"任务 20241223 完成\n",
"任务 20241220 完成\n",
"任务 20241219 完成\n",
"任务 20241218 完成\n",
"任务 20241217 完成\n",
"任务 20241216 完成\n",
"任务 20241213 完成\n",
"任务 20241212 完成\n",
"任务 20241211 完成\n",
"任务 20241210 完成\n",
"任务 20241209 完成\n",
"任务 20241206 完成\n",
"任务 20241205 完成\n",
"任务 20241204 完成\n",
"任务 20241203 完成\n",
"任务 20241202 完成\n",
"任务 20241129 完成\n",
"任务 20241128 完成\n",
"任务 20241126 完成\n",
"任务 20241127 完成\n",
"任务 20241125 完成\n",
"任务 20241122 完成\n",
"任务 20241121 完成\n",
"任务 20241120 完成\n",
"任务 20241119 完成\n",
"任务 20241118 完成\n",
"任务 20241115 完成\n",
"任务 20241114 完成\n",
"任务 20241113 完成\n",
"任务 20241112 完成\n",
"任务 20241111 完成\n",
"任务 20241108 完成\n",
"任务 20241107 完成\n",
"任务 20241106 完成\n",
"任务 20241105 完成\n",
"任务 20241104 完成\n",
"任务 20241101 完成\n",
"任务 20241031 完成\n",
"任务 20241030 完成\n",
"任务 20241029 完成\n",
"任务 20241028 完成\n",
"任务 20241025 完成\n",
"任务 20241024 完成\n",
"任务 20241023 完成\n",
"任务 20241022 完成\n",
"任务 20241021 完成\n",
"任务 20241017 完成\n",
"任务 20241018 完成\n",
"任务 20241016 完成\n",
"任务 20241015 完成\n",
"任务 20241014 完成\n",
"任务 20241011 完成\n",
"任务 20241010 完成\n",
"任务 20241009 完成\n",
"任务 20241008 完成\n",
"任务 20240930 完成\n",
"任务 20240927 完成\n",
"任务 20240926 完成\n",
"任务 20240924 完成\n",
"任务 20240925 完成\n",
"任务 20240923 完成\n",
"任务 20240920 完成\n",
"任务 20240919 完成\n",
"任务 20240918 完成\n",
"任务 20240913 完成\n",
"任务 20240912 完成\n",
"任务 20240911 完成\n",
"任务 20240910 完成\n",
"任务 20240909 完成\n",
"任务 20240906 完成\n",
"任务 20240905 完成\n",
"任务 20240904 完成\n",
"任务 20240903 完成\n",
"任务 20240902 完成\n",
"任务 20240830 完成\n",
"任务 20240829 完成\n",
"任务 20240828 完成\n",
"任务 20240827 完成\n",
"任务 20240826 完成\n",
"任务 20240823 完成\n",
"任务 20240822 完成\n",
"任务 20240821 完成\n",
"任务 20240820 完成\n",
"任务 20240819 完成\n",
"任务 20240816 完成\n",
"任务 20240815 完成\n",
"任务 20240814 完成\n",
"任务 20240813 完成\n",
"任务 20240812 完成\n",
"任务 20240809 完成\n",
"任务 20240808 完成\n",
"任务 20240807 完成\n",
"任务 20240806 完成\n",
"任务 20240805 完成\n",
"任务 20240802 完成\n",
"任务 20240801 完成\n",
"任务 20240731 完成\n",
"任务 20240730 完成\n",
"任务 20240729 完成\n",
"任务 20240726 完成\n",
"任务 20240725 完成\n",
"任务 20240724 完成\n",
"任务 20240723 完成\n",
"任务 20240722 完成\n",
"任务 20240719 完成\n",
"任务 20240718 完成\n",
"任务 20240717 完成\n",
"任务 20240716 完成\n",
"任务 20240715 完成\n",
"任务 20240712 完成\n",
"任务 20240711 完成\n",
"任务 20240710 完成\n",
"任务 20240709 完成\n",
"任务 20240708 完成\n",
"任务 20240705 完成\n",
"任务 20240704 完成\n",
"任务 20240703 完成\n",
"任务 20240702 完成\n",
"任务 20240701 完成\n",
"任务 20240628 完成\n",
"任务 20240627 完成\n",
"任务 20240626 完成\n",
"任务 20240625 完成\n",
"任务 20240624 完成\n",
"任务 20240621 完成\n",
"任务 20240620 完成\n",
"任务 20240619 完成\n",
"任务 20240617 完成\n",
"任务 20240618 完成\n",
"任务 20240614 完成\n",
"任务 20240613 完成\n",
"任务 20240612 完成\n",
"任务 20240611 完成\n",
"任务 20240607 完成\n",
"任务 20240606 完成\n",
"任务 20240605 完成\n",
"任务 20240604 完成\n",
"任务 20240603 完成\n",
"任务 20240531 完成\n",
"任务 20240530 完成\n",
"任务 20240529 完成\n",
"任务 20240528 完成\n",
"任务 20240527 完成\n",
"任务 20240524 完成\n",
"任务 20240523 完成\n",
"任务 20240522 完成\n",
"任务 20240521 完成\n",
"任务 20240520 完成\n",
"任务 20240517 完成\n",
"任务 20240516 完成\n",
"任务 20240515 完成\n",
"任务 20240514 完成\n",
"任务 20240513 完成\n",
"任务 20240510 完成\n",
"任务 20240509 完成\n",
"任务 20240508 完成\n",
"任务 20240507 完成\n",
"任务 20240506 完成\n",
"任务 20240430 完成\n",
"任务 20240429 完成\n",
"任务 20240426 完成\n",
"任务 20240425 完成\n",
"任务 20240424 完成\n",
"任务 20240423 完成\n",
"任务 20240422 完成\n",
"任务 20240419 完成\n",
"任务 20240418 完成\n",
"任务 20240417 完成\n",
"任务 20240416 完成\n",
"任务 20240415 完成\n",
"任务 20240412 完成\n",
"任务 20240411 完成\n",
"任务 20240410 完成\n",
"任务 20240408 完成\n",
"任务 20240409 完成\n",
"任务 20240403 完成\n",
"任务 20240402 完成\n",
"任务 20240401 完成\n",
"任务 20240329 完成\n",
"任务 20240327 完成\n",
"任务 20240328 完成\n",
"任务 20240326 完成\n",
"任务 20240325 完成\n",
"任务 20240322 完成\n",
"任务 20240321 完成\n",
"任务 20240320 完成\n",
"任务 20240319 完成\n",
"任务 20240318 完成\n",
"任务 20240315 完成\n",
"任务 20240314 完成\n",
"任务 20240313 完成\n",
"任务 20240312 完成\n",
"任务 20240311 完成\n",
"任务 20240308 完成\n",
"任务 20240307 完成\n",
"任务 20240306 完成\n",
"任务 20240305 完成\n",
"任务 20240304 完成\n",
"任务 20240301 完成\n",
"任务 20240229 完成\n",
"任务 20240228 完成\n",
"任务 20240227 完成\n",
"任务 20240226 完成\n",
"任务 20240223 完成\n",
"任务 20240222 完成\n",
"任务 20240221 完成\n",
"任务 20240220 完成\n",
"任务 20240219 完成\n",
"任务 20240208 完成\n",
"任务 20240206 完成\n",
"任务 20240207 完成\n",
"任务 20240202 完成\n",
"任务 20240205 完成\n",
"任务 20240201 完成\n",
"任务 20240131 完成\n",
"任务 20240130 完成\n",
"任务 20240129 完成\n",
"任务 20240126 完成\n",
"任务 20240125 完成\n",
"任务 20240124 完成\n",
"任务 20240123 完成\n",
"任务 20240122 完成\n",
"任务 20240119 完成\n",
"任务 20240118 完成\n",
"任务 20240117 完成\n",
"任务 20240116 完成\n",
"任务 20240115 完成\n",
"任务 20240111 完成\n",
"任务 20240112 完成\n",
"任务 20240110 完成\n",
"任务 20240109 完成\n",
"任务 20240108 完成\n",
"任务 20240105 完成\n",
"任务 20240104 完成\n",
"任务 20240103 完成\n",
"任务 20231229 完成\n",
"任务 20240102 完成\n",
"任务 20231228 完成\n",
"任务 20231227 完成\n",
"任务 20231226 完成\n",
"任务 20231225 完成\n",
"任务 20231222 完成\n",
"任务 20231221 完成\n",
"任务 20231219 完成\n",
"任务 20231220 完成\n",
"任务 20231218 完成\n",
"任务 20231215 完成\n",
"任务 20231214 完成\n",
"任务 20231213 完成\n",
"任务 20231212 完成\n",
"任务 20231211 完成\n",
"任务 20231208 完成\n",
"任务 20231207 完成\n",
"任务 20231206 完成\n",
"任务 20231205 完成\n",
"任务 20231204 完成\n",
"任务 20231201 完成\n",
"任务 20231130 完成\n",
"任务 20231129 完成\n",
"任务 20231128 完成\n",
"任务 20231127 完成\n",
"任务 20231124 完成\n",
"任务 20231123 完成\n",
"任务 20231122 完成\n",
"任务 20231121 完成\n",
"任务 20231120 完成\n",
"任务 20231117 完成\n",
"任务 20231116 完成\n",
"任务 20231115 完成\n",
"任务 20231114 完成\n",
"任务 20231113 完成\n",
"任务 20231110 完成\n",
"任务 20231109 完成\n",
"任务 20231108 完成\n",
"任务 20231107 完成\n",
"任务 20231106 完成\n",
"任务 20231103 完成\n",
"任务 20231102 完成\n",
"任务 20231101 完成\n",
"任务 20231031 完成\n",
"任务 20231030 完成\n",
"任务 20231027 完成\n",
"任务 20231026 完成\n",
"任务 20231025 完成\n",
"任务 20231024 完成\n",
"任务 20231023 完成\n",
"任务 20231020 完成\n",
"任务 20231019 完成\n",
"任务 20231018 完成\n",
"任务 20231017 完成\n",
"任务 20231016 完成\n",
"任务 20231013 完成\n",
"任务 20231012 完成\n",
"任务 20231011 完成\n",
"任务 20231010 完成\n",
"任务 20231009 完成\n",
"任务 20230928 完成\n",
"任务 20230927 完成\n",
"任务 20230926 完成\n",
"任务 20230925 完成\n",
"任务 20230922 完成\n",
"任务 20230921 完成\n",
"任务 20230920 完成\n",
"任务 20230919 完成\n",
"任务 20230918 完成\n",
"任务 20230915 完成\n",
"任务 20230914 完成\n",
"任务 20230913 完成\n",
"任务 20230912 完成\n",
"任务 20230911 完成\n",
"任务 20230908 完成\n",
"任务 20230907 完成\n",
"任务 20230906 完成\n",
"任务 20230905 完成\n",
"任务 20230904 完成\n",
"任务 20230901 完成\n",
"任务 20230831 完成\n",
"任务 20230830 完成\n",
"任务 20230829 完成\n",
"任务 20230828 完成\n",
"任务 20230825 完成\n",
"任务 20230824 完成\n",
"任务 20230823 完成\n",
"任务 20230822 完成\n",
"任务 20230821 完成\n",
"任务 20230817 完成\n",
"任务 20230818 完成\n",
"任务 20230816 完成\n",
"任务 20230815 完成\n",
"任务 20230814 完成\n",
"任务 20230811 完成\n",
"任务 20230810 完成\n",
"任务 20230809 完成\n",
"任务 20230808 完成\n",
"任务 20230807 完成\n",
"任务 20230804 完成\n",
"任务 20230803 完成\n",
"任务 20230802 完成\n",
"任务 20230801 完成\n",
"任务 20230731 完成\n",
"任务 20230728 完成\n",
"任务 20230727 完成\n",
"任务 20230726 完成\n",
"任务 20230725 完成\n",
"任务 20230724 完成\n",
"任务 20230721 完成\n",
"任务 20230720 完成\n",
"任务 20230719 完成\n",
"任务 20230718 完成\n",
"任务 20230717 完成\n",
"任务 20230714 完成\n",
"任务 20230713 完成\n",
"任务 20230712 完成\n",
"任务 20230711 完成\n",
"任务 20230710 完成\n",
"任务 20230707 完成\n",
"任务 20230706 完成\n",
"任务 20230705 完成\n",
"任务 20230704 完成\n",
"任务 20230703 完成\n",
"任务 20230630 完成\n",
"任务 20230629 完成\n",
"任务 20230628 完成\n",
"任务 20230627 完成\n",
"任务 20230626 完成\n",
"任务 20230621 完成\n",
"任务 20230620 完成\n",
"任务 20230619 完成\n",
"任务 20230616 完成\n",
"任务 20230615 完成\n",
"任务 20230614 完成\n",
"任务 20230613 完成\n",
"任务 20230612 完成\n",
"任务 20230609 完成\n",
"任务 20230608 完成\n",
"任务 20230607 完成\n",
"任务 20230606 完成\n",
"任务 20230605 完成\n",
"任务 20230602 完成\n",
"任务 20230601 完成\n",
"任务 20230531 完成\n",
"任务 20230530 完成\n",
"任务 20230529 完成\n",
"任务 20230526 完成\n",
"任务 20230525 完成\n",
"任务 20230524 完成\n",
"任务 20230523 完成\n",
"任务 20230522 完成\n",
"任务 20230519 完成\n",
"任务 20230518 完成\n",
"任务 20230517 完成\n",
"任务 20230516 完成\n",
"任务 20230515 完成\n",
"任务 20230512 完成\n",
"任务 20230511 完成\n",
"任务 20230510 完成\n",
"任务 20230509 完成\n",
"任务 20230508 完成\n",
"任务 20230505 完成\n",
"任务 20230504 完成\n",
"任务 20230428 完成\n",
"任务 20230427 完成\n",
"任务 20230426 完成\n",
"任务 20230425 完成\n",
"任务 20230424 完成\n",
"任务 20230421 完成\n",
"任务 20230420 完成\n",
"任务 20230419 完成\n",
"任务 20230418 完成\n",
"任务 20230417 完成\n",
"任务 20230414 完成\n",
"任务 20230413 完成\n",
"任务 20230412 完成\n",
"任务 20230411 完成\n",
"任务 20230410 完成\n",
"任务 20230406 完成\n",
"任务 20230407 完成\n",
"任务 20230404 完成\n",
"任务 20230403 完成\n",
"任务 20230331 完成\n",
"任务 20230330 完成\n",
"任务 20230329 完成\n",
"任务 20230328 完成\n",
"任务 20230327 完成\n",
"任务 20230324 完成\n",
"任务 20230323 完成\n",
"任务 20230322 完成\n",
"任务 20230321 完成\n",
"任务 20230320 完成\n",
"任务 20230317 完成\n",
"任务 20230316 完成\n",
"任务 20230315 完成\n",
"任务 20230314 完成\n",
"任务 20230310 完成\n",
"任务 20230313 完成\n",
"任务 20230308 完成\n",
"任务 20230309 完成\n",
"任务 20230306 完成\n",
"任务 20230307 完成\n",
"任务 20230303 完成\n",
"任务 20230302 完成\n",
"任务 20230301 完成\n",
"任务 20230228 完成\n",
"任务 20230227 完成\n",
"任务 20230224 完成\n",
"任务 20230223 完成\n",
"任务 20230222 完成\n",
"任务 20230221 完成\n",
"任务 20230220 完成\n",
"任务 20230217 完成\n",
"任务 20230216 完成\n",
"任务 20230215 完成\n",
"任务 20230214 完成\n",
"任务 20230213 完成\n",
"任务 20230210 完成\n",
"任务 20230209 完成\n",
"任务 20230208 完成\n",
"任务 20230207 完成\n",
"任务 20230206 完成\n",
"任务 20230203 完成\n",
"任务 20230202 完成\n",
"任务 20230201 完成\n",
"任务 20230131 完成\n",
"任务 20230130 完成\n",
"任务 20230120 完成\n",
"任务 20230119 完成\n",
"任务 20230118 完成\n",
"任务 20230117 完成\n",
"任务 20230116 完成\n",
"任务 20230113 完成\n",
"任务 20230112 完成\n",
"任务 20230111 完成\n",
"任务 20230110 完成\n",
"任务 20230109 完成\n",
"任务 20230106 完成\n",
"任务 20230105 完成\n",
"任务 20230104 完成\n",
"任务 20230103 完成\n",
"任务 20221230 完成\n",
"任务 20221229 完成\n",
"任务 20221228 完成\n",
"任务 20221227 完成\n",
"任务 20221226 完成\n",
"任务 20221223 完成\n",
"任务 20221222 完成\n",
"任务 20221221 完成\n",
"任务 20221220 完成\n",
"任务 20221219 完成\n",
"任务 20221216 完成\n",
"任务 20221215 完成\n",
"任务 20221214 完成\n",
"任务 20221213 完成\n",
"任务 20221212 完成\n",
"任务 20221209 完成\n",
"任务 20221208 完成\n",
"任务 20221207 完成\n",
"任务 20221206 完成\n",
"任务 20221205 完成\n",
"任务 20221202 完成\n",
"任务 20221201 完成\n",
"任务 20221130 完成\n",
"任务 20221129 完成\n",
"任务 20221128 完成\n",
"任务 20221125 完成\n",
"任务 20221124 完成\n",
"任务 20221123 完成\n",
"任务 20221122 完成\n",
"任务 20221121 完成\n",
"任务 20221118 完成\n",
"任务 20221117 完成\n",
"任务 20221116 完成\n",
"任务 20221115 完成\n",
"任务 20221114 完成\n",
"任务 20221111 完成\n",
"任务 20221110 完成\n",
"任务 20221109 完成\n",
"任务 20221108 完成\n",
"任务 20221107 完成\n",
"任务 20221104 完成\n",
"任务 20221103 完成\n",
"任务 20221102 完成\n",
"任务 20221101 完成\n",
"任务 20221031 完成\n",
"任务 20221027 完成\n",
"任务 20221028 完成\n",
"任务 20221026 完成\n",
"任务 20221025 完成\n",
"任务 20221024 完成\n",
"任务 20221021 完成\n",
"任务 20221020 完成\n",
"任务 20221019 完成\n",
"任务 20221018 完成\n",
"任务 20221017 完成\n",
"任务 20221014 完成\n",
"任务 20221013 完成\n",
"任务 20221012 完成\n",
"任务 20221011 完成\n",
"任务 20221010 完成\n",
"任务 20220930 完成\n",
"任务 20220929 完成\n",
"任务 20220928 完成\n",
"任务 20220927 完成\n",
"任务 20220926 完成\n",
"任务 20220923 完成\n",
"任务 20220922 完成\n",
"任务 20220921 完成\n",
"任务 20220920 完成\n",
"任务 20220919 完成\n",
"任务 20220916 完成\n",
"任务 20220915 完成\n",
"任务 20220914 完成\n",
"任务 20220913 完成\n",
"任务 20220909 完成\n",
"任务 20220908 完成\n",
"任务 20220907 完成\n",
"任务 20220906 完成\n",
"任务 20220905 完成\n",
"任务 20220902 完成\n",
"任务 20220901 完成\n",
"任务 20220831 完成\n",
"任务 20220830 完成\n",
"任务 20220829 完成\n",
"任务 20220826 完成\n",
"任务 20220825 完成\n",
"任务 20220824 完成\n",
"任务 20220823 完成\n",
"任务 20220822 完成\n",
"任务 20220819 完成\n",
"任务 20220818 完成\n",
"任务 20220817 完成\n",
"任务 20220816 完成\n",
"任务 20220815 完成\n",
"任务 20220812 完成\n",
"任务 20220811 完成\n",
"任务 20220810 完成\n",
"任务 20220809 完成\n",
"任务 20220808 完成\n",
"任务 20220805 完成\n",
"任务 20220804 完成\n",
"任务 20220803 完成\n",
"任务 20220802 完成\n",
"任务 20220801 完成\n",
"任务 20220729 完成\n",
"任务 20220728 完成\n",
"任务 20220727 完成\n",
"任务 20220726 完成\n",
"任务 20220725 完成\n",
"任务 20220722 完成\n",
"任务 20220721 完成\n",
"任务 20220720 完成\n",
"任务 20220719 完成\n",
"任务 20220718 完成\n",
"任务 20220715 完成\n",
"任务 20220714 完成\n",
"任务 20220713 完成\n",
"任务 20220712 完成\n",
"任务 20220711 完成\n",
"任务 20220708 完成\n",
"任务 20220707 完成\n",
"任务 20220706 完成\n",
"任务 20220705 完成\n",
"任务 20220701 完成\n",
"任务 20220704 完成\n",
"任务 20220630 完成\n",
"任务 20220629 完成\n",
"任务 20220628 完成\n",
"任务 20220627 完成\n",
"任务 20220624 完成\n",
"任务 20220623 完成\n",
"任务 20220622 完成\n",
"任务 20220621 完成\n",
"任务 20220620 完成\n",
"任务 20220617 完成\n",
"任务 20220616 完成\n",
"任务 20220615 完成\n",
"任务 20220614 完成\n",
"任务 20220613 完成\n",
"任务 20220610 完成\n",
"任务 20220609 完成\n",
"任务 20220608 完成\n",
"任务 20220607 完成\n",
"任务 20220606 完成\n",
"任务 20220602 完成\n",
"任务 20220601 完成\n",
"任务 20220531 完成\n",
"任务 20220530 完成\n",
"任务 20220527 完成\n",
"任务 20220526 完成\n",
"任务 20220525 完成\n",
"任务 20220524 完成\n",
"任务 20220523 完成\n",
"任务 20220520 完成\n",
"任务 20220519 完成\n",
"任务 20220518 完成\n",
"任务 20220517 完成\n",
"任务 20220516 完成\n",
"任务 20220513 完成\n",
"任务 20220512 完成\n",
"任务 20220511 完成\n",
"任务 20220510 完成\n",
"任务 20220509 完成\n",
"任务 20220506 完成\n",
"任务 20220505 完成\n",
"任务 20220429 完成\n",
"任务 20220428 完成\n",
"任务 20220427 完成\n",
"任务 20220426 完成\n",
"任务 20220425 完成\n",
"任务 20220422 完成\n",
"任务 20220421 完成\n",
"任务 20220420 完成\n",
"任务 20220419 完成\n",
"任务 20220418 完成\n",
"任务 20220415 完成\n",
"任务 20220414 完成\n",
"任务 20220413 完成\n",
"任务 20220412 完成\n",
"任务 20220411 完成\n",
"任务 20220408 完成\n",
"任务 20220407 完成\n",
"任务 20220406 完成\n",
"任务 20220401 完成\n",
"任务 20220331 完成\n",
"任务 20220330 完成\n",
"任务 20220329 完成\n",
"任务 20220328 完成\n",
"任务 20220325 完成\n",
"任务 20220324 完成\n",
"任务 20220323 完成\n",
"任务 20220322 完成\n",
"任务 20220321 完成\n",
"任务 20220318 完成\n",
"任务 20220317 完成\n",
"任务 20220316 完成\n",
"任务 20220315 完成\n",
"任务 20220314 完成\n",
"任务 20220311 完成\n",
"任务 20220310 完成\n",
"任务 20220309 完成\n",
"任务 20220308 完成\n",
"任务 20220307 完成\n",
"任务 20220304 完成\n",
"任务 20220303 完成\n",
"任务 20220302 完成\n",
"任务 20220301 完成\n",
"任务 20220228 完成\n",
"任务 20220225 完成\n",
"任务 20220224 完成\n",
"任务 20220223 完成\n",
"任务 20220221 完成\n",
"任务 20220222 完成\n",
"任务 20220218 完成\n",
"任务 20220216 完成\n",
"任务 20220217 完成\n",
"任务 20220215 完成\n",
"任务 20220214 完成\n",
"任务 20220211 完成\n",
"任务 20220210 完成\n",
"任务 20220209 完成\n",
"任务 20220208 完成\n",
"任务 20220207 完成\n",
"任务 20220128 完成\n",
"任务 20220127 完成\n",
"任务 20220126 完成\n",
"任务 20220125 完成\n",
"任务 20220124 完成\n",
"任务 20220121 完成\n",
"任务 20220120 完成\n",
"任务 20220119 完成\n",
"任务 20220118 完成\n",
"任务 20220114 完成\n",
"任务 20220117 完成\n",
"任务 20220113 完成\n",
"任务 20220112 完成\n",
"任务 20220111 完成\n",
"任务 20220110 完成\n",
"任务 20220107 完成\n",
"任务 20220106 完成\n",
"任务 20220105 完成\n",
"任务 20220104 完成\n",
"任务 20211231 完成\n",
"任务 20211230 完成\n",
"任务 20211229 完成\n",
"任务 20211228 完成\n",
"任务 20211227 完成\n",
"任务 20211224 完成\n",
"任务 20211223 完成\n",
"任务 20211222 完成\n",
"任务 20211221 完成\n",
"任务 20211220 完成\n",
"任务 20211217 完成\n",
"任务 20211216 完成\n",
"任务 20211215 完成\n",
"任务 20211214 完成\n",
"任务 20211213 完成\n",
"任务 20211210 完成\n",
"任务 20211209 完成\n",
"任务 20211208 完成\n",
"任务 20211207 完成\n",
"任务 20211206 完成\n",
"任务 20211203 完成\n",
"任务 20211202 完成\n",
"任务 20211201 完成\n",
"任务 20211130 完成\n",
"任务 20211129 完成\n",
"任务 20211126 完成\n",
"任务 20211125 完成\n",
"任务 20211124 完成\n",
"任务 20211123 完成\n",
"任务 20211122 完成\n",
"任务 20211119 完成\n",
"任务 20211118 完成\n",
"任务 20211117 完成\n",
"任务 20211116 完成\n",
"任务 20211115 完成\n",
"任务 20211112 完成\n",
"任务 20211111 完成\n",
"任务 20211110 完成\n",
"任务 20211109 完成\n",
"任务 20211108 完成\n",
"任务 20211105 完成\n",
"任务 20211104 完成\n",
"任务 20211103 完成\n",
"任务 20211102 完成\n",
"任务 20211101 完成\n",
"任务 20211029 完成\n",
"任务 20211027 完成\n",
"任务 20211028 完成\n",
"任务 20211026 完成\n",
"任务 20211025 完成\n",
"任务 20211022 完成\n",
"任务 20211021 完成\n",
"任务 20211020 完成\n",
"任务 20211019 完成\n",
"任务 20211018 完成\n",
"任务 20211015 完成\n",
"任务 20211014 完成\n",
"任务 20211013 完成\n",
"任务 20211012 完成\n",
"任务 20211011 完成\n",
"任务 20211008 完成\n",
"任务 20210930 完成\n",
"任务 20210929 完成\n",
"任务 20210928 完成\n",
"任务 20210927 完成\n",
"任务 20210924 完成\n",
"任务 20210923 完成\n",
"任务 20210922 完成\n",
"任务 20210917 完成\n",
"任务 20210916 完成\n",
"任务 20210915 完成\n",
"任务 20210914 完成\n",
"任务 20210913 完成\n",
"任务 20210910 完成\n",
"任务 20210909 完成\n",
"任务 20210908 完成\n",
"任务 20210907 完成\n",
"任务 20210906 完成\n",
"任务 20210903 完成\n",
"任务 20210902 完成\n",
"任务 20210901 完成\n",
"任务 20210831 完成\n",
"任务 20210830 完成\n",
"任务 20210827 完成\n",
"任务 20210826 完成\n",
"任务 20210825 完成\n",
"任务 20210824 完成\n",
"任务 20210823 完成\n",
"任务 20210820 完成\n",
"任务 20210819 完成\n",
"任务 20210818 完成\n",
"任务 20210817 完成\n",
"任务 20210816 完成\n",
"任务 20210813 完成\n",
"任务 20210812 完成\n",
"任务 20210811 完成\n",
"任务 20210810 完成\n",
"任务 20210809 完成\n",
"任务 20210806 完成\n",
"任务 20210805 完成\n",
"任务 20210804 完成\n",
"任务 20210803 完成\n",
"任务 20210802 完成\n",
"任务 20210730 完成\n",
"任务 20210729 完成\n",
"任务 20210728 完成\n",
"任务 20210727 完成\n",
"任务 20210726 完成\n",
"任务 20210723 完成\n",
"任务 20210722 完成\n",
"任务 20210721 完成\n",
"任务 20210720 完成\n",
"任务 20210719 完成\n",
"任务 20210716 完成\n",
"任务 20210715 完成\n",
"任务 20210714 完成\n",
"任务 20210712 完成\n",
"任务 20210713 完成\n",
"任务 20210709 完成\n",
"任务 20210708 完成\n",
"任务 20210707 完成\n",
"任务 20210706 完成\n",
"任务 20210705 完成\n",
"任务 20210702 完成\n",
"任务 20210701 完成\n",
"任务 20210630 完成\n",
"任务 20210629 完成\n",
"任务 20210628 完成\n",
"任务 20210625 完成\n",
"任务 20210624 完成\n",
"任务 20210623 完成\n",
"任务 20210622 完成\n",
"任务 20210621 完成\n",
"任务 20210618 完成\n",
"任务 20210617 完成\n",
"任务 20210616 完成\n",
"任务 20210611 完成\n",
"任务 20210615 完成\n",
"任务 20210610 完成\n",
"任务 20210609 完成\n",
"任务 20210608 完成\n",
"任务 20210607 完成\n",
"任务 20210604 完成\n",
"任务 20210603 完成\n",
"任务 20210602 完成\n",
"任务 20210601 完成\n",
"任务 20210531 完成\n",
"任务 20210528 完成\n",
"任务 20210527 完成\n",
"任务 20210526 完成\n",
"任务 20210525 完成\n",
"任务 20210524 完成\n",
"任务 20210521 完成\n",
"任务 20210520 完成\n",
"任务 20210519 完成\n",
"任务 20210518 完成\n",
"任务 20210517 完成\n",
"任务 20210514 完成\n",
"任务 20210513 完成\n",
"任务 20210512 完成\n",
"任务 20210511 完成\n",
"任务 20210510 完成\n",
"任务 20210507 完成\n",
"任务 20210506 完成\n",
"任务 20210430 完成\n",
"任务 20210429 完成\n",
"任务 20210428 完成\n",
"任务 20210427 完成\n",
"任务 20210426 完成\n",
"任务 20210423 完成\n",
"任务 20210422 完成\n",
"任务 20210421 完成\n",
"任务 20210420 完成\n",
"任务 20210419 完成\n",
"任务 20210416 完成\n",
"任务 20210415 完成\n",
"任务 20210414 完成\n",
"任务 20210413 完成\n",
"任务 20210412 完成\n",
"任务 20210409 完成\n",
"任务 20210408 完成\n",
"任务 20210407 完成\n",
"任务 20210406 完成\n",
"任务 20210402 完成\n",
"任务 20210401 完成\n",
"任务 20210331 完成\n",
"任务 20210330 完成\n",
"任务 20210329 完成\n",
"任务 20210326 完成\n",
"任务 20210325 完成\n",
"任务 20210324 完成\n",
"任务 20210323 完成\n",
"任务 20210322 完成\n",
"任务 20210319 完成\n",
"任务 20210318 完成\n",
"任务 20210317 完成\n",
"任务 20210316 完成\n",
"任务 20210315 完成\n",
"任务 20210312 完成\n",
"任务 20210311 完成\n",
"任务 20210310 完成\n",
"任务 20210309 完成\n",
"任务 20210308 完成\n",
"任务 20210305 完成\n",
"任务 20210304 完成\n",
"任务 20210303 完成\n",
"任务 20210302 完成\n",
"任务 20210301 完成\n",
"任务 20210226 完成\n",
"任务 20210225 完成\n",
"任务 20210224 完成\n",
"任务 20210223 完成\n",
"任务 20210222 完成\n",
"任务 20210219 完成\n",
"任务 20210218 完成\n",
"任务 20210210 完成\n",
"任务 20210209 完成\n",
"任务 20210208 完成\n",
"任务 20210205 完成\n",
"任务 20210204 完成\n",
"任务 20210203 完成\n",
"任务 20210202 完成\n",
"任务 20210201 完成\n",
"任务 20210129 完成\n",
"任务 20210128 完成\n",
"任务 20210127 完成\n",
"任务 20210126 完成\n",
"任务 20210125 完成\n",
"任务 20210122 完成\n",
"任务 20210121 完成\n",
"任务 20210120 完成\n",
"任务 20210119 完成\n",
"任务 20210118 完成\n",
"任务 20210115 完成\n",
"任务 20210114 完成\n",
"任务 20210112 完成\n",
"任务 20210113 完成\n",
"任务 20210111 完成\n",
"任务 20210108 完成\n",
"任务 20210107 完成\n",
"任务 20210106 完成\n",
"任务 20210105 完成\n",
"任务 20210104 完成\n",
"任务 20201231 完成\n",
"任务 20201230 完成\n",
"任务 20201229 完成\n",
"任务 20201228 完成\n",
"任务 20201225 完成\n",
"任务 20201224 完成\n",
"任务 20201223 完成\n",
"任务 20201222 完成\n",
"任务 20201221 完成\n",
"任务 20201218 完成\n",
"任务 20201217 完成\n",
"任务 20201216 完成\n",
"任务 20201215 完成\n",
"任务 20201214 完成\n",
"任务 20201211 完成\n",
"任务 20201210 完成\n",
"任务 20201209 完成\n",
"任务 20201208 完成\n",
"任务 20201207 完成\n",
"任务 20201204 完成\n",
"任务 20201203 完成\n",
"任务 20201202 完成\n",
"任务 20201201 完成\n",
"任务 20201130 完成\n",
"任务 20201127 完成\n",
"任务 20201126 完成\n",
"任务 20201125 完成\n",
"任务 20201124 完成\n",
"任务 20201123 完成\n",
"任务 20201120 完成\n",
"任务 20201119 完成\n",
"任务 20201118 完成\n",
"任务 20201117 完成\n",
"任务 20201116 完成\n",
"任务 20201113 完成\n",
"任务 20201112 完成\n",
"任务 20201111 完成\n",
"任务 20201110 完成\n",
"任务 20201109 完成\n",
"任务 20201106 完成\n",
"任务 20201105 完成\n",
"任务 20201104 完成\n",
"任务 20201103 完成\n",
"任务 20201102 完成\n",
"任务 20201030 完成\n",
"任务 20201029 完成\n",
"任务 20201028 完成\n",
"任务 20201027 完成\n",
"任务 20201026 完成\n",
"任务 20201023 完成\n",
"任务 20201022 完成\n",
"任务 20201021 完成\n",
"任务 20201020 完成\n",
"任务 20201019 完成\n",
"任务 20201016 完成\n",
"任务 20201015 完成\n",
"任务 20201014 完成\n",
"任务 20201013 完成\n",
"任务 20201012 完成\n",
"任务 20201009 完成\n",
"任务 20200930 完成\n",
"任务 20200929 完成\n",
"任务 20200928 完成\n",
"任务 20200925 完成\n",
"任务 20200924 完成\n",
"任务 20200923 完成\n",
"任务 20200922 完成\n",
"任务 20200921 完成\n",
"任务 20200918 完成\n",
"任务 20200917 完成\n",
"任务 20200916 完成\n",
"任务 20200915 完成\n",
"任务 20200914 完成\n",
"任务 20200911 完成\n",
"任务 20200910 完成\n",
"任务 20200909 完成\n",
"任务 20200908 完成\n",
"任务 20200907 完成\n",
"任务 20200904 完成\n",
"任务 20200903 完成\n",
"任务 20200902 完成\n",
"任务 20200901 完成\n",
"任务 20200831 完成\n",
"任务 20200828 完成\n",
"任务 20200827 完成\n",
"任务 20200826 完成\n",
"任务 20200825 完成\n",
"任务 20200824 完成\n",
"任务 20200821 完成\n",
"任务 20200820 完成\n",
"任务 20200819 完成\n",
"任务 20200818 完成\n",
"任务 20200817 完成\n",
"任务 20200814 完成\n",
"任务 20200813 完成\n",
"任务 20200812 完成\n",
"任务 20200811 完成\n",
"任务 20200810 完成\n",
"任务 20200807 完成\n",
"任务 20200806 完成\n",
"任务 20200805 完成\n",
"任务 20200804 完成\n",
"任务 20200731 完成\n",
"任务 20200803 完成\n",
"任务 20200730 完成\n",
"任务 20200729 完成\n",
"任务 20200728 完成\n",
"任务 20200727 完成\n",
"任务 20200724 完成\n",
"任务 20200723 完成\n",
"任务 20200722 完成\n",
"任务 20200721 完成\n",
"任务 20200717 完成\n",
"任务 20200720 完成\n",
"任务 20200716 完成\n",
"任务 20200715 完成\n",
"任务 20200714 完成\n",
"任务 20200713 完成\n",
"任务 20200709 完成\n",
"任务 20200710 完成\n",
"任务 20200708 完成\n",
"任务 20200707 完成\n",
"任务 20200706 完成\n",
"任务 20200703 完成\n",
"任务 20200702 完成\n",
"任务 20200701 完成\n",
"任务 20200630 完成\n",
"任务 20200629 完成\n",
"任务 20200624 完成\n",
"任务 20200623 完成\n",
"任务 20200622 完成\n",
"任务 20200619 完成\n",
"任务 20200618 完成\n",
"任务 20200617 完成\n",
"任务 20200616 完成\n",
"任务 20200615 完成\n",
"任务 20200612 完成\n",
"任务 20200611 完成\n",
"任务 20200610 完成\n",
"任务 20200609 完成\n",
"任务 20200608 完成\n",
"任务 20200605 完成\n",
"任务 20200604 完成\n",
"任务 20200603 完成\n",
"任务 20200602 完成\n",
"任务 20200601 完成\n",
"任务 20200529 完成\n",
"任务 20200528 完成\n",
"任务 20200527 完成\n",
"任务 20200526 完成\n",
"任务 20200522 完成\n",
"任务 20200525 完成\n",
"任务 20200520 完成\n",
"任务 20200521 完成\n",
"任务 20200519 完成\n",
"任务 20200518 完成\n",
"任务 20200515 完成\n",
"任务 20200514 完成\n",
"任务 20200513 完成\n",
"任务 20200512 完成\n",
"任务 20200511 完成\n",
"任务 20200508 完成\n",
"任务 20200507 完成\n",
"任务 20200506 完成\n",
"任务 20200430 完成\n",
"任务 20200429 完成\n",
"任务 20200428 完成\n",
"任务 20200427 完成\n",
"任务 20200424 完成\n",
"任务 20200423 完成\n",
"任务 20200422 完成\n",
"任务 20200421 完成\n",
"任务 20200420 完成\n",
"任务 20200417 完成\n",
"任务 20200416 完成\n",
"任务 20200415 完成\n",
"任务 20200414 完成\n",
"任务 20200413 完成\n",
"任务 20200410 完成\n",
"任务 20200409 完成\n",
"任务 20200408 完成\n",
"任务 20200407 完成\n",
"任务 20200403 完成\n",
"任务 20200402 完成\n",
"任务 20200401 完成\n",
"任务 20200331 完成\n",
"任务 20200330 完成\n",
"任务 20200327 完成\n",
"任务 20200326 完成\n",
"任务 20200325 完成\n",
"任务 20200324 完成\n",
"任务 20200323 完成\n",
"任务 20200320 完成\n",
"任务 20200319 完成\n",
"任务 20200318 完成\n",
"任务 20200317 完成\n",
"任务 20200316 完成\n",
"任务 20200313 完成\n",
"任务 20200312 完成\n",
"任务 20200311 完成\n",
"任务 20200310 完成\n",
"任务 20200309 完成\n",
"任务 20200306 完成\n",
"任务 20200305 完成\n",
"任务 20200304 完成\n",
"任务 20200303 完成\n",
"任务 20200302 完成\n",
"任务 20200228 完成\n",
"任务 20200227 完成\n",
"任务 20200226 完成\n",
"任务 20200225 完成\n",
"任务 20200224 完成\n",
"任务 20200221 完成\n",
"任务 20200220 完成\n",
"任务 20200219 完成\n",
"任务 20200218 完成\n",
"任务 20200217 完成\n",
"任务 20200214 完成\n",
"任务 20200213 完成\n",
"任务 20200212 完成\n",
"任务 20200211 完成\n",
"任务 20200210 完成\n",
"任务 20200207 完成\n",
"任务 20200206 完成\n",
"任务 20200205 完成\n",
"任务 20200204 完成\n",
"任务 20200203 完成\n",
"任务 20200123 完成\n",
"任务 20200122 完成\n",
"任务 20200121 完成\n",
"任务 20200120 完成\n",
"任务 20200117 完成\n",
"任务 20200116 完成\n",
"任务 20200115 完成\n",
"任务 20200114 完成\n",
"任务 20200113 完成\n",
"任务 20200110 完成\n",
"任务 20200109 完成\n",
"任务 20200108 完成\n",
"任务 20200107 完成\n",
"任务 20200106 完成\n",
"任务 20200103 完成\n",
"任务 20200102 完成\n",
"任务 20191231 完成\n",
"任务 20191230 完成\n",
"任务 20191227 完成\n",
"任务 20191226 完成\n",
"任务 20191225 完成\n",
"任务 20191224 完成\n",
"任务 20191223 完成\n",
"任务 20191220 完成\n",
"任务 20191219 完成\n",
"任务 20191218 完成\n",
"任务 20191217 完成\n",
"任务 20191216 完成\n",
"任务 20191213 完成\n",
"任务 20191212 完成\n",
"任务 20191211 完成\n",
"任务 20191210 完成\n",
"任务 20191209 完成\n",
"任务 20191206 完成\n",
"任务 20191205 完成\n",
"任务 20191204 完成\n",
"任务 20191203 完成\n",
"任务 20191202 完成\n",
"任务 20191129 完成\n",
"任务 20191128 完成\n",
"任务 20191127 完成\n",
"任务 20191126 完成\n",
"任务 20191125 完成\n",
"任务 20191122 完成\n",
"任务 20191121 完成\n",
"任务 20191120 完成\n",
"任务 20191119 完成\n",
"任务 20191118 完成\n",
"任务 20191115 完成\n",
"任务 20191114 完成\n",
"任务 20191113 完成\n",
"任务 20191112 完成\n",
"任务 20191111 完成\n",
"任务 20191108 完成\n",
"任务 20191107 完成\n",
"任务 20191106 完成\n",
"任务 20191105 完成\n",
"任务 20191104 完成\n",
"任务 20191101 完成\n",
"任务 20191031 完成\n",
"任务 20191030 完成\n",
"任务 20191029 完成\n",
"任务 20191028 完成\n",
"任务 20191025 完成\n",
"任务 20191024 完成\n",
"任务 20191023 完成\n",
"任务 20191022 完成\n",
"任务 20191021 完成\n",
"任务 20191018 完成\n",
"任务 20191017 完成\n",
"任务 20191016 完成\n",
"任务 20191015 完成\n",
"任务 20191014 完成\n",
"任务 20191011 完成\n",
"任务 20191010 完成\n",
"任务 20191009 完成\n",
"任务 20191008 完成\n",
"任务 20190930 完成\n",
"任务 20190927 完成\n",
"任务 20190926 完成\n",
"任务 20190925 完成\n",
"任务 20190924 完成\n",
"任务 20190923 完成\n",
"任务 20190920 完成\n",
"任务 20190919 完成\n",
"任务 20190918 完成\n",
"任务 20190917 完成\n",
"任务 20190916 完成\n",
"任务 20190912 完成\n",
"任务 20190911 完成\n",
"任务 20190910 完成\n",
"任务 20190909 完成\n",
"任务 20190906 完成\n",
"任务 20190905 完成\n",
"任务 20190904 完成\n",
"任务 20190903 完成\n",
"任务 20190902 完成\n",
"任务 20190830 完成\n",
"任务 20190829 完成\n",
"任务 20190828 完成\n",
"任务 20190827 完成\n",
"任务 20190826 完成\n",
"任务 20190823 完成\n",
"任务 20190822 完成\n",
"任务 20190821 完成\n",
"任务 20190820 完成\n",
"任务 20190819 完成\n",
"任务 20190816 完成\n",
"任务 20190815 完成\n",
"任务 20190814 完成\n",
"任务 20190813 完成\n",
"任务 20190812 完成\n",
"任务 20190809 完成\n",
"任务 20190808 完成\n",
"任务 20190807 完成\n",
"任务 20190806 完成\n",
"任务 20190805 完成\n",
"任务 20190801 完成\n",
"任务 20190802 完成\n",
"任务 20190731 完成\n",
"任务 20190730 完成\n",
"任务 20190729 完成\n",
"任务 20190726 完成\n",
"任务 20190725 完成\n",
"任务 20190724 完成\n",
"任务 20190723 完成\n",
"任务 20190722 完成\n",
"任务 20190719 完成\n",
"任务 20190718 完成\n",
"任务 20190716 完成\n",
"任务 20190717 完成\n",
"任务 20190715 完成\n",
"任务 20190712 完成\n",
"任务 20190711 完成\n",
"任务 20190710 完成\n",
"任务 20190709 完成\n",
"任务 20190708 完成\n",
"任务 20190705 完成\n",
"任务 20190704 完成\n",
"任务 20190703 完成\n",
"任务 20190702 完成\n",
"任务 20190701 完成\n",
"任务 20190628 完成\n",
"任务 20190627 完成\n",
"任务 20190626 完成\n",
"任务 20190625 完成\n",
"任务 20190624 完成\n",
"任务 20190621 完成\n",
"任务 20190620 完成\n",
"任务 20190619 完成\n",
"任务 20190618 完成\n",
"任务 20190617 完成\n",
"任务 20190614 完成\n",
"任务 20190613 完成\n",
"任务 20190612 完成\n",
"任务 20190611 完成\n",
"任务 20190610 完成\n",
"任务 20190606 完成\n",
"任务 20190605 完成\n",
"任务 20190604 完成\n",
"任务 20190603 完成\n",
"任务 20190531 完成\n",
"任务 20190530 完成\n",
"任务 20190529 完成\n",
"任务 20190528 完成\n",
"任务 20190527 完成\n",
"任务 20190524 完成\n",
"任务 20190523 完成\n",
"任务 20190522 完成\n",
"任务 20190521 完成\n",
"任务 20190520 完成\n",
"任务 20190517 完成\n",
"任务 20190516 完成\n",
"任务 20190515 完成\n",
"任务 20190514 完成\n",
"任务 20190513 完成\n",
"任务 20190510 完成\n",
"任务 20190509 完成\n",
"任务 20190508 完成\n",
"任务 20190507 完成\n",
"任务 20190506 完成\n",
"任务 20190430 完成\n",
"任务 20190429 完成\n",
"任务 20190426 完成\n",
"任务 20190425 完成\n",
"任务 20190424 完成\n",
"任务 20190423 完成\n",
"任务 20190422 完成\n",
"任务 20190419 完成\n",
"任务 20190418 完成\n",
"任务 20190417 完成\n",
"任务 20190416 完成\n",
"任务 20190415 完成\n",
"任务 20190412 完成\n",
"任务 20190411 完成\n",
"任务 20190410 完成\n",
"任务 20190409 完成\n",
"任务 20190408 完成\n",
"任务 20190404 完成\n",
"任务 20190403 完成\n",
"任务 20190402 完成\n",
"任务 20190401 完成\n",
"任务 20190329 完成\n",
"任务 20190328 完成\n",
"任务 20190327 完成\n",
"任务 20190326 完成\n",
"任务 20190325 完成\n",
"任务 20190322 完成\n",
"任务 20190321 完成\n",
"任务 20190320 完成\n",
"任务 20190319 完成\n",
"任务 20190318 完成\n",
"任务 20190315 完成\n",
"任务 20190314 完成\n",
"任务 20190313 完成\n",
"任务 20190312 完成\n",
"任务 20190311 完成\n",
"任务 20190308 完成\n",
"任务 20190307 完成\n",
"任务 20190306 完成\n",
"任务 20190305 完成\n",
"任务 20190304 完成\n",
"任务 20190301 完成\n",
"任务 20190228 完成\n",
"任务 20190227 完成\n",
"任务 20190226 完成\n",
"任务 20190225 完成\n",
"任务 20190222 完成\n",
"任务 20190221 完成\n",
"任务 20190220 完成\n",
"任务 20190219 完成\n",
"任务 20190218 完成\n",
"任务 20190215 完成\n",
"任务 20190214 完成\n",
"任务 20190213 完成\n",
"任务 20190212 完成\n",
"任务 20190211 完成\n",
"任务 20190201 完成\n",
"任务 20190131 完成\n",
"任务 20190130 完成\n",
"任务 20190129 完成\n",
"任务 20190128 完成\n",
"任务 20190125 完成\n",
"任务 20190124 完成\n",
"任务 20190123 完成\n",
"任务 20190122 完成\n",
"任务 20190121 完成\n",
"任务 20190118 完成\n",
"任务 20190117 完成\n",
"任务 20190116 完成\n",
"任务 20190115 完成\n",
"任务 20190114 完成\n",
"任务 20190111 完成\n",
"任务 20190110 完成\n",
"任务 20190109 完成\n",
"任务 20190108 完成\n",
"任务 20190107 完成\n",
"任务 20190104 完成\n",
"任务 20190103 完成\n",
"任务 20190102 完成\n",
"任务 20181228 完成\n",
"任务 20181227 完成\n",
"任务 20181226 完成\n",
"任务 20181224 完成\n",
"任务 20181225 完成\n",
"任务 20181221 完成\n",
"任务 20181220 完成\n",
"任务 20181219 完成\n",
"任务 20181218 完成\n",
"任务 20181217 完成\n",
"任务 20181214 完成\n",
"任务 20181213 完成\n",
"任务 20181212 完成\n",
"任务 20181211 完成\n",
"任务 20181210 完成\n",
"任务 20181207 完成\n",
"任务 20181206 完成\n",
"任务 20181205 完成\n",
"任务 20181204 完成\n",
"任务 20181203 完成\n",
"任务 20181130 完成\n",
"任务 20181129 完成\n",
"任务 20181128 完成\n",
"任务 20181127 完成\n",
"任务 20181126 完成\n",
"任务 20181123 完成\n",
"任务 20181122 完成\n",
"任务 20181121 完成\n",
"任务 20181120 完成\n",
"任务 20181119 完成\n",
"任务 20181116 完成\n",
"任务 20181115 完成\n",
"任务 20181114 完成\n",
"任务 20181113 完成\n",
"任务 20181112 完成\n",
"任务 20181109 完成\n",
"任务 20181108 完成\n",
"任务 20181107 完成\n",
"任务 20181106 完成\n",
"任务 20181105 完成\n",
"任务 20181102 完成\n",
"任务 20181101 完成\n",
"任务 20181031 完成\n",
"任务 20181030 完成\n",
"任务 20181029 完成\n",
"任务 20181026 完成\n",
"任务 20181025 完成\n",
"任务 20181024 完成\n",
"任务 20181023 完成\n",
"任务 20181022 完成\n",
"任务 20181019 完成\n",
"任务 20181018 完成\n",
"任务 20181017 完成\n",
"任务 20181016 完成\n",
"任务 20181015 完成\n",
"任务 20181012 完成\n",
"任务 20181011 完成\n",
"任务 20181010 完成\n",
"任务 20181009 完成\n",
"任务 20181008 完成\n",
"任务 20180928 完成\n",
"任务 20180927 完成\n",
"任务 20180926 完成\n",
"任务 20180925 完成\n",
"任务 20180921 完成\n",
"任务 20180920 完成\n",
"任务 20180919 完成\n",
"任务 20180918 完成\n",
"任务 20180917 完成\n",
"任务 20180914 完成\n",
"任务 20180913 完成\n",
"任务 20180912 完成\n",
"任务 20180911 完成\n",
"任务 20180910 完成\n",
"任务 20180907 完成\n",
"任务 20180906 完成\n",
"任务 20180905 完成\n",
"任务 20180904 完成\n",
"任务 20180903 完成\n",
"任务 20180831 完成\n",
"任务 20180830 完成\n",
"任务 20180829 完成\n",
"任务 20180828 完成\n",
"任务 20180827 完成\n",
"任务 20180824 完成\n",
"任务 20180823 完成\n",
"任务 20180822 完成\n",
"任务 20180821 完成\n",
"任务 20180820 完成\n",
"任务 20180817 完成\n",
"任务 20180816 完成\n",
"任务 20180815 完成\n",
"任务 20180814 完成\n",
"任务 20180813 完成\n",
"任务 20180810 完成\n",
"任务 20180809 完成\n",
"任务 20180808 完成\n",
"任务 20180807 完成\n",
"任务 20180806 完成\n",
"任务 20180803 完成\n",
"任务 20180802 完成\n",
"任务 20180801 完成\n",
"任务 20180731 完成\n",
"任务 20180730 完成\n",
"任务 20180727 完成\n",
"任务 20180726 完成\n",
"任务 20180725 完成\n",
"任务 20180724 完成\n",
"任务 20180723 完成\n",
"任务 20180720 完成\n",
"任务 20180719 完成\n",
"任务 20180718 完成\n",
"任务 20180717 完成\n",
"任务 20180716 完成\n",
"任务 20180713 完成\n",
"任务 20180712 完成\n",
"任务 20180711 完成\n",
"任务 20180710 完成\n",
"任务 20180709 完成\n",
"任务 20180706 完成\n",
"任务 20180705 完成\n",
"任务 20180704 完成\n",
"任务 20180703 完成\n",
"任务 20180702 完成\n",
"任务 20180629 完成\n",
"任务 20180628 完成\n",
"任务 20180627 完成\n",
"任务 20180626 完成\n",
"任务 20180625 完成\n",
"任务 20180622 完成\n",
"任务 20180621 完成\n",
"任务 20180620 完成\n",
"任务 20180619 完成\n",
"任务 20180615 完成\n",
"任务 20180614 完成\n",
"任务 20180613 完成\n",
"任务 20180612 完成\n",
"任务 20180611 完成\n",
"任务 20180608 完成\n",
"任务 20180607 完成\n",
"任务 20180606 完成\n",
"任务 20180605 完成\n",
"任务 20180604 完成\n",
"任务 20180531 完成\n",
"任务 20180601 完成\n",
"任务 20180530 完成\n",
"任务 20180529 完成\n",
"任务 20180528 完成\n",
"任务 20180525 完成\n",
"任务 20180523 完成\n",
"任务 20180524 完成\n",
"任务 20180522 完成\n",
"任务 20180521 完成\n",
"任务 20180518 完成\n",
"任务 20180517 完成\n",
"任务 20180516 完成\n",
"任务 20180515 完成\n",
"任务 20180514 完成\n",
"任务 20180511 完成\n",
"任务 20180510 完成\n",
"任务 20180509 完成\n",
"任务 20180508 完成\n",
"任务 20180507 完成\n",
"任务 20180504 完成\n",
"任务 20180503 完成\n",
"任务 20180502 完成\n",
"任务 20180427 完成\n",
"任务 20180426 完成\n",
"任务 20180425 完成\n",
"任务 20180424 完成\n",
"任务 20180423 完成\n",
"任务 20180420 完成\n",
"任务 20180419 完成\n",
"任务 20180418 完成\n",
"任务 20180417 完成\n",
"任务 20180416 完成\n",
"任务 20180413 完成\n",
"任务 20180412 完成\n",
"任务 20180411 完成\n",
"任务 20180410 完成\n",
"任务 20180409 完成\n",
"任务 20180404 完成\n",
"任务 20180403 完成\n",
"任务 20180402 完成\n",
"任务 20180330 完成\n",
"任务 20180329 完成\n",
"任务 20180328 完成\n",
"任务 20180327 完成\n",
"任务 20180326 完成\n",
"任务 20180323 完成\n",
"任务 20180322 完成\n",
"任务 20180321 完成\n",
"任务 20180320 完成\n",
"任务 20180319 完成\n",
"任务 20180316 完成\n",
"任务 20180315 完成\n",
"任务 20180314 完成\n",
"任务 20180312 完成\n",
"任务 20180313 完成\n",
"任务 20180309 完成\n",
"任务 20180308 完成\n",
"任务 20180307 完成\n",
"任务 20180306 完成\n",
"任务 20180305 完成\n",
"任务 20180302 完成\n",
"任务 20180301 完成\n",
"任务 20180228 完成\n",
"任务 20180227 完成\n",
"任务 20180226 完成\n",
"任务 20180223 完成\n",
"任务 20180222 完成\n",
"任务 20180214 完成\n",
"任务 20180213 完成\n",
"任务 20180212 完成\n",
"任务 20180209 完成\n",
"任务 20180208 完成\n",
"任务 20180207 完成\n",
"任务 20180206 完成\n",
"任务 20180205 完成\n",
"任务 20180202 完成\n",
"任务 20180201 完成\n",
"任务 20180131 完成\n",
"任务 20180130 完成\n",
"任务 20180129 完成\n",
"任务 20180126 完成\n",
"任务 20180125 完成\n",
"任务 20180124 完成\n",
"任务 20180123 完成\n",
"任务 20180122 完成\n",
"任务 20180119 完成\n",
"任务 20180118 完成\n",
"任务 20180117 完成\n",
"任务 20180116 完成\n",
"任务 20180115 完成\n",
"任务 20180112 完成\n",
"任务 20180111 完成\n",
"任务 20180110 完成\n",
"任务 20180109 完成\n",
"任务 20180108 完成\n",
"任务 20180105 完成\n",
"任务 20180104 完成\n",
"任务 20180103 完成\n",
"任务 20180102 完成\n",
"任务 20171229 完成\n",
"任务 20171228 完成\n",
"任务 20171227 完成\n",
"任务 20171226 完成\n",
"任务 20171225 完成\n",
"任务 20171222 完成\n",
"任务 20171221 完成\n",
"任务 20171220 完成\n",
"任务 20171219 完成\n",
"任务 20171218 完成\n",
"任务 20171215 完成\n",
"任务 20171214 完成\n",
"任务 20171213 完成\n",
"任务 20171212 完成\n",
"任务 20171211 完成\n",
"任务 20171208 完成\n",
"任务 20171207 完成\n",
"任务 20171206 完成\n",
"任务 20171205 完成\n",
"任务 20171204 完成\n",
"任务 20171201 完成\n",
"任务 20171130 完成\n",
"任务 20171129 完成\n",
"任务 20171128 完成\n",
"任务 20171127 完成\n",
"任务 20171124 完成\n",
"任务 20171123 完成\n",
"任务 20171122 完成\n",
"任务 20171121 完成\n",
"任务 20171120 完成\n",
"任务 20171117 完成\n",
"任务 20171116 完成\n",
"任务 20171115 完成\n",
"任务 20171114 完成\n",
"任务 20171113 完成\n",
"任务 20171110 完成\n",
"任务 20171109 完成\n",
"任务 20171108 完成\n",
"任务 20171107 完成\n",
"任务 20171106 完成\n",
"任务 20171103 完成\n",
"任务 20171102 完成\n",
"任务 20171101 完成\n",
"任务 20171031 完成\n",
"任务 20171030 完成\n",
"任务 20171027 完成\n",
"任务 20171026 完成\n",
"任务 20171025 完成\n",
"任务 20171024 完成\n",
"任务 20171023 完成\n",
"任务 20171020 完成\n",
"任务 20171019 完成\n",
"任务 20171018 完成\n",
"任务 20171017 完成\n",
"任务 20171016 完成\n",
"任务 20171013 完成\n",
"任务 20171012 完成\n",
"任务 20171011 完成\n",
"任务 20171010 完成\n",
"任务 20171009 完成\n",
"任务 20170929 完成\n",
"任务 20170928 完成\n",
"任务 20170927 完成\n",
"任务 20170926 完成\n",
"任务 20170925 完成\n",
"任务 20170922 完成\n",
"任务 20170921 完成\n",
"任务 20170920 完成\n",
"任务 20170919 完成\n",
"任务 20170918 完成\n",
"任务 20170915 完成\n",
"任务 20170914 完成\n",
"任务 20170913 完成\n",
"任务 20170912 完成\n",
"任务 20170911 完成\n",
"任务 20170908 完成\n",
"任务 20170907 完成\n",
"任务 20170906 完成\n",
"任务 20170905 完成\n",
"任务 20170904 完成\n",
"任务 20170901 完成\n",
"任务 20170831 完成\n",
"任务 20170830 完成\n",
"任务 20170829 完成\n",
"任务 20170828 完成\n",
"任务 20170825 完成\n",
"任务 20170824 完成\n",
"任务 20170823 完成\n",
"任务 20170822 完成\n",
"任务 20170821 完成\n",
"任务 20170818 完成\n",
"任务 20170817 完成\n",
"任务 20170816 完成\n",
"任务 20170815 完成\n",
"任务 20170814 完成\n",
"任务 20170811 完成\n",
"任务 20170810 完成\n",
"任务 20170809 完成\n",
"任务 20170808 完成\n",
"任务 20170807 完成\n",
"任务 20170804 完成\n",
"任务 20170803 完成\n",
"任务 20170802 完成\n",
"任务 20170801 完成\n",
"任务 20170731 完成\n",
"任务 20170728 完成\n",
"任务 20170727 完成\n",
"任务 20170726 完成\n",
"任务 20170725 完成\n",
"任务 20170724 完成\n",
"任务 20170721 完成\n",
"任务 20170720 完成\n",
"任务 20170719 完成\n",
"任务 20170718 完成\n",
"任务 20170717 完成\n",
"任务 20170714 完成\n",
"任务 20170713 完成\n",
"任务 20170712 完成\n",
"任务 20170711 完成\n",
"任务 20170710 完成\n",
"任务 20170707 完成\n",
"任务 20170706 完成\n",
"任务 20170705 完成\n",
"任务 20170704 完成\n",
"任务 20170703 完成\n",
"任务 20170630 完成\n",
"任务 20170629 完成\n",
"任务 20170628 完成\n",
"任务 20170627 完成\n",
"任务 20170626 完成\n",
"任务 20170623 完成\n",
"任务 20170622 完成\n",
"任务 20170621 完成\n",
"任务 20170620 完成\n",
"任务 20170619 完成\n",
"任务 20170616 完成\n",
"任务 20170615 完成\n",
"任务 20170614 完成\n",
"任务 20170613 完成\n",
"任务 20170612 完成\n",
"任务 20170609 完成\n",
"任务 20170608 完成\n",
"任务 20170607 完成\n",
"任务 20170606 完成\n",
"任务 20170605 完成\n",
"任务 20170602 完成\n",
"任务 20170601 完成\n",
"任务 20170531 完成\n",
"任务 20170526 完成\n",
"任务 20170525 完成\n",
"任务 20170524 完成\n",
"任务 20170523 完成\n",
"任务 20170522 完成\n",
"任务 20170519 完成\n",
"任务 20170518 完成\n",
"任务 20170517 完成\n",
"任务 20170516 完成\n",
"任务 20170515 完成\n",
"任务 20170512 完成\n",
"任务 20170511 完成\n",
"任务 20170510 完成\n",
"任务 20170509 完成\n",
"任务 20170508 完成\n",
"任务 20170505 完成\n",
"任务 20170504 完成\n",
"任务 20170503 完成\n",
"任务 20170502 完成\n",
"任务 20170428 完成\n",
"任务 20170427 完成\n",
"任务 20170426 完成\n",
"任务 20170425 完成\n",
"任务 20170424 完成\n",
"任务 20170421 完成\n",
"任务 20170419 完成\n",
"任务 20170420 完成\n",
"任务 20170418 完成\n",
"任务 20170417 完成\n",
"任务 20170414 完成\n",
"任务 20170413 完成\n",
"任务 20170412 完成\n",
"任务 20170411 完成\n",
"任务 20170410 完成\n",
"任务 20170407 完成\n",
"任务 20170406 完成\n",
"任务 20170405 完成\n",
"任务 20170331 完成\n",
"任务 20170330 完成\n",
"任务 20170329 完成\n",
"任务 20170328 完成\n",
"任务 20170327 完成\n",
"任务 20170324 完成\n",
"任务 20170323 完成\n",
"任务 20170322 完成\n",
"任务 20170321 完成\n",
"任务 20170320 完成\n",
"任务 20170317 完成\n",
"任务 20170316 完成\n",
"任务 20170315 完成\n",
"任务 20170314 完成\n",
"任务 20170313 完成\n",
"任务 20170310 完成\n",
"任务 20170309 完成\n",
"任务 20170308 完成\n",
"任务 20170306 完成\n",
"任务 20170307 完成\n",
"任务 20170303 完成\n",
"任务 20170302 完成\n",
"任务 20170301 完成\n",
"任务 20170228 完成\n",
"任务 20170227 完成\n",
"任务 20170224 完成\n",
"任务 20170223 完成\n",
"任务 20170222 完成\n",
"任务 20170221 完成\n",
"任务 20170220 完成\n",
"任务 20170217 完成\n",
"任务 20170216 完成\n",
"任务 20170215 完成\n",
"任务 20170214 完成\n",
"任务 20170213 完成\n",
"任务 20170210 完成\n",
"任务 20170209 完成\n",
"任务 20170208 完成\n",
"任务 20170207 完成\n",
"任务 20170206 完成\n",
"任务 20170203 完成\n",
"任务 20170126 完成\n",
"任务 20170125 完成\n",
"任务 20170124 完成\n",
"任务 20170123 完成\n",
"任务 20170120 完成\n",
"任务 20170119 完成\n",
"任务 20170118 完成\n",
"任务 20170117 完成\n",
"任务 20170116 完成\n",
"任务 20170113 完成\n",
"任务 20170112 完成\n",
"任务 20170111 完成\n",
"任务 20170110 完成\n",
"任务 20170109 完成\n",
"任务 20170106 完成\n",
"任务 20170105 完成\n",
"任务 20170104 完成\n",
"任务 20170103 完成\n"
]
}
],
"source": [
"import tushare as ts\n",
"import pandas as pd\n",
"import time\n",
"from concurrent.futures import ThreadPoolExecutor, as_completed\n",
"\n",
"# 获取交易日历\n",
"trade_cal = pro.trade_cal(exchange='', start_date='20170101', end_date='20250601')\n",
"trade_cal = trade_cal[trade_cal['is_open'] == 1] # 只保留交易日\n",
"trade_dates = trade_cal['cal_date'].tolist() # 获取所有交易日期列表\n",
"\n",
"# 使用 HDFStore 存储数据\n",
"all_daily_data = []\n",
"\n",
"# API 调用计数和时间控制变量\n",
"api_call_count = 0\n",
"batch_start_time = time.time()\n",
"\n",
"\n",
"def get_data(trade_date):\n",
" daily_basic_data = pro.daily_basic(ts_code='', trade_date=trade_date)\n",
" if daily_basic_data is not None and not daily_basic_data.empty:\n",
" # 添加交易日期列标识\n",
" daily_basic_data['trade_date'] = trade_date\n",
" daily_basic_data['is_st'] = daily_basic_data.apply(\n",
" lambda row: is_st(name_change_dict, row['ts_code'], row['trade_date']), axis=1\n",
" )\n",
" time.sleep(0.1)\n",
" # print(f\"成功获取并保存 {trade_date} 的每日基础数据\")\n",
" return daily_basic_data\n",
"\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",
" # 计数一次 API 调用\n",
" api_call_count += 1\n",
"\n",
" # 每调用 300 次,检查时间是否少于 1 分钟,如果少于则等待剩余时间\n",
" if api_call_count % 150 == 0:\n",
" elapsed = time.time() - batch_start_time\n",
" if elapsed < 60:\n",
" sleep_time = 60 - elapsed\n",
" print(f\"已调用 150 次 API等待 {sleep_time:.2f} 秒以满足速率限制...\")\n",
" time.sleep(sleep_time)\n",
" # 重置批次起始时间\n",
" batch_start_time = time.time()\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "97fdf8be-a86c-4404-bf0c-701f002cd81c",
"metadata": {
"ExecuteTime": {
"end_time": "2025-03-02T08:33:16.498221Z",
"start_time": "2025-03-02T08:33:16.033912Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date close turnover_rate turnover_rate_f \\\n",
"0 603848.SH 20250430 14.36 0.5401 4.6897 \n",
"1 300290.SZ 20250430 16.30 2.8540 3.5686 \n",
"2 603877.SH 20250430 15.90 0.3794 1.2707 \n",
"3 834639.BJ 20250430 8.37 6.1158 7.8866 \n",
"4 000909.SZ 20250430 5.72 0.6104 1.0424 \n",
"... ... ... ... ... ... \n",
"8599133 600708.SH 20170103 9.03 0.7694 1.0169 \n",
"8599134 600712.SH 20170103 10.29 0.5859 0.8028 \n",
"8599135 001872.SZ 20170103 19.33 1.0970 5.4258 \n",
"8599136 001914.SZ 20170103 12.37 3.2627 6.6991 \n",
"8599137 302132.SZ 20170103 23.28 0.4912 1.5149 \n",
"\n",
" volume_ratio pe pe_ttm pb ps ps_ttm \\\n",
"0 1.31 23.3421 25.6176 2.3433 3.7254 3.8065 \n",
"1 1.00 NaN NaN 13.1076 13.5867 13.5756 \n",
"2 0.98 29.1494 33.6975 1.6522 1.1075 1.1304 \n",
"3 0.87 70.0984 215.1863 2.0171 0.8405 0.8329 \n",
"4 0.55 NaN NaN 2.3539 7.7727 8.2925 \n",
"... ... ... ... ... ... ... \n",
"8599133 0.85 23.3367 22.2458 1.4847 0.9613 0.9248 \n",
"8599134 0.67 202.4855 287.1454 5.1852 2.3682 2.5386 \n",
"8599135 0.77 23.6158 23.1883 2.7052 6.6556 6.5584 \n",
"8599136 1.02 20.5631 15.1595 2.1186 1.4950 1.2600 \n",
"8599137 0.74 91.3908 84.6980 6.9391 8.9531 8.8570 \n",
"\n",
" dv_ratio dv_ttm total_share float_share free_share total_mv \\\n",
"0 2.0904 2.0904 40391.1511 40240.6511 4634.6511 5.800169e+05 \n",
"1 0.0000 NaN 63973.2569 63922.1969 51122.1969 1.042764e+06 \n",
"2 3.7471 3.7471 47382.5333 46932.3226 14014.3219 7.533823e+05 \n",
"3 NaN NaN 20160.0000 11721.5883 9089.7537 1.687392e+05 \n",
"4 0.0000 NaN 43771.4245 43771.0570 25634.2299 2.503725e+05 \n",
"... ... ... ... ... ... ... \n",
"8599133 1.1074 1.1074 131871.9966 75088.9215 56812.2811 1.190804e+06 \n",
"8599134 0.1555 0.1555 54465.5360 53795.9475 39266.3119 5.604504e+05 \n",
"8599135 2.1211 2.1211 64476.3730 46486.6050 9398.8050 1.246328e+06 \n",
"8599136 0.4042 0.4042 66696.1416 66678.0666 32475.1786 8.250313e+05 \n",
"8599137 0.2291 0.2291 39384.0333 30419.3588 9862.3809 9.168603e+05 \n",
"\n",
" circ_mv is_st \n",
"0 5.778557e+05 False \n",
"1 1.041932e+06 False \n",
"2 7.462239e+05 False \n",
"3 9.810969e+04 False \n",
"4 2.503704e+05 True \n",
"... ... ... \n",
"8599133 6.780530e+05 False \n",
"8599134 5.535603e+05 False \n",
"8599135 8.985861e+05 False \n",
"8599136 8.248077e+05 False \n",
"8599137 7.081627e+05 False \n",
"\n",
"[8599138 rows x 19 columns]\n"
]
}
],
"source": [
"all_daily_data_df = pd.concat(all_daily_data, ignore_index=True)\n",
"print(all_daily_data_df)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "2b58a8bf-ffc5-4482-8e4d-bf24da9277de",
"metadata": {
"ExecuteTime": {
"end_time": "2025-03-02T08:34:49.733727Z",
"start_time": "2025-03-02T08:33:16.498221Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"所有每日基础数据获取并保存完毕!\n"
]
}
],
"source": [
"# 将数据保存为 HDF5 文件table 格式)\n",
"all_daily_data_df.to_hdf('../../data/daily_basic.h5', key='daily_basic', mode='w', format='table', data_columns=True)\n",
"\n",
"print(\"所有每日基础数据获取并保存完毕!\")"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "57ac1d86-5ce8-4bc9-812f-b45dcc2a3b4c",
"metadata": {
"ExecuteTime": {
"end_time": "2025-03-02T08:34:49.778164Z",
"start_time": "2025-03-02T08:34:49.775512Z"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ts_code trade_date close turnover_rate turnover_rate_f \\\n",
"2091 603021.SH 20250430 3.01 12.8015 21.6289 \n",
"9902 603021.SH 20250429 2.94 0.1629 0.2752 \n",
"12107 603021.SH 20250428 3.09 0.4293 0.7253 \n",
"21450 603021.SH 20250425 3.25 0.0824 0.1392 \n",
"26081 603021.SH 20250424 3.42 0.0789 0.1333 \n",
"... ... ... ... ... ... \n",
"8586274 603021.SH 20170109 46.84 5.9412 6.5949 \n",
"8589108 603021.SH 20170106 47.55 6.4862 7.1998 \n",
"8591964 603021.SH 20170105 50.08 5.2368 5.8130 \n",
"8594806 603021.SH 20170104 51.73 5.3821 5.9743 \n",
"8598822 603021.SH 20170103 50.79 2.3801 2.6419 \n",
"\n",
" volume_ratio pe pe_ttm pb ps ps_ttm dv_ratio \\\n",
"2091 76.02 NaN NaN 34.7434 2.3383 2.3991 0.0000 \n",
"9902 0.27 NaN NaN 33.9354 2.2840 2.3433 0.0000 \n",
"12107 0.42 NaN NaN 17.9426 2.4005 2.4005 0.0000 \n",
"21450 0.05 NaN NaN 18.8716 2.5248 2.5248 0.0000 \n",
"26081 0.04 NaN NaN 19.8587 2.6569 2.6569 0.0000 \n",
"... ... ... ... ... ... ... ... \n",
"8586274 1.31 115.0810 102.7773 4.2761 7.9402 8.4422 0.3657 \n",
"8589108 1.40 116.8254 104.3352 4.3409 8.0606 8.5702 0.3603 \n",
"8591964 1.05 123.0413 109.8866 4.5719 8.4894 9.0262 0.3421 \n",
"8594806 0.97 127.0952 113.5070 4.7225 8.7691 9.3236 0.3311 \n",
"8598822 0.37 124.7857 111.4445 4.6367 8.6098 9.1541 0.3373 \n",
"\n",
" dv_ttm total_share float_share free_share total_mv \\\n",
"2091 NaN 31994.807 31994.807 18936.7934 96304.3691 \n",
"9902 NaN 31994.807 31994.807 18936.7934 94064.7326 \n",
"12107 NaN 31994.807 31994.807 18936.7934 98863.9536 \n",
"21450 NaN 31994.807 31994.807 18936.7934 103983.1228 \n",
"26081 NaN 31994.807 31994.807 18936.7934 109422.2399 \n",
"... ... ... ... ... ... \n",
"8586274 0.3657 12305.695 6396.000 5762.0400 576398.7538 \n",
"8589108 0.3603 12305.695 6396.000 5762.0400 585135.7973 \n",
"8591964 0.3421 12305.695 6396.000 5762.0400 616269.2056 \n",
"8594806 0.3311 12305.695 6396.000 5762.0400 636573.6024 \n",
"8598822 0.3373 12305.695 6396.000 5762.0400 625006.2491 \n",
"\n",
" circ_mv is_st \n",
"2091 96304.3691 True \n",
"9902 94064.7326 True \n",
"12107 98863.9536 True \n",
"21450 103983.1228 True \n",
"26081 109422.2399 True \n",
"... ... ... \n",
"8586274 299588.6400 False \n",
"8589108 304129.8000 False \n",
"8591964 320311.6800 False \n",
"8594806 330865.0800 False \n",
"8598822 324852.8400 False \n",
"\n",
"[1932 rows x 19 columns]\n"
]
}
],
"source": [
"print(all_daily_data_df[all_daily_data_df['ts_code'] == '603021.SH'])"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "new_trader",
"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
}