mns-scheduler 1.1.8.4__py3-none-any.whl → 1.4.3.2__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.
Files changed (129) hide show
  1. mns_scheduler/__init__.py +1 -3
  2. mns_scheduler/company_info/announce/company_announce_sync_service.py +65 -0
  3. mns_scheduler/company_info/base/__init__.py +1 -1
  4. mns_scheduler/company_info/base/sync_company_base_info_api.py +171 -79
  5. mns_scheduler/company_info/base/sync_company_hold_info_api.py +3 -6
  6. mns_scheduler/company_info/base/sync_company_product_area_industry.py +161 -0
  7. mns_scheduler/company_info/clean/__init__.py +1 -1
  8. mns_scheduler/company_info/clean/company_info_clean_api.py +29 -9
  9. mns_scheduler/company_info/constant/__init__.py +1 -1
  10. mns_scheduler/company_info/constant/company_constant_data.py +285 -184
  11. mns_scheduler/company_info/de_list_stock/__init__.py +1 -1
  12. mns_scheduler/company_info/de_list_stock/de_list_stock_service.py +1 -1
  13. mns_scheduler/company_info/em_stock_info/__init__.py +7 -0
  14. mns_scheduler/company_info/em_stock_info/sync_em_stock_info_sync.py +80 -0
  15. mns_scheduler/company_info/remark/__init__.py +1 -1
  16. mns_scheduler/company_info/remark/company_remark_info_sync.py +3 -3
  17. mns_scheduler/concept/clean/kpl_concept_clean_api.py +1 -1
  18. mns_scheduler/concept/clean/ths_concept_clean_api.py +20 -4
  19. mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py +21 -16
  20. mns_scheduler/concept/ths/common/ths_concept_update_common_api.py +4 -1
  21. mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py +7 -7
  22. mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py +9 -4
  23. mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py +3 -3
  24. mns_scheduler/db/col_move_service.py +3 -3
  25. mns_scheduler/db/script/__init__.py +1 -1
  26. mns_scheduler/db/script/col_move_script.py +1 -1
  27. mns_scheduler/db/script/db_move/__init__.py +7 -0
  28. mns_scheduler/db/script/db_move/col_move_one_service.py +34 -0
  29. mns_scheduler/db/script/sync/__init__.py +1 -1
  30. mns_scheduler/db/script/sync/remote_data_sync_to_local.py +57 -4
  31. mns_scheduler/db/script/sync/sync_hui_ce_test_data.py +80 -0
  32. mns_scheduler/db/script/sync/sync_hui_ce_test_data_01.py +69 -0
  33. mns_scheduler/db/script/update/__init__.py +7 -0
  34. mns_scheduler/db/script/update/update_col_field.py +36 -0
  35. mns_scheduler/finance/__init__.py +1 -1
  36. mns_scheduler/finance/{em_financial_asset_liability_sync_service_api.py → em/em_financial_asset_liability_sync_service_api.py} +2 -2
  37. mns_scheduler/finance/{em_financial_profit_sync_service_api.py → em/em_financial_profit_sync_service_api.py} +27 -26
  38. mns_scheduler/finance/{finance_common_api.py → em/finance_common_api.py} +3 -3
  39. mns_scheduler/finance/{sync_financial_report_service_api.py → sync_financial_report_service_task.py} +80 -27
  40. mns_scheduler/finance/xue_qiu/down_load_xueqiu_report_api.py +77 -0
  41. mns_scheduler/finance/xue_qiu/sync_xue_qiu_fiance_data.py +161 -0
  42. mns_scheduler/hk/__init__.py +1 -1
  43. mns_scheduler/hk/hk_company_info_sync_service_api.py +4 -4
  44. mns_scheduler/hk/hk_industry_info_sync_service_api.py +3 -5
  45. mns_scheduler/industry/__init__.py +7 -0
  46. mns_scheduler/industry/ths/__init__.py +7 -0
  47. mns_scheduler/industry/ths/ths_industry_index_service.py +58 -0
  48. mns_scheduler/industry/ths/ths_industry_sync_service.py +68 -0
  49. mns_scheduler/irm/__init__.py +1 -1
  50. mns_scheduler/irm/api/__init__.py +1 -1
  51. mns_scheduler/irm/api/sh_stock_sns_sse_info_api.py +1 -1
  52. mns_scheduler/irm/api/sz_stock_sns_sse_info_api.py +1 -1
  53. mns_scheduler/irm/stock_irm_cninfo_service.py +12 -8
  54. mns_scheduler/k_line/clean/daily/__init__.py +1 -1
  55. mns_scheduler/k_line/clean/daily/daily_k_line_clean_common_service.py +52 -6
  56. mns_scheduler/k_line/clean/daily/daily_k_line_service.py +7 -2
  57. mns_scheduler/k_line/clean/k_line_info_clean_impl.py +3 -2
  58. mns_scheduler/k_line/clean/k_line_info_clean_task.py +42 -15
  59. mns_scheduler/k_line/clean/week_month/__init__.py +1 -1
  60. mns_scheduler/k_line/clean/week_month/normal_week_month_k_line_service.py +124 -26
  61. mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py +2 -2
  62. mns_scheduler/k_line/common/__init__.py +7 -0
  63. mns_scheduler/k_line/common/k_line_common_api.py +188 -0
  64. mns_scheduler/k_line/hot_stocks/__init__.py +1 -1
  65. mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py +1 -1
  66. mns_scheduler/k_line/{sync → month_week_daily}/bfq_k_line_sync.py +14 -29
  67. mns_scheduler/k_line/{sync → month_week_daily}/daily_week_month_line_sync.py +11 -12
  68. mns_scheduler/k_line/sync_status/__init__.py +7 -0
  69. mns_scheduler/k_line/sync_status/k_line_sync_status_check.py +54 -0
  70. mns_scheduler/k_line/test/__init__.py +1 -1
  71. mns_scheduler/k_line/test/k_line_info_clean_his_data.py +14 -3
  72. mns_scheduler/k_line/year_quarter/__init__.py +7 -0
  73. mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py +76 -0
  74. mns_scheduler/kpl/selection/symbol/sync_best_choose_symbol.py +1 -2
  75. mns_scheduler/kpl/selection/symbol/sync_kpl_concept_symbol_choose_reason_api.py +108 -0
  76. mns_scheduler/kpl/selection/total/sync_kpl_best_total_sync_api.py +5 -0
  77. mns_scheduler/lhb/__init__.py +1 -1
  78. mns_scheduler/lhb/stock_lhb_sync_service.py +1 -1
  79. mns_scheduler/open/__init__.py +1 -1
  80. mns_scheduler/open/sync_one_day_open_data_to_db_service.py +2 -3
  81. mns_scheduler/risk/__init__.py +1 -1
  82. mns_scheduler/risk/compliance/undisclosed_annual_report_api.py +8 -2
  83. mns_scheduler/risk/financial/annual_report_audit_check_api.py +13 -3
  84. mns_scheduler/risk/financial/net_assets_check_api.py +21 -18
  85. mns_scheduler/risk/financial/profit_income_check_api.py +7 -2
  86. mns_scheduler/risk/financial_report_risk_check_api.py +1 -1
  87. mns_scheduler/risk/major_violations/register_and_investigate_stock_sync_api.py +1 -1
  88. mns_scheduler/risk/self/wei_pan_stock_api.py +1 -1
  89. mns_scheduler/risk/test/__init__.py +1 -1
  90. mns_scheduler/risk/test/fix_blask_list.py +4 -6
  91. mns_scheduler/risk/transactions/transactions_check_api.py +22 -4
  92. mns_scheduler/self_choose/__init__.py +1 -1
  93. mns_scheduler/self_choose/ths_self_choose_service.py +60 -32
  94. mns_scheduler/trade/auto_login/trader_auto_service.py +6 -4
  95. mns_scheduler/trade/auto_sell_service_api.py +4 -4
  96. mns_scheduler/trade/balance/__init__.py +7 -0
  97. mns_scheduler/trade/balance/ths_account_balance_service.py +7 -0
  98. mns_scheduler/trade/sync_position_api.py +39 -6
  99. mns_scheduler/trade/task/trader_task_service.py +26 -9
  100. mns_scheduler/trade/tfp/__init__.py +7 -0
  101. mns_scheduler/trade/tfp/stock_tfp_info_sync.py +56 -0
  102. mns_scheduler/zb/stock_zb_pool_sync.py +1 -16
  103. mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py +2 -2
  104. mns_scheduler/zt/high_chg/sync_high_chg_real_time_quotes_service.py +1 -1
  105. mns_scheduler/zt/script/__init__.py +1 -1
  106. mns_scheduler/zt/script/fix_error_deal_day.py +41 -0
  107. mns_scheduler/zt/script/kcx_high_chg_open_his_data_handle.py +2 -2
  108. mns_scheduler/zt/script/sync_high_chg_pool_his_data.py +2 -2
  109. mns_scheduler/zt/script/sync_now_higt_chg_zt.py +8 -7
  110. mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py +256 -55
  111. mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py +33 -90
  112. mns_scheduler/zt/zt_pool/update_null_zt_reason_api.py +24 -13
  113. mns_scheduler/zz_task/compensation/__init__.py +0 -0
  114. mns_scheduler/zz_task/compensation/compensate_task.py +161 -0
  115. mns_scheduler/zz_task/compensation/compensate_task_one_day.py +142 -0
  116. mns_scheduler/zz_task/data_sync_task.py +177 -91
  117. {mns_scheduler-1.1.8.4.dist-info → mns_scheduler-1.4.3.2.dist-info}/METADATA +1 -1
  118. mns_scheduler-1.4.3.2.dist-info/RECORD +169 -0
  119. {mns_scheduler-1.1.8.4.dist-info → mns_scheduler-1.4.3.2.dist-info}/WHEEL +1 -1
  120. mns_scheduler/2014-2015-test/2014_2015_chg_statistics.py +0 -87
  121. mns_scheduler/big_deal/ths_big_deal_sync.py +0 -98
  122. mns_scheduler/db/real_time_task_check.py +0 -84
  123. mns_scheduler/debt/kzz_bond_info_sync.py +0 -33
  124. mns_scheduler-1.1.8.4.dist-info/RECORD +0 -142
  125. /mns_scheduler/{big_deal → company_info/announce}/__init__.py +0 -0
  126. /mns_scheduler/{2014-2015-test → finance/em}/__init__.py +0 -0
  127. /mns_scheduler/{debt → finance/xue_qiu}/__init__.py +0 -0
  128. /mns_scheduler/k_line/{sync → month_week_daily}/__init__.py +0 -0
  129. {mns_scheduler-1.1.8.4.dist-info → mns_scheduler-1.4.3.2.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,18 +20,17 @@ 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.sync.daily_week_month_line_sync as daily_week_month_line_sync_api
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
24
+ import mns_scheduler.company_info.announce.company_announce_sync_service as company_announce_sync_service
20
25
  import mns_scheduler.db.col_move_service as col_move_service
21
26
  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
27
  import mns_scheduler.zt.open_data.kcx_high_chg_open_data_sync as kcx_high_chg_open_data_sync
24
28
  import mns_scheduler.zt.export.export_kcx_high_chg_open_data_to_excel as export_kcx_high_chg_open_data_to_excel
25
29
  import mns_scheduler.zt.connected_boards.zt_five_boards_sync_api as zt_five_boards_sync_api
26
30
  import mns_scheduler.zt.zt_pool.em_zt_pool_sync_api as em_zt_pool_sync_api
27
31
  import mns_scheduler.k_line.clean.k_line_info_clean_task as k_line_info_clean_service
28
32
  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
33
+ import mns_common.api.em.gd.east_money_stock_gdfx_free_top_10_api as east_money_stock_gdfx_free_top_10_api
30
34
  import \
31
35
  mns_scheduler.concept.ths.update_concept_info.sync_one_concept_all_symbols_api as sync_one_concept_all_symbols_api
32
36
  import \
@@ -43,18 +47,21 @@ import mns_scheduler.irm.stock_irm_cninfo_service as stock_irm_cninfo_service
43
47
  import mns_scheduler.open.sync_one_day_open_data_to_db_service as sync_one_day_open_data_to_db_service
44
48
  import mns_scheduler.zt.high_chg.sync_high_chg_pool_service as sync_high_chg_pool_service
45
49
  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
50
  import mns_scheduler.risk.transactions.transactions_check_api as transactions_check_api
48
51
  import mns_scheduler.concept.ths.sync_new_index.sync_ths_concept_new_index_api as sync_ths_concept_new_index_api
49
52
  import mns_scheduler.company_info.clean.company_info_clean_api as company_info_clean_api
50
53
  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
54
  import mns_scheduler.trade.task.trader_task_service as trader_task_service
53
55
  import mns_scheduler.company_info.remark.company_remark_info_sync as company_remark_info_sync
54
- import mns_scheduler.finance.sync_financial_report_service_api as sync_financial_report_service_api
56
+ import mns_scheduler.finance.sync_financial_report_service_task as sync_financial_report_service_task
55
57
  import mns_scheduler.hk.hk_industry_info_sync_service_api as hk_industry_info_sync_service_api
56
58
  import mns_scheduler.hk.hk_company_info_sync_service_api as hk_company_info_sync_service_api
57
59
  import mns_scheduler.zt.zt_pool.update_null_zt_reason_api as update_null_zt_reason_api
60
+ import mns_scheduler.trade.tfp.stock_tfp_info_sync as stock_tfp_info_sync
61
+ import mns_scheduler.industry.ths.ths_industry_sync_service as ths_industry_sync_service
62
+ import mns_scheduler.k_line.year_quarter.year_quarter_line_sync as year_quarter_line_sync
63
+ import mns_scheduler.k_line.sync_status.k_line_sync_status_check as k_line_sync_status_check
64
+ import mns_scheduler.company_info.base.sync_company_product_area_industry as sync_company_product_area_industry_api
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', None)
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
- None)
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
- now_date = datetime.now()
120
- str_now_day = now_date.strftime('%Y-%m-%d')
121
- if trade_date_common_service_api.is_trade_day(str_now_day):
122
- logger.info('更新大单数据')
123
- ths_big_deal_sync_api.sync_ths_big_deal(False)
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', None)
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
- next_trade_day = trade_date_common_service_api.get_further_trade_date(str_day, 2)
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
 
