mns-scheduler 1.1.8.4__py3-none-any.whl → 1.4.5.7__py3-none-any.whl
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.
- mns_scheduler/__init__.py +1 -3
- mns_scheduler/auto_da_ban/auto_da_ban_service.py +89 -0
- mns_scheduler/company_info/clean/__init__.py +1 -1
- mns_scheduler/company_info/clean/company_info_clean_api.py +62 -21
- mns_scheduler/company_info/common/company_common_query_service.py +45 -0
- mns_scheduler/company_info/constant/__init__.py +1 -1
- mns_scheduler/company_info/constant/company_constant_data.py +335 -224
- mns_scheduler/company_info/de_list_stock/__init__.py +1 -1
- mns_scheduler/company_info/de_list_stock/de_list_stock_service.py +1 -1
- mns_scheduler/company_info/em_stock_info/sync_em_stock_info_sync.py +134 -0
- mns_scheduler/company_info/sync/company_info_set_service.py +208 -0
- mns_scheduler/company_info/sync/sync_company_info_task.py +203 -0
- mns_scheduler/company_info/task/company_announce_info_task.py +77 -0
- mns_scheduler/company_info/task/company_base_info_task.py +64 -0
- mns_scheduler/company_info/task/company_business_info_task.py +177 -0
- mns_scheduler/company_info/task/company_hold_info_task.py +66 -0
- mns_scheduler/company_info/task/company_industry_info_task.py +167 -0
- mns_scheduler/company_info/task/company_total_task.py +69 -0
- mns_scheduler/concept/clean/kpl_concept_clean_api.py +1 -1
- mns_scheduler/concept/clean/ths_concept_clean_api.py +20 -4
- mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py +23 -18
- mns_scheduler/concept/ths/common/ths_concept_update_common_api.py +4 -1
- mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py +7 -7
- mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py +9 -4
- mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py +2 -2
- mns_scheduler/db/col_move_service.py +3 -3
- mns_scheduler/db/script/__init__.py +1 -1
- mns_scheduler/db/script/col_move_script.py +1 -1
- mns_scheduler/db/script/db_move/__init__.py +7 -0
- mns_scheduler/db/script/db_move/col_move_one_service.py +34 -0
- mns_scheduler/db/script/sync/__init__.py +1 -1
- mns_scheduler/db/script/sync/remote_data_sync_to_local.py +65 -4
- mns_scheduler/db/script/sync/sync_hui_ce_test_data.py +80 -0
- mns_scheduler/db/script/sync/sync_hui_ce_test_data_01.py +69 -0
- mns_scheduler/db/script/update/__init__.py +7 -0
- mns_scheduler/db/script/update/update_col_field.py +36 -0
- mns_scheduler/finance/__init__.py +1 -1
- mns_scheduler/finance/em/__init__.py +7 -0
- mns_scheduler/finance/{em_financial_asset_liability_sync_service_api.py → em/em_financial_asset_liability_sync_service_api.py} +2 -2
- mns_scheduler/finance/{em_financial_profit_sync_service_api.py → em/em_financial_profit_sync_service_api.py} +27 -26
- mns_scheduler/finance/{finance_common_api.py → em/finance_common_api.py} +3 -3
- mns_scheduler/finance/{sync_financial_report_service_api.py → sync_financial_report_service_task.py} +80 -27
- mns_scheduler/finance/xue_qiu/__init__.py +7 -0
- mns_scheduler/finance/xue_qiu/down_load_xueqiu_report_api.py +77 -0
- mns_scheduler/finance/xue_qiu/sync_xue_qiu_fiance_data.py +161 -0
- mns_scheduler/hk/__init__.py +1 -1
- mns_scheduler/hk/hk_company_info_sync_service_api.py +4 -4
- mns_scheduler/hk/hk_industry_info_sync_service_api.py +3 -5
- mns_scheduler/industry/__init__.py +7 -0
- mns_scheduler/industry/ths/__init__.py +7 -0
- mns_scheduler/industry/ths/ths_industry_index_service.py +58 -0
- mns_scheduler/industry/ths/ths_industry_sync_service.py +68 -0
- mns_scheduler/irm/__init__.py +1 -1
- mns_scheduler/irm/api/__init__.py +1 -1
- mns_scheduler/irm/api/sh_stock_sns_sse_info_api.py +8 -58
- mns_scheduler/irm/api/sz_stock_sns_sse_info_api.py +15 -26
- mns_scheduler/irm/stock_irm_cninfo_service.py +43 -31
- mns_scheduler/irm/stock_question_id_service.py +169 -0
- mns_scheduler/k_line/clean/daily/__init__.py +1 -1
- mns_scheduler/k_line/clean/daily/daily_k_line_clean_common_service.py +52 -6
- mns_scheduler/k_line/clean/daily/daily_k_line_service.py +7 -2
- mns_scheduler/k_line/clean/k_line_info_clean_impl.py +3 -2
- mns_scheduler/k_line/clean/k_line_info_clean_task.py +42 -15
- mns_scheduler/k_line/clean/week_month/__init__.py +1 -1
- mns_scheduler/k_line/clean/week_month/normal_week_month_k_line_service.py +124 -26
- mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py +2 -2
- mns_scheduler/k_line/common/__init__.py +7 -0
- mns_scheduler/k_line/common/k_line_common_api.py +188 -0
- mns_scheduler/k_line/hot_stocks/__init__.py +1 -1
- mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py +1 -1
- mns_scheduler/k_line/{sync → month_week_daily}/bfq_k_line_sync.py +14 -29
- mns_scheduler/k_line/{sync → month_week_daily}/daily_week_month_line_sync.py +11 -12
- mns_scheduler/k_line/sync_status/__init__.py +7 -0
- mns_scheduler/k_line/sync_status/k_line_sync_status_check.py +54 -0
- mns_scheduler/k_line/test/__init__.py +1 -1
- mns_scheduler/k_line/test/k_line_info_clean_his_data.py +14 -3
- mns_scheduler/k_line/year_quarter/__init__.py +7 -0
- mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py +76 -0
- mns_scheduler/kpl/selection/symbol/sync_best_choose_symbol.py +1 -2
- mns_scheduler/kpl/selection/symbol/sync_kpl_concept_symbol_choose_reason_api.py +108 -0
- mns_scheduler/kpl/selection/total/sync_kpl_best_total_sync_api.py +5 -0
- mns_scheduler/lhb/__init__.py +1 -1
- mns_scheduler/lhb/stock_lhb_sync_service.py +1 -1
- mns_scheduler/open/__init__.py +1 -1
- mns_scheduler/open/sync_one_day_open_data_to_db_service.py +2 -3
- mns_scheduler/risk/__init__.py +1 -1
- mns_scheduler/risk/compliance/undisclosed_annual_report_api.py +8 -2
- mns_scheduler/risk/financial/annual_report_audit_check_api.py +13 -3
- mns_scheduler/risk/financial/net_assets_check_api.py +21 -18
- mns_scheduler/risk/financial/profit_income_check_api.py +7 -2
- mns_scheduler/risk/financial_report_risk_check_api.py +1 -1
- mns_scheduler/risk/major_violations/register_and_investigate_stock_sync_api.py +1 -1
- mns_scheduler/risk/self/wei_pan_stock_api.py +1 -1
- mns_scheduler/risk/test/__init__.py +1 -1
- mns_scheduler/risk/test/fix_blask_list.py +4 -6
- mns_scheduler/risk/transactions/transactions_check_api.py +22 -4
- mns_scheduler/self_choose/__init__.py +1 -1
- mns_scheduler/self_choose/ths_self_choose_service.py +99 -43
- mns_scheduler/trade/auto_login/trader_auto_service.py +7 -4
- mns_scheduler/trade/auto_sell_service_api.py +4 -4
- mns_scheduler/trade/balance/__init__.py +7 -0
- mns_scheduler/trade/balance/ths_account_balance_service.py +7 -0
- mns_scheduler/trade/sync_position_api.py +39 -6
- mns_scheduler/trade/task/trader_task_service.py +38 -10
- mns_scheduler/trade/tfp/__init__.py +7 -0
- mns_scheduler/trade/tfp/stock_tfp_info_sync.py +56 -0
- mns_scheduler/zb/stock_zb_pool_sync.py +1 -16
- mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py +2 -2
- mns_scheduler/zt/high_chg/sync_high_chg_real_time_quotes_service.py +1 -1
- mns_scheduler/zt/script/__init__.py +1 -1
- mns_scheduler/zt/script/fix_error_deal_day.py +41 -0
- mns_scheduler/zt/script/kcx_high_chg_open_his_data_handle.py +2 -2
- mns_scheduler/zt/script/sync_high_chg_pool_his_data.py +2 -2
- mns_scheduler/zt/script/sync_now_higt_chg_zt.py +8 -7
- mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py +260 -83
- mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py +33 -90
- mns_scheduler/zt/zt_pool/update_null_zt_reason_api.py +27 -13
- mns_scheduler/zz_task/compensation/__init__.py +0 -0
- mns_scheduler/zz_task/compensation/compensate_task.py +161 -0
- mns_scheduler/zz_task/compensation/compensate_task_one_day.py +142 -0
- mns_scheduler/zz_task/data_sync_task.py +197 -103
- {mns_scheduler-1.1.8.4.dist-info → mns_scheduler-1.4.5.7.dist-info}/METADATA +1 -1
- mns_scheduler-1.4.5.7.dist-info/RECORD +176 -0
- {mns_scheduler-1.1.8.4.dist-info → mns_scheduler-1.4.5.7.dist-info}/WHEEL +1 -1
- mns_scheduler/2014-2015-test/2014_2015_chg_statistics.py +0 -87
- mns_scheduler/big_deal/ths_big_deal_sync.py +0 -98
- mns_scheduler/company_info/base/sync_company_base_info_api.py +0 -439
- mns_scheduler/company_info/base/sync_company_hold_info_api.py +0 -40
- mns_scheduler/company_info/remark/company_remark_info_sync.py +0 -46
- mns_scheduler/db/real_time_task_check.py +0 -84
- mns_scheduler/debt/kzz_bond_info_sync.py +0 -33
- mns_scheduler-1.1.8.4.dist-info/RECORD +0 -142
- /mns_scheduler/{2014-2015-test → auto_da_ban}/__init__.py +0 -0
- /mns_scheduler/company_info/{base → common}/__init__.py +0 -0
- /mns_scheduler/{big_deal → company_info/em_stock_info}/__init__.py +0 -0
- /mns_scheduler/company_info/{remark → sync}/__init__.py +0 -0
- /mns_scheduler/{debt → company_info/task}/__init__.py +0 -0
- /mns_scheduler/k_line/{sync → month_week_daily}/__init__.py +0 -0
- {mns_scheduler-1.1.8.4.dist-info → mns_scheduler-1.4.5.7.dist-info}/top_level.txt +0 -0
|
@@ -5,6 +5,11 @@ file_path = os.path.abspath(__file__)
|
|
|
5
5
|
end = file_path.index('mns') + 17
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
|
+
import warnings
|
|
9
|
+
|
|
10
|
+
# 忽略所有警告
|
|
11
|
+
warnings.filterwarnings("ignore")
|
|
12
|
+
import mns_scheduler.company_info.em_stock_info.sync_em_stock_info_sync as sync_em_stock_info_sync
|
|
8
13
|
import mns_scheduler.self_choose.ths_self_choose_service as ths_self_choose_service
|
|
9
14
|
import mns_scheduler.risk.major_violations.register_and_investigate_stock_sync_api \
|
|
10
15
|
as register_and_investigate_stock_sync_api
|
|
@@ -15,24 +20,22 @@ import mns_scheduler.dt.stock_dt_pool_sync as stock_dt_pool_sync_api
|
|
|
15
20
|
import mns_scheduler.zb.stock_zb_pool_sync as stock_zb_pool_sync_api
|
|
16
21
|
import mns_common.component.trade_date.trade_date_common_service_api as trade_date_common_service_api
|
|
17
22
|
import mns_common.utils.date_handle_util as date_handle_util
|
|
18
|
-
import mns_scheduler.k_line.
|
|
19
|
-
import mns_common.utils.ip_util as ip_util
|
|
23
|
+
import mns_scheduler.k_line.month_week_daily.daily_week_month_line_sync as daily_week_month_line_sync_api
|
|
20
24
|
import mns_scheduler.db.col_move_service as col_move_service
|
|
21
25
|
import mns_scheduler.db.db_status as db_status_api
|
|
22
|
-
import mns_scheduler.big_deal.ths_big_deal_sync as ths_big_deal_sync_api
|
|
23
26
|
import mns_scheduler.zt.open_data.kcx_high_chg_open_data_sync as kcx_high_chg_open_data_sync
|
|
24
27
|
import mns_scheduler.zt.export.export_kcx_high_chg_open_data_to_excel as export_kcx_high_chg_open_data_to_excel
|
|
25
28
|
import mns_scheduler.zt.connected_boards.zt_five_boards_sync_api as zt_five_boards_sync_api
|
|
26
29
|
import mns_scheduler.zt.zt_pool.em_zt_pool_sync_api as em_zt_pool_sync_api
|
|
27
30
|
import mns_scheduler.k_line.clean.k_line_info_clean_task as k_line_info_clean_service
|
|
28
31
|
import mns_scheduler.concept.clean.ths_concept_clean_api as ths_concept_choose_api
|
|
29
|
-
import mns_common.api.em.east_money_stock_gdfx_free_top_10_api as east_money_stock_gdfx_free_top_10_api
|
|
32
|
+
import mns_common.api.em.gd.east_money_stock_gdfx_free_top_10_api as east_money_stock_gdfx_free_top_10_api
|
|
30
33
|
import \
|
|
31
34
|
mns_scheduler.concept.ths.update_concept_info.sync_one_concept_all_symbols_api as sync_one_concept_all_symbols_api
|
|
32
35
|
import \
|
|
33
36
|
mns_scheduler.concept.ths.update_concept_info.sync_one_symbol_all_concepts_api as sync_one_symbol_all_concepts_api
|
|
34
37
|
import mns_scheduler.kpl.selection.total.sync_kpl_best_total_sync_api as sync_kpl_best_total_sync_api
|
|
35
|
-
import mns_scheduler.company_info.
|
|
38
|
+
import mns_scheduler.company_info.sync.sync_company_info_task as sync_company_info_task
|
|
36
39
|
import mns_scheduler.trade.auto_ipo_buy_api as auto_ipo_buy_api
|
|
37
40
|
import mns_scheduler.kpl.selection.index.sync_best_choose_his_index as sync_best_choose_his_index
|
|
38
41
|
import mns_scheduler.concept.ths.common.ths_concept_update_common_api as ths_concept_update_common_api
|
|
@@ -43,18 +46,22 @@ import mns_scheduler.irm.stock_irm_cninfo_service as stock_irm_cninfo_service
|
|
|
43
46
|
import mns_scheduler.open.sync_one_day_open_data_to_db_service as sync_one_day_open_data_to_db_service
|
|
44
47
|
import mns_scheduler.zt.high_chg.sync_high_chg_pool_service as sync_high_chg_pool_service
|
|
45
48
|
import mns_scheduler.zt.high_chg.sync_high_chg_real_time_quotes_service as sync_high_chg_real_time_quotes_service
|
|
46
|
-
import mns_scheduler.risk.self.wei_pan_stock_api as wei_pan_stock_api
|
|
47
49
|
import mns_scheduler.risk.transactions.transactions_check_api as transactions_check_api
|
|
48
50
|
import mns_scheduler.concept.ths.sync_new_index.sync_ths_concept_new_index_api as sync_ths_concept_new_index_api
|
|
49
51
|
import mns_scheduler.company_info.clean.company_info_clean_api as company_info_clean_api
|
|
50
52
|
import mns_scheduler.zt.zt_pool.ths_zt_pool_sync_api as ths_zt_pool_sync_api
|
|
51
|
-
import mns_scheduler.db.real_time_task_check as real_time_task_check_api
|
|
52
53
|
import mns_scheduler.trade.task.trader_task_service as trader_task_service
|
|
53
|
-
import mns_scheduler.
|
|
54
|
-
import mns_scheduler.finance.sync_financial_report_service_api as sync_financial_report_service_api
|
|
54
|
+
import mns_scheduler.finance.sync_financial_report_service_task as sync_financial_report_service_task
|
|
55
55
|
import mns_scheduler.hk.hk_industry_info_sync_service_api as hk_industry_info_sync_service_api
|
|
56
56
|
import mns_scheduler.hk.hk_company_info_sync_service_api as hk_company_info_sync_service_api
|
|
57
57
|
import mns_scheduler.zt.zt_pool.update_null_zt_reason_api as update_null_zt_reason_api
|
|
58
|
+
import mns_scheduler.trade.tfp.stock_tfp_info_sync as stock_tfp_info_sync
|
|
59
|
+
import mns_scheduler.industry.ths.ths_industry_sync_service as ths_industry_sync_service
|
|
60
|
+
import mns_scheduler.k_line.year_quarter.year_quarter_line_sync as year_quarter_line_sync
|
|
61
|
+
import mns_scheduler.k_line.sync_status.k_line_sync_status_check as k_line_sync_status_check
|
|
62
|
+
import mns_scheduler.company_info.task.company_total_task as company_total_task
|
|
63
|
+
import mns_scheduler.irm.stock_question_id_service as stock_question_id_service
|
|
64
|
+
import mns_scheduler.auto_da_ban.auto_da_ban_service as auto_da_ban_service
|
|
58
65
|
|
|
59
66
|
|
|
60
67
|
# 同步交易日期任务完成
|
|
@@ -79,6 +86,8 @@ def sync_stock_zb_pool():
|
|
|
79
86
|
if trade_date_common_service_api.is_trade_day(str_now_day):
|
|
80
87
|
stock_zb_pool_sync_api.sync_stock_zb_pool(str_now_day)
|
|
81
88
|
logger.info("同步炸板信息任务执行成功:{}", str_now_day)
|
|
89
|
+
# 同步停复牌信息
|
|
90
|
+
sync_stock_tfp()
|
|
82
91
|
|
|
83
92
|
|
|
84
93
|
# 定时同步每周交易行情数据(前复权)
|
|
@@ -87,7 +96,7 @@ def stock_sync_qfq_weekly():
|
|
|
87
96
|
str_now_date = now_date.strftime('%Y-%m-%d')
|
|
88
97
|
if date_handle_util.last_day_of_week(now_date):
|
|
89
98
|
logger.info('同步每周行情数据(前复权):' + str_now_date)
|
|
90
|
-
daily_week_month_line_sync_api.sync_all_daily_data('weekly', 'qfq', 'stock_qfq_weekly',
|
|
99
|
+
daily_week_month_line_sync_api.sync_all_daily_data('weekly', 'qfq', 'stock_qfq_weekly', str_now_date)
|
|
91
100
|
|
|
92
101
|
|
|
93
102
|
# # 定时同步每周交易行情数据(前复权)
|
|
@@ -97,7 +106,7 @@ def stock_sync_qfq_monthly():
|
|
|
97
106
|
if date_handle_util.last_day_month(now_date):
|
|
98
107
|
logger.info('同步每周行情数据(前复权):' + str_now_date)
|
|
99
108
|
daily_week_month_line_sync_api.sync_all_daily_data('monthly', 'qfq', 'stock_qfq_monthly',
|
|
100
|
-
|
|
109
|
+
str_now_date)
|
|
101
110
|
|
|
102
111
|
|
|
103
112
|
# 当天实时数据备份
|
|
@@ -114,13 +123,13 @@ def db_status_check():
|
|
|
114
123
|
db_status_api.db_status_check()
|
|
115
124
|
|
|
116
125
|
|
|
117
|
-
# 同步大单数据
|
|
118
|
-
def sync_ths_big_deal():
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
126
|
+
# # 同步大单数据
|
|
127
|
+
# def sync_ths_big_deal():
|
|
128
|
+
# now_date = datetime.now()
|
|
129
|
+
# str_now_day = now_date.strftime('%Y-%m-%d')
|
|
130
|
+
# if trade_date_common_service_api.is_trade_day(str_now_day):
|
|
131
|
+
# logger.info('更新大单数据')
|
|
132
|
+
# ths_big_deal_sync_api.sync_ths_big_deal(False)
|
|
124
133
|
|
|
125
134
|
|
|
126
135
|
# 定时同步每日交易行情数据(前复权)
|
|
@@ -129,7 +138,7 @@ def stock_daily_sync_qfq():
|
|
|
129
138
|
str_now_date = now_date.strftime('%Y-%m-%d')
|
|
130
139
|
logger.info('同步每日行情数据(前复权):' + str_now_date)
|
|
131
140
|
daily_week_month_line_sync_api.sync_all_daily_data('daily',
|
|
132
|
-
'qfq', 'stock_qfq_daily',
|
|
141
|
+
'qfq', 'stock_qfq_daily', str_now_date)
|
|
133
142
|
|
|
134
143
|
|
|
135
144
|
# 同步当日k c x 高涨幅数据
|
|
@@ -175,7 +184,11 @@ def generate_new_day_k_line_info():
|
|
|
175
184
|
now_date = datetime.now()
|
|
176
185
|
str_day = now_date.strftime('%Y-%m-%d')
|
|
177
186
|
# 生成下一个交易日日期k线数据 number=2 获取下一个交易日 日期
|
|
178
|
-
|
|
187
|
+
if trade_date_common_service_api.is_trade_day(str_day):
|
|
188
|
+
dis_number = 2
|
|
189
|
+
else:
|
|
190
|
+
dis_number = 1
|
|
191
|
+
next_trade_day = trade_date_common_service_api.get_further_trade_date(str_day, dis_number)
|
|
179
192
|
k_line_info_clean_service.sync_k_line_info_task(next_trade_day)
|
|
180
193
|
logger.info('计算当日k线信息完成:{}', str_day)
|
|
181
194
|
|
|
@@ -285,9 +298,13 @@ def sync_new_concept_index_task():
|
|
|
285
298
|
|
|
286
299
|
|
|
287
300
|
# 清洗公司基本信息
|
|
288
|
-
def
|
|
289
|
-
|
|
290
|
-
|
|
301
|
+
def clean_company_base_info():
|
|
302
|
+
# 同步新股信息
|
|
303
|
+
company_total_task.sync_new_stock_company_task()
|
|
304
|
+
# 放到临时表
|
|
305
|
+
sync_company_info_task.sync_company_base_info([])
|
|
306
|
+
# 放到正式表
|
|
307
|
+
company_info_clean_api.clean_company_info([])
|
|
291
308
|
# 退市股票同步
|
|
292
309
|
de_list_stock_service.sync_de_list_stock()
|
|
293
310
|
logger.info('同步公司基本信息任务完成')
|
|
@@ -308,7 +325,7 @@ def sync_position():
|
|
|
308
325
|
# 同步持仓
|
|
309
326
|
if trade_date_common_service_api.is_trade_day(str_day):
|
|
310
327
|
logger.info('同步持仓任务完成')
|
|
311
|
-
sync_position_api.
|
|
328
|
+
sync_position_api.sync_position_qmt()
|
|
312
329
|
|
|
313
330
|
|
|
314
331
|
# 同步开盘啦当日精选指数行情数据
|
|
@@ -326,27 +343,38 @@ def sync_kpl_best_his_quotes():
|
|
|
326
343
|
def sync_high_risk_stocks():
|
|
327
344
|
logger.info('同步被立案调查的股票')
|
|
328
345
|
register_and_investigate_stock_sync_api.sync_register_and_investigate_stocks()
|
|
329
|
-
reason_detail = '微盘股拉黑'
|
|
330
|
-
concept_code_wei_pan = '883418'
|
|
331
|
-
wei_pan_stock_api.add_concept_to_lack_list(concept_code_wei_pan, reason_detail)
|
|
346
|
+
# reason_detail = '微盘股拉黑'
|
|
347
|
+
# concept_code_wei_pan = '883418'
|
|
348
|
+
# wei_pan_stock_api.add_concept_to_lack_list(concept_code_wei_pan, reason_detail)
|
|
332
349
|
logger.info('同步交易类风险的股票')
|
|
333
350
|
transactions_check_api.transactions_check_task()
|
|
334
351
|
|
|
335
352
|
|
|
336
353
|
# 同步互动回答
|
|
337
354
|
def sync_all_interactive_questions():
|
|
338
|
-
now_date = datetime.now()
|
|
339
|
-
str_day = now_date.strftime('%Y-%m-%d')
|
|
340
|
-
|
|
341
|
-
tag =
|
|
342
|
-
if tag:
|
|
343
|
-
|
|
344
|
-
|
|
355
|
+
# now_date = datetime.now()
|
|
356
|
+
# str_day = now_date.strftime('%Y-%m-%d')
|
|
357
|
+
# 非交易日同步
|
|
358
|
+
# tag = bool(1 - trade_date_common_service_api.is_trade_day(str_day))
|
|
359
|
+
# if tag:
|
|
360
|
+
|
|
361
|
+
logger.info('同步互动回答')
|
|
362
|
+
stock_question_id_service.sync_sz_stock_uid([])
|
|
363
|
+
stock_question_id_service.sync_sh_stock_uid()
|
|
345
364
|
|
|
365
|
+
stock_irm_cninfo_service.sync_symbols_interactive_questions([])
|
|
346
366
|
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
367
|
+
|
|
368
|
+
# # 重开定时任务同步
|
|
369
|
+
# def real_time_sync_task_open():
|
|
370
|
+
# logger.info("开启实时行情同步任务")
|
|
371
|
+
# real_time_data_sync_check.real_time_sync_task_open()
|
|
372
|
+
|
|
373
|
+
#
|
|
374
|
+
# # 关闭实时行情任务
|
|
375
|
+
# def real_time_sync_task_close():
|
|
376
|
+
# logger.info("关闭实时行情同步任务")
|
|
377
|
+
# real_time_data_sync_check.real_time_sync_task_close()
|
|
350
378
|
|
|
351
379
|
|
|
352
380
|
# 打开交易客户端
|
|
@@ -355,10 +383,10 @@ def trader_client_auto_login():
|
|
|
355
383
|
trader_task_service.open_trader_terminal()
|
|
356
384
|
|
|
357
385
|
|
|
358
|
-
#
|
|
359
|
-
def
|
|
360
|
-
logger.info('
|
|
361
|
-
|
|
386
|
+
# 打开qmt交易端
|
|
387
|
+
def open_qmt_terminal():
|
|
388
|
+
logger.info('打开qmt交易客户端')
|
|
389
|
+
trader_task_service.open_qmt_terminal()
|
|
362
390
|
|
|
363
391
|
|
|
364
392
|
# 自选股操作任务
|
|
@@ -369,7 +397,7 @@ def self_choose_stock_task():
|
|
|
369
397
|
# 同步财务报表
|
|
370
398
|
def sync_financial_report_task():
|
|
371
399
|
logger.info('同步财务报表任务')
|
|
372
|
-
|
|
400
|
+
sync_financial_report_service_task.sync_financial_report()
|
|
373
401
|
|
|
374
402
|
|
|
375
403
|
# 同步hk公司信息
|
|
@@ -389,105 +417,171 @@ def update_null_zt_reason():
|
|
|
389
417
|
logger.info("更新空涨停原因信息:{}", str_now_day)
|
|
390
418
|
|
|
391
419
|
|
|
392
|
-
#
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
420
|
+
# 同步停复牌信息
|
|
421
|
+
def sync_stock_tfp():
|
|
422
|
+
now_date = datetime.now()
|
|
423
|
+
str_day = now_date.strftime('%Y-%m-%d')
|
|
424
|
+
stock_tfp_info_sync.sync_stock_tfp(str_day)
|
|
396
425
|
|
|
397
|
-
# 跌停信息同步
|
|
398
|
-
blockingScheduler.add_job(sync_stock_dt_pool, 'cron', hour='15,21', minute='37')
|
|
399
426
|
|
|
400
|
-
#
|
|
401
|
-
|
|
427
|
+
# 同步同花顺行业信息
|
|
428
|
+
def sync_ths_industry_info():
|
|
429
|
+
logger.info("同步同花顺行业信息开始")
|
|
430
|
+
ths_industry_sync_service.sync_ths_industry_index()
|
|
431
|
+
ths_industry_sync_service.sync_ths_industry_detail()
|
|
432
|
+
logger.info("同步同花顺行业信息完成")
|
|
402
433
|
|
|
403
|
-
# (前复权--周k线)
|
|
404
|
-
blockingScheduler.add_job(stock_sync_qfq_weekly, 'cron', day_of_week='fri', hour=16, minute=20)
|
|
405
434
|
|
|
406
|
-
#
|
|
407
|
-
|
|
435
|
+
# 同步年线数据
|
|
436
|
+
def sync_year_k_line():
|
|
437
|
+
logger.info("同步年线数据")
|
|
438
|
+
year_quarter_line_sync.sync_year_k_line()
|
|
408
439
|
|
|
409
|
-
# 数据备份
|
|
410
|
-
blockingScheduler.add_job(col_data_move, 'cron', hour='15', minute='26')
|
|
411
440
|
|
|
412
|
-
#
|
|
413
|
-
|
|
441
|
+
# 同步东方财富股票信息
|
|
442
|
+
def sync_all_em_stock_info():
|
|
443
|
+
sync_em_stock_info_sync.sync_all_em_stock_info()
|
|
414
444
|
|
|
415
|
-
# 同步大单数据 暂停同步 20240430
|
|
416
|
-
# blockingScheduler.add_job(sync_ths_big_deal, 'cron', hour='09', minute='30', max_instances=4)
|
|
417
445
|
|
|
418
|
-
#
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
446
|
+
# check 前复权k线和下一个交易日策略k线数据同步状态
|
|
447
|
+
def check_k_line_sync_count():
|
|
448
|
+
logger.info("check前复权k线和下一个交易日策略k线数据同步状态")
|
|
449
|
+
k_line_sync_status_check.check_k_line_sync_count()
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
# 全量同步公司信息
|
|
453
|
+
def sync_all_company_info_task():
|
|
454
|
+
logger.info("全量同步公司信息")
|
|
455
|
+
company_total_task.sync_all_company_task()
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
# 自动打板
|
|
459
|
+
def auto_da_ban_task():
|
|
460
|
+
auto_da_ban_service.auto_da_ban_task()
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
# # 定义BlockingScheduler
|
|
464
|
+
blockingScheduler = BlockingScheduler()
|
|
465
|
+
|
|
466
|
+
# 同步东方财富a,etf,kzz,us,hk信息
|
|
467
|
+
blockingScheduler.add_job(sync_all_em_stock_info, 'cron', hour='07', minute='31')
|
|
468
|
+
blockingScheduler.add_job(sync_all_em_stock_info, 'cron', hour='16', minute='20')
|
|
422
469
|
|
|
423
470
|
# 开盘前同步当天交易需要的k线数据
|
|
424
|
-
blockingScheduler.add_job(sync_today_trade_k_line_info, 'cron', hour='
|
|
471
|
+
blockingScheduler.add_job(sync_today_trade_k_line_info, 'cron', hour='07', minute='50')
|
|
472
|
+
|
|
473
|
+
# 同步单只股票下所有概念 by 股票代码
|
|
474
|
+
blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='06,08,18', minute='45')
|
|
475
|
+
|
|
476
|
+
# 同步单只股票下所有概念 by 股票代码 中午任务执行
|
|
477
|
+
blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='12', minute='15,40')
|
|
478
|
+
|
|
479
|
+
# 打开交易客户端
|
|
480
|
+
blockingScheduler.add_job(open_qmt_terminal, 'cron', hour='07,08,09', minute='04')
|
|
481
|
+
|
|
482
|
+
# 获取当前持仓
|
|
483
|
+
blockingScheduler.add_job(sync_position, 'cron', hour='0,08,16', minute='14')
|
|
484
|
+
|
|
485
|
+
# 同步公司基本信息
|
|
486
|
+
blockingScheduler.add_job(clean_company_base_info, 'cron', hour='07,18', minute='05')
|
|
487
|
+
|
|
488
|
+
# 同步互动回答
|
|
489
|
+
blockingScheduler.add_job(sync_all_interactive_questions, 'cron', hour='06,17', minute='30')
|
|
425
490
|
|
|
426
491
|
# 同步十大流通股东信息
|
|
427
|
-
blockingScheduler.add_job(sync_stock_gdfx_free_top_10_one_day, 'cron', hour='
|
|
492
|
+
blockingScheduler.add_job(sync_stock_gdfx_free_top_10_one_day, 'cron', hour='06,18', minute='05')
|
|
428
493
|
|
|
429
|
-
#
|
|
430
|
-
blockingScheduler.add_job(
|
|
494
|
+
# 同步港股公司和行业信息
|
|
495
|
+
blockingScheduler.add_job(sync_hk_company_industry_info, 'cron', hour='08,15', minute='10')
|
|
431
496
|
|
|
432
497
|
# 更新概念指数下所有股票组成 by 概念代码
|
|
433
498
|
blockingScheduler.add_job(update_concept_all_detail_info, 'cron', hour='08,18,12', minute='30')
|
|
434
499
|
|
|
435
|
-
#
|
|
436
|
-
blockingScheduler.add_job(
|
|
437
|
-
# 同步单只股票下所有概念 by 股票代码 中午任务执行
|
|
438
|
-
blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='12', minute='15,40')
|
|
500
|
+
# 自选股操作
|
|
501
|
+
blockingScheduler.add_job(self_choose_stock_task, 'cron', hour='08,17,21', minute='35')
|
|
439
502
|
|
|
440
503
|
# 开盘前同步同花顺新概念指数
|
|
441
504
|
blockingScheduler.add_job(sync_new_concept_index, 'cron', hour='09,22', minute='01,10,20,28,41,58')
|
|
442
505
|
|
|
443
|
-
#
|
|
444
|
-
blockingScheduler.add_job(
|
|
506
|
+
# 更新同花顺概念信息
|
|
507
|
+
blockingScheduler.add_job(concept_info_clean, 'cron', hour='9,12,20', minute='24')
|
|
445
508
|
|
|
446
|
-
#
|
|
447
|
-
blockingScheduler.add_job(
|
|
509
|
+
# 更新开盘啦指数关系
|
|
510
|
+
blockingScheduler.add_job(update_best_choose_plate_relation, 'cron', hour='09,18', minute='25')
|
|
511
|
+
|
|
512
|
+
# 自动打新 打新中签高时间段 10:30-11:30
|
|
513
|
+
blockingScheduler.add_job(auto_ipo_buy, 'cron', hour='09', minute='40,50')
|
|
514
|
+
|
|
515
|
+
# 数据备份
|
|
516
|
+
blockingScheduler.add_job(col_data_move, 'cron', hour='15', minute='06')
|
|
448
517
|
|
|
449
|
-
# 同步公司基本信息
|
|
450
|
-
blockingScheduler.add_job(update_company_base_info, 'cron', hour='08,18', minute='05')
|
|
451
518
|
# 更新当天涨停股票池
|
|
452
|
-
blockingScheduler.add_job(sync_stock_zt_pool, 'cron', hour='15,19', minute='
|
|
519
|
+
blockingScheduler.add_job(sync_stock_zt_pool, 'cron', hour='15,19', minute='10')
|
|
453
520
|
|
|
454
|
-
#
|
|
455
|
-
|
|
521
|
+
# todo 需要前后顺序执行
|
|
522
|
+
# todo 当日k线信息
|
|
523
|
+
# 同步一天k线 涨停 数据
|
|
524
|
+
blockingScheduler.add_job(sync_daily_data_info, 'cron', hour='15,20', minute='15')
|
|
456
525
|
|
|
457
|
-
#
|
|
458
|
-
blockingScheduler.add_job(
|
|
526
|
+
# (前复权--月k线)
|
|
527
|
+
blockingScheduler.add_job(stock_sync_qfq_monthly, 'cron', hour='15,18', minute='35')
|
|
528
|
+
|
|
529
|
+
# 复盘需要的数据
|
|
530
|
+
blockingScheduler.add_job(sync_toady_stock_zt_pool, 'cron', hour='15', minute='40')
|
|
531
|
+
|
|
532
|
+
# 炸板信息同步 同步停复牌信息
|
|
533
|
+
blockingScheduler.add_job(sync_stock_zb_pool, 'cron', hour='16,21', minute='15')
|
|
534
|
+
|
|
535
|
+
# 跌停信息同步
|
|
536
|
+
blockingScheduler.add_job(sync_stock_dt_pool, 'cron', hour='16,21', minute='37')
|
|
537
|
+
|
|
538
|
+
# 更新空的涨停原因股票
|
|
539
|
+
blockingScheduler.add_job(update_null_zt_reason, 'cron', hour='16,17,18,19,20,21,22,23', minute='19')
|
|
540
|
+
|
|
541
|
+
# 同步财务报表任务
|
|
542
|
+
blockingScheduler.add_job(sync_financial_report_task, 'cron', hour='17', minute='30')
|
|
543
|
+
|
|
544
|
+
# 同步同花顺行业信息
|
|
545
|
+
blockingScheduler.add_job(sync_ths_industry_info, 'cron', hour='17,22', minute='38')
|
|
459
546
|
|
|
460
547
|
# 更新开盘啦指数历史指数
|
|
461
548
|
blockingScheduler.add_job(sync_kpl_best_his_quotes, 'cron', hour='18,22', minute='25')
|
|
462
549
|
|
|
463
|
-
#
|
|
464
|
-
blockingScheduler.add_job(
|
|
550
|
+
# 同步年线数据
|
|
551
|
+
blockingScheduler.add_job(sync_year_k_line, 'cron', hour='18,23', minute='55')
|
|
552
|
+
|
|
553
|
+
# 同步交易日期
|
|
554
|
+
blockingScheduler.add_job(sync_trade_date, 'cron', hour='20', minute='43')
|
|
465
555
|
|
|
466
556
|
# 同步高风险股票
|
|
467
|
-
blockingScheduler.add_job(sync_high_risk_stocks, 'cron', hour='0,
|
|
557
|
+
blockingScheduler.add_job(sync_high_risk_stocks, 'cron', hour='0,12,16', minute='20')
|
|
468
558
|
|
|
469
|
-
#
|
|
470
|
-
blockingScheduler.add_job(
|
|
559
|
+
# (前复权--周k线)
|
|
560
|
+
blockingScheduler.add_job(stock_sync_qfq_weekly, 'cron', day_of_week='fri', hour=16, minute=20)
|
|
471
561
|
|
|
472
|
-
#
|
|
473
|
-
blockingScheduler.add_job(
|
|
562
|
+
# 数据库健康检查
|
|
563
|
+
blockingScheduler.add_job(db_status_check, 'interval', seconds=30, max_instances=4)
|
|
474
564
|
|
|
475
|
-
#
|
|
476
|
-
blockingScheduler.add_job(
|
|
477
|
-
# 同步公司备注信息
|
|
478
|
-
blockingScheduler.add_job(sync_company_remark_info, 'cron', hour='22', minute='30')
|
|
479
|
-
# 自选股操作
|
|
480
|
-
blockingScheduler.add_job(self_choose_stock_task, 'cron', hour='17,22', minute='30')
|
|
481
|
-
# 同步财务报表任务
|
|
482
|
-
blockingScheduler.add_job(sync_financial_report_task, 'cron', hour='17', minute='30')
|
|
565
|
+
# 同步同花顺新增概念指数(定时轮训,暂时10分钟)
|
|
566
|
+
blockingScheduler.add_job(sync_new_concept_index_task, 'interval', minutes=10, max_instances=4)
|
|
483
567
|
|
|
484
|
-
#
|
|
485
|
-
blockingScheduler.add_job(
|
|
486
|
-
|
|
487
|
-
|
|
568
|
+
# 同步开盘啦新增精选概念(定时轮训,暂时五分钟)
|
|
569
|
+
blockingScheduler.add_job(sync_all_kpl_plate_info, 'interval', minutes=5, max_instances=4)
|
|
570
|
+
|
|
571
|
+
# 同步新公告信息 感觉没有必要同步 直接连接过去查看
|
|
572
|
+
# blockingScheduler.add_job(sync_company_announce, 'cron', hour='07,18,23', minute='33')
|
|
573
|
+
|
|
574
|
+
# check 前复权k线和下一个交易日策略k线数据同步状态
|
|
575
|
+
blockingScheduler.add_job(check_k_line_sync_count, 'cron', hour='6,23', minute='10')
|
|
576
|
+
|
|
577
|
+
# 同步公司产品区域信息
|
|
578
|
+
blockingScheduler.add_job(sync_all_company_info_task, 'cron', day_of_week='sat,sun', hour='09',
|
|
579
|
+
minute='10')
|
|
580
|
+
# 自动打板任务
|
|
581
|
+
blockingScheduler.add_job(auto_da_ban_task, 'cron', hour='19', minute='29')
|
|
488
582
|
|
|
489
583
|
print('定时任务启动成功')
|
|
490
584
|
blockingScheduler.start()
|
|
491
585
|
#
|
|
492
586
|
# if __name__ == '__main__':
|
|
493
|
-
#
|
|
587
|
+
# sync_company_product_area_industry()
|