@@ -287,7 +300,7 @@ def sync_new_concept_index_task():
287
300
  # 清洗公司基本信息
288
301
  def update_company_base_info():
289
302
  company_info_sync_api.sync_company_base_info(None)
290
- company_info_clean_api.fix_company_industry(None)
303
+ company_info_clean_api.clean_company_info(None)
291
304
  # 退市股票同步
292
305
  de_list_stock_service.sync_de_list_stock()
293
306
  logger.info('同步公司基本信息任务完成')
@@ -308,7 +321,7 @@ def sync_position():
308
321
  # 同步持仓
309
322
  if trade_date_common_service_api.is_trade_day(str_day):
310
323
  logger.info('同步持仓任务完成')
311
- sync_position_api.sync_position()
324
+ sync_position_api.sync_position_qmt()
312
325
 
313
326
 
314
327
  # 同步开盘啦当日精选指数行情数据
@@ -326,9 +339,9 @@ def sync_kpl_best_his_quotes():
326
339
  def sync_high_risk_stocks():
327
340
  logger.info('同步被立案调查的股票')
328
341
  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)
342
+ # reason_detail = '微盘股拉黑'
343
+ # concept_code_wei_pan = '883418'
344
+ # wei_pan_stock_api.add_concept_to_lack_list(concept_code_wei_pan, reason_detail)
332
345
  logger.info('同步交易类风险的股票')
333
346
  transactions_check_api.transactions_check_task()
334
347
 
@@ -337,16 +350,23 @@ def sync_high_risk_stocks():
337
350
  def sync_all_interactive_questions():
338
351
  now_date = datetime.now()
339
352
  str_day = now_date.strftime('%Y-%m-%d')
340
- hour = now_date.hour
341
- tag = (bool(1 - trade_date_common_service_api.is_trade_day(str_day))) or (hour >= 17)
353
+ # 非交易日同步
354
+ tag = bool(1 - trade_date_common_service_api.is_trade_day(str_day))
342
355
  if tag:
343
356
  logger.info('同步互动回答')
344
- stock_irm_cninfo_service.sync_all_interactive_questions(None)
357
+ stock_irm_cninfo_service.sync_symbols_interactive_questions([])
345
358
 
346
359
 
347
- # 数据同步状态check
348
- def real_time_task_check_status():
349
- real_time_task_check_api.run_check_real_time_data_sync_status()
360
+ # # 重开定时任务同步
361
+ # def real_time_sync_task_open():
362
+ # logger.info("开启实时行情同步任务")
363
+ # real_time_data_sync_check.real_time_sync_task_open()
364
+
365
+ #
366
+ # # 关闭实时行情任务
367
+ # def real_time_sync_task_close():
368
+ # logger.info("关闭实时行情同步任务")
369
+ # real_time_data_sync_check.real_time_sync_task_close()
350
370
 
351
371
 
352
372
  # 打开交易客户端
@@ -369,7 +389,7 @@ def self_choose_stock_task():
369
389
  # 同步财务报表
370
390
  def sync_financial_report_task():
371
391
  logger.info('同步财务报表任务')
372
- sync_financial_report_service_api.sync_financial_report()
392
+ sync_financial_report_service_task.sync_financial_report()
373
393
 
374
394
 
375
395
  # 同步hk公司信息
@@ -389,105 +409,171 @@ def update_null_zt_reason():
389
409
  logger.info("更新空涨停原因信息:{}", str_now_day)
390
410
 
391
411
 
392
- # # 定义BlockingScheduler
393
- blockingScheduler = BlockingScheduler()
394
- # sync_trade_date 同步交易日期
395
- blockingScheduler.add_job(sync_trade_date, 'cron', hour='20', minute='43')
412
+ # 同步公告信息
413
+ def sync_company_announce():
414
+ company_announce_sync_service.sync_company_announce(None)
396
415
 
397
- # 跌停信息同步
398
- blockingScheduler.add_job(sync_stock_dt_pool, 'cron', hour='15,21', minute='37')
399
416
 
400
- # 炸板信息同步
401
- blockingScheduler.add_job(sync_stock_zb_pool, 'cron', hour='15,17,21', minute='15')
417
+ # 同步停复牌信息
418
+ def sync_stock_tfp():
419
+ now_date = datetime.now()
420
+ str_day = now_date.strftime('%Y-%m-%d')
421
+ stock_tfp_info_sync.sync_stock_tfp(str_day)
402
422
 
403
- # (前复权--周k线)
404
- blockingScheduler.add_job(stock_sync_qfq_weekly, 'cron', day_of_week='fri', hour=16, minute=20)
405
423
 
406
- # (前复权--月k线)
407
- blockingScheduler.add_job(stock_sync_qfq_monthly, 'cron', hour='15,18', minute='35')
424
+ # 同步同花顺行业信息
425
+ def sync_ths_industry_info():
426
+ logger.info("同步同花顺行业信息开始")
427
+ ths_industry_sync_service.sync_ths_industry_index()
428
+ ths_industry_sync_service.sync_ths_industry_detail()
429
+ logger.info("同步同花顺行业信息完成")
408
430
 
409
- # 数据备份
410
- blockingScheduler.add_job(col_data_move, 'cron', hour='15', minute='26')
411
431
 
412
- # 数据库健康检查
413
- blockingScheduler.add_job(db_status_check, 'interval', seconds=30, max_instances=4)
432
+ # 同步年线数据
433
+ def sync_year_k_line():
434
+ logger.info("同步年线数据")
435
+ year_quarter_line_sync.sync_year_k_line()
414
436
 
415
- # 同步大单数据 暂停同步 20240430
416
- # blockingScheduler.add_job(sync_ths_big_deal, 'cron', hour='09', minute='30', max_instances=4)
417
437
 
418
- # todo 需要前后顺序执行
419
- # todo 当日k线信息
420
- # 同步一天k线 涨停 数据
421
- blockingScheduler.add_job(sync_daily_data_info, 'cron', hour='15,20', minute='26')
438
+ # 同步东方财富股票信息
439
+ def sync_all_em_stock_info():
440
+ sync_em_stock_info_sync.sync_all_em_stock_info()
441
+
442
+
443
+ # check 前复权k线和下一个交易日策略k线数据同步状态
444
+ def check_k_line_sync_count():
445
+ logger.info("check前复权k线和下一个交易日策略k线数据同步状态")
446
+ k_line_sync_status_check.check_k_line_sync_count()
447
+
448
+
449
+ # 同步公司产品区域信息
450
+ def sync_company_product_area_industry():
451
+ sync_company_product_area_industry_api.sync_company_product_area_industry_task(None)
452
+
453
+
454
+ # # 定义BlockingScheduler
455
+ blockingScheduler = BlockingScheduler()
456
+
457
+ # 同步东方财富a,etf,kzz,us,hk信息
458
+ blockingScheduler.add_job(sync_all_em_stock_info, 'cron', hour='07', minute='31')
459
+ blockingScheduler.add_job(sync_all_em_stock_info, 'cron', hour='15', minute='20')
422
460
 
423
461
  # 开盘前同步当天交易需要的k线数据
424
- blockingScheduler.add_job(sync_today_trade_k_line_info, 'cron', hour='08', minute='30')
462
+ blockingScheduler.add_job(sync_today_trade_k_line_info, 'cron', hour='07', minute='50')
463
+
464
+ # 同步单只股票下所有概念 by 股票代码
465
+ blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='07,08,18', minute='45')
466
+
467
+ # 打开交易客户端
468
+ blockingScheduler.add_job(trader_client_auto_login, 'cron', hour='08,09', minute='04')
469
+
470
+ # 获取当前持仓
471
+ blockingScheduler.add_job(sync_position, 'cron', hour='0,08,09', minute='14')
472
+
473
+ # 同步公司基本信息
474
+ blockingScheduler.add_job(update_company_base_info, 'cron', hour='08,18', minute='05')
475
+
476
+ # 同步互动回答
477
+ blockingScheduler.add_job(sync_all_interactive_questions, 'cron', hour='06,17', minute='30')
425
478
 
426
479
  # 同步十大流通股东信息
427
- blockingScheduler.add_job(sync_stock_gdfx_free_top_10_one_day, 'cron', hour='08,22', minute='23')
480
+ blockingScheduler.add_job(sync_stock_gdfx_free_top_10_one_day, 'cron', hour='06,18', minute='05')
428
481
 
429
- # 更新同花顺概念信息
430
- blockingScheduler.add_job(concept_info_clean, 'cron', hour='9,12,20', minute='24')
482
+ # 同步港股公司和行业信息
483
+ blockingScheduler.add_job(sync_hk_company_industry_info, 'cron', hour='08,15', minute='10')
431
484
 
432
485
  # 更新概念指数下所有股票组成 by 概念代码
433
486
  blockingScheduler.add_job(update_concept_all_detail_info, 'cron', hour='08,18,12', minute='30')
434
487
 
435
- # 同步单只股票下所有概念 by 股票代码
436
- blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='08,09,18', minute='15')
437
- # 同步单只股票下所有概念 by 股票代码 中午任务执行
438
- blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='12', minute='15,40')
488
+ # 自选股操作
489
+ blockingScheduler.add_job(self_choose_stock_task, 'cron', hour='08,17,21', minute='35')
439
490
 
440
491
  # 开盘前同步同花顺新概念指数
441
492
  blockingScheduler.add_job(sync_new_concept_index, 'cron', hour='09,22', minute='01,10,20,28,41,58')
442
493
 
443
- # 同步同花顺新增概念指数(定时轮训,暂时10分钟)
444
- blockingScheduler.add_job(sync_new_concept_index_task, 'interval', minutes=10, max_instances=4)
494
+ # 更新同花顺概念信息
495
+ blockingScheduler.add_job(concept_info_clean, 'cron', hour='9,12,20', minute='24')
445
496
 
446
- # 同步开盘啦新增精选概念(定时轮训,暂时五分钟)
447
- blockingScheduler.add_job(sync_all_kpl_plate_info, 'interval', minutes=5, max_instances=4)
497
+ # 更新开盘啦指数关系
498
+ blockingScheduler.add_job(update_best_choose_plate_relation, 'cron', hour='09,18', minute='25')
499
+
500
+ # 自动打新 打新中签高时间段 10:30-11:30
501
+ blockingScheduler.add_job(auto_ipo_buy, 'cron', hour='09', minute='40,50')
502
+
503
+ # 同步单只股票下所有概念 by 股票代码 中午任务执行
504
+ blockingScheduler.add_job(update_one_symbol_all_concepts, 'cron', hour='12', minute='15,40')
505
+
506
+ # 数据备份
507
+ blockingScheduler.add_job(col_data_move, 'cron', hour='15', minute='06')
448
508
 
449
- # 同步公司基本信息
450
- blockingScheduler.add_job(update_company_base_info, 'cron', hour='08,18', minute='05')
451
509
  # 更新当天涨停股票池
452
- blockingScheduler.add_job(sync_stock_zt_pool, 'cron', hour='15,19', minute='05')
510
+ blockingScheduler.add_job(sync_stock_zt_pool, 'cron', hour='15,19', minute='10')
453
511
 
454
- # 自动打新 打新中签高时间段 10:30-11:30
455
- blockingScheduler.add_job(auto_ipo_buy, 'cron', hour='10', minute='40,50')
512
+ # todo 需要前后顺序执行
513
+ # todo 当日k线信息
514
+ # 同步一天k线 涨停 数据
515
+ blockingScheduler.add_job(sync_daily_data_info, 'cron', hour='15,20', minute='15')
456
516
 
457
- # 更新开盘啦指数关系
458
- blockingScheduler.add_job(update_best_choose_plate_relation, 'cron', hour='09,18', minute='25')
517
+ # (前复权--月k线)
518
+ blockingScheduler.add_job(stock_sync_qfq_monthly, 'cron', hour='15,18', minute='35')
519
+
520
+ # 复盘需要的数据
521
+ blockingScheduler.add_job(sync_toady_stock_zt_pool, 'cron', hour='15', minute='40')
522
+
523
+ # 炸板信息同步 同步停复牌信息
524
+ blockingScheduler.add_job(sync_stock_zb_pool, 'cron', hour='16,21', minute='15')
525
+
526
+ # 跌停信息同步
527
+ blockingScheduler.add_job(sync_stock_dt_pool, 'cron', hour='16,21', minute='37')
528
+
529
+ # 更新空的涨停原因股票
530
+ blockingScheduler.add_job(update_null_zt_reason, 'cron', hour='16,17,18,19,20,21,22,23', minute='19')
531
+
532
+ # 同步财务报表任务
533
+ blockingScheduler.add_job(sync_financial_report_task, 'cron', hour='17', minute='30')
534
+
535
+ # 同步同花顺行业信息
536
+ blockingScheduler.add_job(sync_ths_industry_info, 'cron', hour='17,22', minute='38')
459
537
 
460
538
  # 更新开盘啦指数历史指数
461
539
  blockingScheduler.add_job(sync_kpl_best_his_quotes, 'cron', hour='18,22', minute='25')
462
540
 
463
- # 获取同花顺持仓
464
- blockingScheduler.add_job(sync_position, 'cron', hour='0,09', minute='10')
541
+ # 同步年线数据
542
+ blockingScheduler.add_job(sync_year_k_line, 'cron', hour='18,23', minute='55')
543
+
544
+ # 同步交易日期
545
+ blockingScheduler.add_job(sync_trade_date, 'cron', hour='20', minute='43')
546
+
547
+ # 同步公司备注信息
548
+ blockingScheduler.add_job(sync_company_remark_info, 'cron', hour='22', minute='30')
465
549
 
466
550
  # 同步高风险股票
467
- blockingScheduler.add_job(sync_high_risk_stocks, 'cron', hour='0,09,12,16', minute='20')
551
+ blockingScheduler.add_job(sync_high_risk_stocks, 'cron', hour='0,12,16', minute='20')
468
552
 
469
- # 同步互动回答
470
- blockingScheduler.add_job(sync_all_interactive_questions, 'cron', hour='08,12,17', minute='05')
553
+ # (前复权--周k线)
554
+ blockingScheduler.add_job(stock_sync_qfq_weekly, 'cron', day_of_week='fri', hour=16, minute=20)
471
555
 
472
- # 实时数据状态同步check
473
- blockingScheduler.add_job(real_time_task_check_status, 'interval', seconds=59, max_instances=4)
556
+ # 数据库健康检查
557
+ blockingScheduler.add_job(db_status_check, 'interval', seconds=30, max_instances=4)
474
558
 
475
- # 打开交易客户端
476
- blockingScheduler.add_job(trader_client_auto_login, 'cron', hour='08,12', minute='30')
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')
559
+ # 同步同花顺新增概念指数(定时轮训,暂时10分钟)
560
+ blockingScheduler.add_job(sync_new_concept_index_task, 'interval', minutes=10, max_instances=4)
483
561
 
484
- # 同步港股公司和行业信息
485
- blockingScheduler.add_job(sync_hk_company_industry_info, 'cron', hour='08,15', minute='10')
486
- # 更新空的涨停原因股票
487
- blockingScheduler.add_job(update_null_zt_reason, 'cron', hour='16,17,18,19,20,21,22,23', minute='19')
562
+ # 同步开盘啦新增精选概念(定时轮训,暂时五分钟)
563
+ blockingScheduler.add_job(sync_all_kpl_plate_info, 'interval', minutes=5, max_instances=4)
564
+
565
+ # 同步新公告信息 感觉没有必要同步 直接连接过去查看
566
+ # blockingScheduler.add_job(sync_company_announce, 'cron', hour='07,18,23', minute='33')
567
+
568
+ # check 前复权k线和下一个交易日策略k线数据同步状态
569
+ blockingScheduler.add_job(check_k_line_sync_count, 'cron', hour='6,23', minute='10')
570
+
571
+ # 同步公司产品区域信息
572
+ blockingScheduler.add_job(sync_company_product_area_industry, 'cron', day_of_week='sat,sun', hour='10,20',
573
+ minute='10')
488
574
 
489
575
  print('定时任务启动成功')
490
576
  blockingScheduler.start()
491
577
  #
492
578
  # if __name__ == '__main__':
493
- # sync_daily_data_info()
579
+ # sync_company_product_area_industry()
@@ -1,4 +1,4 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns-scheduler
3
- Version: 1.1.8.4
3
+ Version: 1.4.3.2
4
4
 
@@ -0,0 +1,169 @@
1
+ mns_scheduler/__init__.py,sha256=_nhtk1b00OsMAiqRATNrb3HD44RmgjSG5jqS-QLNMrQ,130
2
+ mns_scheduler/company_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
3
+ mns_scheduler/company_info/announce/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
4
+ mns_scheduler/company_info/announce/company_announce_sync_service.py,sha256=q8zYOZJmRin_QU2uPk52wngNdgnZooabnfrnqzqFIrM,3055
5
+ mns_scheduler/company_info/base/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
6
+ mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=QAwzK7lex_BuDYwA02XNWiS8xCB402LEisdCnbcUzfo,24393
7
+ mns_scheduler/company_info/base/sync_company_hold_info_api.py,sha256=XEdJzDt6RQqzZOv4mEOFfeh7q7LPTTNWNwT0AR1zHJc,1409
8
+ mns_scheduler/company_info/base/sync_company_product_area_industry.py,sha256=fEWvYjknjC19yUiitfCdQeFKt77tfYQDSJv1bv1ZSXY,7295
9
+ mns_scheduler/company_info/clean/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
10
+ mns_scheduler/company_info/clean/company_info_clean_api.py,sha256=vm6gr2yKoMpIFRmsz_EvKfd_7ItbfInjkISHhKWHqBA,6102
11
+ mns_scheduler/company_info/constant/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
12
+ mns_scheduler/company_info/constant/company_constant_data.py,sha256=7emiXUeAla8nfyYYauGjsMarfY3ckN4TgYlON477jQE,22566
13
+ mns_scheduler/company_info/de_list_stock/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
14
+ mns_scheduler/company_info/de_list_stock/de_list_stock_service.py,sha256=QNtKc1ZI6xHjupcxbOBN7fBhi6oAGtL7X1TQZVzfpnk,1993
15
+ mns_scheduler/company_info/em_stock_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
16
+ mns_scheduler/company_info/em_stock_info/sync_em_stock_info_sync.py,sha256=9NIv8HRAgjGFcTnw_i9YGQzQBZc57T2hdt66ciZcMZY,3922
17
+ mns_scheduler/company_info/remark/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
18
+ mns_scheduler/company_info/remark/company_remark_info_sync.py,sha256=L8wC8LU7-GYZb1TyKLjODJURROOEO4izZBxnWEM7Ahc,2334
19
+ mns_scheduler/concept/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
20
+ mns_scheduler/concept/clean/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
21
+ mns_scheduler/concept/clean/kpl_concept_clean_api.py,sha256=NuTJnu1uF7uQ4LcMpXHRKfdNBd-FC4rDmVWsFBj1n2I,4512
22
+ mns_scheduler/concept/clean/ths_concept_clean_api.py,sha256=BlAfu9zyeWmzbDKtgmhBiOyFKRNpA_iXVNKsP7S92wc,6933
23
+ mns_scheduler/concept/ths/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
24
+ mns_scheduler/concept/ths/common/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
25
+ mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py,sha256=mJHFdZGpkVn9xiby2eCYvapZAhQuxSfxQGrGsr3dso0,10222
26
+ mns_scheduler/concept/ths/common/ths_concept_update_common_api.py,sha256=Mwy2g5bXWJBbcS_qS7bY_yx7g41mIQ36GIwa0Qbrd0E,4577
27
+ mns_scheduler/concept/ths/detaill/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
+ mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py,sha256=O99zE0QHGedcCdY_PKWtOYhR4BCAD2hJRO7lCD7gNfg,10865
29
+ mns_scheduler/concept/ths/sync_new_index/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
30
+ mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py,sha256=wllTGr3HfP4HSg776I5v6XcMGZMrunSTJCmWwTnT1VU,7923
31
+ mns_scheduler/concept/ths/update_concept_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
32
+ mns_scheduler/concept/ths/update_concept_info/sync_one_concept_all_symbols_api.py,sha256=wwuLfjj9AnFcHP-oQPC5AhpwgZ8IsPiNUh-Z6swcngA,1380
33
+ mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py,sha256=uOB8blinBrQ2LRVxFSfOMaUn9G3PwOwEy_XaSReHhCY,9392
34
+ mns_scheduler/db/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
35
+ mns_scheduler/db/col_move_service.py,sha256=9pOrHJ6rQuMPQdGFho1IJMEy2xvpQ20iku3p20MuAhg,4238
36
+ mns_scheduler/db/db_status.py,sha256=e5eW5ZSm5J7tHvmxxhFmFdbZb2_oB_SAcdcFqc4KDmw,733
37
+ mns_scheduler/db/script/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
38
+ mns_scheduler/db/script/col_move_script.py,sha256=Qgo4rktcxJECXwQ4o1lxRj0g306lQhlRCs-0ngyUi70,1163
39
+ mns_scheduler/db/script/db_move/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
40
+ mns_scheduler/db/script/db_move/col_move_one_service.py,sha256=v-4qzgIy95iI0EVFBEh4XXJH5jCzDsMUtImFpz8yqJE,913
41
+ mns_scheduler/db/script/sync/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
42
+ mns_scheduler/db/script/sync/local_mongo_util.py,sha256=MFG-S7aUBLKe4tkhKNklUzpiZef2n078YXd39dfOMy0,7540
43
+ mns_scheduler/db/script/sync/remote_data_sync_to_local.py,sha256=1o2xR0Av9NvTFrxpIVfvclgJI2wiVslutj3-SkxB8cw,3675
44
+ mns_scheduler/db/script/sync/remote_mongo_util.py,sha256=-BCR2zeQ9z0zeZg6wO0aCS4bGnsGIohFRH7QR8XXJSo,10966
45
+ mns_scheduler/db/script/sync/sync_hui_ce_test_data.py,sha256=oymZRnt-cMnrrHod796XqSvc8vWSsCCpwx2Lbf0-jBc,2395
46
+ mns_scheduler/db/script/sync/sync_hui_ce_test_data_01.py,sha256=32F7kmxgube7F-_9-QhAHdjqWAQfRZZ51p7MdKi1u6I,2172
47
+ mns_scheduler/db/script/update/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
48
+ mns_scheduler/db/script/update/update_col_field.py,sha256=m7RJbNLTcaeknwHR50i3aebT--Rc6udpbOqyGwt61qg,1274
49
+ mns_scheduler/dt/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
50
+ mns_scheduler/dt/stock_dt_pool_sync.py,sha256=5ivRUOnFtOapZniwTbujf1lVq3y4btm2Cmd5R6JJAVo,3466
51
+ mns_scheduler/finance/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
52
+ mns_scheduler/finance/sync_financial_report_service_task.py,sha256=ROJ4aOtv3lRqMIhCyy9uV54Of5Q-LhzvvJslu33Jp08,8867
53
+ mns_scheduler/finance/em/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
54
+ mns_scheduler/finance/em/em_financial_asset_liability_sync_service_api.py,sha256=1e5VIdQV4U19CBJP0Ow_fp3WvfUF8sPQQQXG8zv5qjo,19420
55
+ mns_scheduler/finance/em/em_financial_profit_sync_service_api.py,sha256=j5xnzcSthy6qc5dYr52DnxqN2T4zf_rldlRWbLyz90I,14550
56
+ mns_scheduler/finance/em/finance_common_api.py,sha256=rqsVJZEklJjvM9ogl-9GQaWxyh1LE6IKoTkQkN5cBvE,2453
57
+ mns_scheduler/finance/xue_qiu/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
58
+ mns_scheduler/finance/xue_qiu/down_load_xueqiu_report_api.py,sha256=r_RtfM2SBzQcvO1MH8Dt8mOXg2tbZOLz0sNwqne9jFs,2769
59
+ mns_scheduler/finance/xue_qiu/sync_xue_qiu_fiance_data.py,sha256=aRqNPqnyCP_sKl7afdk3Xrfa9IRCbU6MDK3_AlxTDBQ,7218
60
+ mns_scheduler/hk/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
61
+ mns_scheduler/hk/hk_company_info_sync_service_api.py,sha256=MGIKodN9oXaY0iwtdsrg4wwHXkMglFvY8eyeTpbas6k,3724
62
+ mns_scheduler/hk/hk_industry_info_sync_service_api.py,sha256=WdCTaBi4GDicWfmiYbI-byBCXZwknkYZHk6y2IloMys,2275
63
+ mns_scheduler/industry/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
64
+ mns_scheduler/industry/ths/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
65
+ mns_scheduler/industry/ths/ths_industry_index_service.py,sha256=MHvzUsDHnmdQn-mJc_D2uBKP0qvVWWagDV568xChPqg,2686
66
+ mns_scheduler/industry/ths/ths_industry_sync_service.py,sha256=r0jLbY3JcnCGgLWYzRrXiqIbeT8PBGnG2dT_INuN824,2762
67
+ mns_scheduler/irm/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
68
+ mns_scheduler/irm/stock_irm_cninfo_service.py,sha256=ChOl_zWNSCXpj-NlveLaSsfie8hARusU4Ut1V_LAeOc,9759
69
+ mns_scheduler/irm/api/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
70
+ mns_scheduler/irm/api/sh_stock_sns_sse_info_api.py,sha256=EE09q9iIPNAEzxhKCM-2tsm1FZID3-fqdfikK1VS6H8,4931
71
+ mns_scheduler/irm/api/sz_stock_sns_sse_info_api.py,sha256=iJ9K8FhatQpCx5PqusIH5x4MAw3F1v3fYC1Ztsp_2Zw,6199
72
+ mns_scheduler/k_line/__init__.py,sha256=ffZXFCLFdIwOsbxnw__u1MbQYh9yz7Bs8UMP6VF0X2M,161
73
+ mns_scheduler/k_line/clean/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
74
+ mns_scheduler/k_line/clean/k_line_info_clean_impl.py,sha256=ZTnSpQ2zKnNPWCkHKPJkLdkxVK29szgufxNV6uvXG7s,1344
75
+ mns_scheduler/k_line/clean/k_line_info_clean_task.py,sha256=i-6XSHUC6NxgZubCfU8NGyA0YHHMgi1b-xxlrRhg-is,9026
76
+ mns_scheduler/k_line/clean/daily/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
77
+ mns_scheduler/k_line/clean/daily/daily_k_line_clean_common_service.py,sha256=gIoInwd1eCKCmhIOJHo8MuNEwj8ehMxYw83j52pxmxk,20447
78
+ mns_scheduler/k_line/clean/daily/daily_k_line_service.py,sha256=1S-6sih0KptZEWYBN3jgVJHlv5y11QPONYjR-MpOQn8,6906
79
+ mns_scheduler/k_line/clean/week_month/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
80
+ mns_scheduler/k_line/clean/week_month/normal_week_month_k_line_service.py,sha256=n2osY8dozHClIlSOE7NR6S_oK_8GV-z72Az13D3fhCQ,10160
81
+ mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py,sha256=0rc2Rz_EoqoqpVvgPe4daCe09JtHBlJsQr1bMIlBQ2o,5526
82
+ mns_scheduler/k_line/common/__init__.py,sha256=itoGlqKhsx7EVXQoD1vchDKQ5GPB16vDjofTSuQtrXg,161
83
+ mns_scheduler/k_line/common/k_line_common_api.py,sha256=2CPQxGfYxwMrTkjpEwywQTsuAMh10NKQysUxWM0bWvY,7116
84
+ mns_scheduler/k_line/hot_stocks/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
85
+ mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py,sha256=8woZzGVORYX9KZr6xtfiYYgApDKissnzYM6hS2k6XBA,2628
86
+ mns_scheduler/k_line/month_week_daily/__init__.py,sha256=ffZXFCLFdIwOsbxnw__u1MbQYh9yz7Bs8UMP6VF0X2M,161
87
+ mns_scheduler/k_line/month_week_daily/bfq_k_line_sync.py,sha256=ccHC9W3tQsZJI6BEpeH5DJ_Zvb6PZb5hYgF_OlGM-14,2668
88
+ mns_scheduler/k_line/month_week_daily/daily_week_month_line_sync.py,sha256=xhPgLUhb-pGg-nYXvsiJzsPAnIzQuQ46es6oWsDiiqg,5619
89
+ mns_scheduler/k_line/sync_status/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
90
+ mns_scheduler/k_line/sync_status/k_line_sync_status_check.py,sha256=GXKUiRggwk9phisd_QzPgC8gVezEpPbjitUJYxYjAXs,2218
91
+ mns_scheduler/k_line/test/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
92
+ mns_scheduler/k_line/test/k_line_info_clean_his_data.py,sha256=eWtzWL1geX5rrwfrlvDCuaTvy1CI9Zgk7CC4zlsncD4,1663
93
+ mns_scheduler/k_line/year_quarter/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
94
+ mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py,sha256=XjugLj0nzzp6ZHNjZW5zAWud1Sd6zgJaIwJtMCgiAko,3286
95
+ mns_scheduler/kpl/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
96
+ mns_scheduler/kpl/selection/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
97
+ mns_scheduler/kpl/selection/index/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
98
+ mns_scheduler/kpl/selection/index/sync_best_choose_his_index.py,sha256=Cle5cU90HVo-vulFCRwaAFDG-J3dCriXmWm1OKHPnr4,4748
99
+ mns_scheduler/kpl/selection/index/sync_best_choose_index.py,sha256=-34drqAMsx792DxR8P1A8DrGCM5yIVGsop3UzDNzsPw,8016
100
+ mns_scheduler/kpl/selection/symbol/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
101
+ mns_scheduler/kpl/selection/symbol/sync_best_choose_symbol.py,sha256=Z0p3r-JWpxlEK2u00HIzVqEEg64r5AE72KQ2Bivwv_k,4756
102
+ mns_scheduler/kpl/selection/symbol/sync_kpl_concept_symbol_choose_reason_api.py,sha256=KHFo3v_xpjHqWTmXw0P1kP14DXJxIcXVj3c3AtIC6W8,5622
103
+ mns_scheduler/kpl/selection/total/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
104
+ mns_scheduler/kpl/selection/total/sync_kpl_best_total_sync_api.py,sha256=ljacoCP2gGtiwOT89FywE38vGGwZv1FmHNxS0PSx6-A,10755
105
+ mns_scheduler/lhb/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
106
+ mns_scheduler/lhb/stock_lhb_sync_service.py,sha256=-nJBWo7LMyB4oCZE9BWX_aRyh5c6iAljPe7t4okSBZg,641
107
+ mns_scheduler/open/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
108
+ mns_scheduler/open/sync_one_day_open_data_to_db_service.py,sha256=4ghPSJaeSZB974TGLUWFIpBIy_5nSppCfVWFY4Ofurk,2638
109
+ mns_scheduler/risk/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
110
+ mns_scheduler/risk/financial_report_risk_check_api.py,sha256=cOW_zh0bGn432cjj_kLlXW1Yp66Ne17aPwwg77yzOmE,1648
111
+ mns_scheduler/risk/compliance/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
112
+ mns_scheduler/risk/compliance/undisclosed_annual_report_api.py,sha256=nlA4Mc6rhuCt_cveaVpKtbSTN1JJtzJcXudUAzJyCkE,3873
113
+ mns_scheduler/risk/financial/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
114
+ mns_scheduler/risk/financial/annual_report_audit_check_api.py,sha256=bNiMXDNt88XEsk0W8oUOQ4OdBvJzwRGjN9SNAygYlhI,2580
115
+ mns_scheduler/risk/financial/net_assets_check_api.py,sha256=glhBAyixc4mNfFUCRyT22wsAQC20R67jthyg8uvsOS4,4737
116
+ mns_scheduler/risk/financial/profit_income_check_api.py,sha256=PAKAcDlau3PCPlQxL1lJ_fsL6HMHqN0Ew5s4L1DfKkE,4568
117
+ mns_scheduler/risk/financial/stock_equity_mortgage_check_api.py,sha256=SQ7dieSCOf1z42Wi1zDEii3poAT5wfyBrV43dXkAaaw,22
118
+ mns_scheduler/risk/major_violations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
+ mns_scheduler/risk/major_violations/register_and_investigate_stock_sync_api.py,sha256=Mf_jrNE7m2kVILfj-SukVpZ4d2a-BBZrXhPK1oR_vkw,5672
120
+ mns_scheduler/risk/self/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
+ mns_scheduler/risk/self/wei_pan_stock_api.py,sha256=ac_hhdwoK8-uI_ag40YEj4iTOkB8GZ9vzT9mB8Rlwbc,1899
122
+ mns_scheduler/risk/test/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
123
+ mns_scheduler/risk/test/fix_blask_list.py,sha256=IRDedHWuTi9y8EIZSwdiRxEUZcYAY3TH15GgJRmnQEw,1245
124
+ mns_scheduler/risk/transactions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
125
+ mns_scheduler/risk/transactions/transactions_check_api.py,sha256=8lXid7P8NTVW9aPKS-v6Tv0wiseCnasVQQzD9sR49XI,7379
126
+ mns_scheduler/self_choose/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
127
+ mns_scheduler/self_choose/ths_self_choose_service.py,sha256=g3w4DBE_BGo-ey4Sj_Z5wqjUugTrMBAjEpGcoDGPyHE,7155
128
+ mns_scheduler/trade/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
129
+ mns_scheduler/trade/auto_ipo_buy_api.py,sha256=jVe5ZiXwzkDy_j_4X4rUamSzJpmzhV16lNKwbeWgpQw,386
130
+ mns_scheduler/trade/auto_sell_service_api.py,sha256=A2RB3WFxVHqbNPaPvhIgO-3uaicFZVmBKUy2TsfMU90,4624
131
+ mns_scheduler/trade/sync_position_api.py,sha256=o73_qdh_2uzOed6HFzAipM5hKOLqVhThph2DcAri3Oc,4136
132
+ mns_scheduler/trade/auto_login/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
133
+ mns_scheduler/trade/auto_login/trader_auto_service.py,sha256=bsagj26s74Zv5OEyGahhBX_OK4Iuo5ZmuItsON9DDmY,795
134
+ mns_scheduler/trade/balance/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
135
+ mns_scheduler/trade/balance/ths_account_balance_service.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
136
+ mns_scheduler/trade/task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
137
+ mns_scheduler/trade/task/trader_task_service.py,sha256=1vdjfs-M9y0ana2OLwWdlkB9YS-hm9LrChlw3Ectyeg,2305
138
+ mns_scheduler/trade/tfp/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
139
+ mns_scheduler/trade/tfp/stock_tfp_info_sync.py,sha256=7sHUhvMW_5vEyfVhFGDP7It2F27STb0OcpNnBCQjZ8I,2574
140
+ mns_scheduler/zb/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
141
+ mns_scheduler/zb/stock_zb_pool_sync.py,sha256=YXXmofkOsXxTQSUboy7AfEQUeszXVop5oZxLKBqQpJE,1272
142
+ mns_scheduler/zt/__init__.py,sha256=Rzolrn2R5RZIj-eOmu9KcL6oZBY9Wjz_uBFXPlzirQc,1641
143
+ mns_scheduler/zt/connected_boards/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
144
+ mns_scheduler/zt/connected_boards/zt_five_boards_sync_api.py,sha256=HfjPHKD99fU9c37kSenEX2_qNvFAjQGgy8ERuacSxwk,10916
145
+ mns_scheduler/zt/export/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
146
+ mns_scheduler/zt/export/export_kcx_high_chg_open_data_to_excel.py,sha256=9LK1s2BCzsXLMAYMmiMAZsmz8iha88JVcp6SKqIW37s,4063
147
+ mns_scheduler/zt/high_chg/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
148
+ mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py,sha256=rrvFgxduBTRdJig5KKd-BoepKpCn5SKDSRo6A4U3LFI,13329
149
+ mns_scheduler/zt/high_chg/sync_high_chg_real_time_quotes_service.py,sha256=IvP8tTtWTuMvTdIGFGLmhf9MH_Qfa8P5IpRuHfxTkdw,6351
150
+ mns_scheduler/zt/open_data/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
151
+ mns_scheduler/zt/open_data/kcx_high_chg_open_data_sync.py,sha256=wZiqOre2UK9CxIR7dDk11DmqRY3n2_eE2pe0JfmMcjk,11616
152
+ mns_scheduler/zt/script/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
153
+ mns_scheduler/zt/script/fix_error_deal_day.py,sha256=7GrCfI_XCq5G69_17JS5i4FE0l3pwWVkL-ZnqmH5FVA,1624
154
+ mns_scheduler/zt/script/kcx_high_chg_open_his_data_handle.py,sha256=k2nrBjG41LU4ASXsFwbceg_WaROyB85XBmuccmre7Z0,5571
155
+ mns_scheduler/zt/script/sync_high_chg_pool_his_data.py,sha256=WX5ZlV0x2kkXiLTep8fcs2ZkWY5BMWS8lQv8xpq4DlY,1685
156
+ mns_scheduler/zt/script/sync_now_higt_chg_zt.py,sha256=7qUtn58ty9Vc6kY33BooCDIOojDGmSf9U5ncAtZt4cc,1853
157
+ mns_scheduler/zt/zt_pool/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
158
+ mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py,sha256=HMPFX4vf80XEE5RIByF0GEXsWIKWyj7CRZTzHIecC0g,19192
159
+ mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=LI4o4_sovmLj1tMROPRQRCj5gaITKLGoYH-nUCuysbU,7501
160
+ mns_scheduler/zt/zt_pool/update_null_zt_reason_api.py,sha256=A-qohVTrnSd8Bs9gubjxScGjB7zEZOBLJuVZfuIwLeU,2445
161
+ mns_scheduler/zz_task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
162
+ mns_scheduler/zz_task/data_sync_task.py,sha256=GbOJ0DhHVxTAz9W09POLZl3AzYFlTsPP7Q1VikSfQkY,23545
163
+ mns_scheduler/zz_task/compensation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
+ mns_scheduler/zz_task/compensation/compensate_task.py,sha256=Dyo66NcSnXZ-Cne4_v77BBb27SemAiuGXRLnvQ26X0E,6464
165
+ mns_scheduler/zz_task/compensation/compensate_task_one_day.py,sha256=jvaYpUS8AyJHgJTNchbco6eXMSzW1o4YNHgUBqrRTDk,5753
166
+ mns_scheduler-1.4.3.2.dist-info/METADATA,sha256=WFmT7oEk8SMVpymzgqqdx7mr0DeZ4UAeJRWCLMiS9wo,64
167
+ mns_scheduler-1.4.3.2.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
168
+ mns_scheduler-1.4.3.2.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
169
+ mns_scheduler-1.4.3.2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.43.0)
2
+ Generator: bdist_wheel (0.45.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5