mns-scheduler 1.3.2.4__tar.gz → 1.3.2.5__tar.gz

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.

Potentially problematic release.


This version of mns-scheduler might be problematic. Click here for more details.

Files changed (170) hide show
  1. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/PKG-INFO +1 -1
  2. mns-scheduler-1.3.2.5/mns_scheduler/k_line/common/__init__.py +7 -0
  3. mns-scheduler-1.3.2.5/mns_scheduler/k_line/common/k_line_common_api.py +144 -0
  4. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/month_week_daily/bfq_k_line_sync.py +12 -32
  5. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/month_week_daily/daily_week_month_line_sync.py +4 -11
  6. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py +16 -9
  7. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/script/sync_now_higt_chg_zt.py +4 -3
  8. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py +5 -11
  9. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zz_task/data_sync_task.py +3 -3
  10. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler.egg-info/PKG-INFO +1 -1
  11. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler.egg-info/SOURCES.txt +2 -0
  12. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/setup.py +1 -1
  13. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/README.md +0 -0
  14. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/__init__.py +0 -0
  15. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/big_deal/__init__.py +0 -0
  16. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/big_deal/ths_big_deal_sync.py +0 -0
  17. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/__init__.py +0 -0
  18. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/announce/__init__.py +0 -0
  19. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/announce/company_announce_sync_service.py +0 -0
  20. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/base/__init__.py +0 -0
  21. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/base/sync_company_base_info_api.py +0 -0
  22. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/base/sync_company_hold_info_api.py +0 -0
  23. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/clean/__init__.py +0 -0
  24. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/clean/company_info_clean_api.py +0 -0
  25. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/constant/__init__.py +0 -0
  26. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/constant/company_constant_data.py +0 -0
  27. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/de_list_stock/__init__.py +0 -0
  28. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/de_list_stock/de_list_stock_service.py +0 -0
  29. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/em_stock_info/__init__.py +0 -0
  30. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/em_stock_info/sync_em_stock_info_sync.py +0 -0
  31. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/remark/__init__.py +0 -0
  32. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/company_info/remark/company_remark_info_sync.py +0 -0
  33. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/__init__.py +0 -0
  34. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/clean/__init__.py +0 -0
  35. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/clean/kpl_concept_clean_api.py +0 -0
  36. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/clean/ths_concept_clean_api.py +0 -0
  37. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/__init__.py +0 -0
  38. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/common/__init__.py +0 -0
  39. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py +0 -0
  40. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/common/ths_concept_update_common_api.py +0 -0
  41. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/detaill/__init__.py +0 -0
  42. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py +0 -0
  43. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/sync_new_index/__init__.py +0 -0
  44. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py +0 -0
  45. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/update_concept_info/__init__.py +0 -0
  46. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/update_concept_info/sync_one_concept_all_symbols_api.py +0 -0
  47. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py +0 -0
  48. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/__init__.py +0 -0
  49. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/col_move_service.py +0 -0
  50. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/db_status.py +0 -0
  51. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/__init__.py +0 -0
  52. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/col_move_script.py +0 -0
  53. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/db_move/__init__.py +0 -0
  54. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/db_move/col_move_one_service.py +0 -0
  55. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/sync/__init__.py +0 -0
  56. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/sync/local_mongo_util.py +0 -0
  57. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/sync/remote_data_sync_to_local.py +0 -0
  58. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/sync/remote_mongo_util.py +0 -0
  59. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/sync/sync_hui_ce_test_data.py +0 -0
  60. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/sync/sync_hui_ce_test_data_01.py +0 -0
  61. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/update/__init__.py +0 -0
  62. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/db/script/update/update_col_field.py +0 -0
  63. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/debt/__init__.py +0 -0
  64. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/debt/kzz_bond_info_sync.py +0 -0
  65. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/dt/__init__.py +0 -0
  66. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/dt/stock_dt_pool_sync.py +0 -0
  67. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/finance/__init__.py +0 -0
  68. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/finance/em_financial_asset_liability_sync_service_api.py +0 -0
  69. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/finance/em_financial_profit_sync_service_api.py +0 -0
  70. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/finance/finance_common_api.py +0 -0
  71. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/finance/sync_financial_report_service_api.py +0 -0
  72. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/hk/__init__.py +0 -0
  73. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/hk/hk_company_info_sync_service_api.py +0 -0
  74. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/hk/hk_industry_info_sync_service_api.py +0 -0
  75. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/industry/__init__.py +0 -0
  76. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/industry/ths/__init__.py +0 -0
  77. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/industry/ths/ths_industry_index_service.py +0 -0
  78. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/industry/ths/ths_industry_sync_service.py +0 -0
  79. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/irm/__init__.py +0 -0
  80. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/irm/api/__init__.py +0 -0
  81. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/irm/api/sh_stock_sns_sse_info_api.py +0 -0
  82. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/irm/api/sz_stock_sns_sse_info_api.py +0 -0
  83. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/irm/stock_irm_cninfo_service.py +0 -0
  84. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/__init__.py +0 -0
  85. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/__init__.py +0 -0
  86. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/daily/__init__.py +0 -0
  87. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/daily/daily_k_line_clean_common_service.py +0 -0
  88. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/daily/daily_k_line_service.py +0 -0
  89. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/k_line_info_clean_impl.py +0 -0
  90. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/k_line_info_clean_task.py +0 -0
  91. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/week_month/__init__.py +0 -0
  92. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/week_month/normal_week_month_k_line_service.py +0 -0
  93. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py +0 -0
  94. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/hot_stocks/__init__.py +0 -0
  95. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py +0 -0
  96. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/month_week_daily/__init__.py +0 -0
  97. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/test/__init__.py +0 -0
  98. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/test/k_line_info_clean_his_data.py +0 -0
  99. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/k_line/year_quarter/__init__.py +0 -0
  100. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/__init__.py +0 -0
  101. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/__init__.py +0 -0
  102. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/index/__init__.py +0 -0
  103. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/index/sync_best_choose_his_index.py +0 -0
  104. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/index/sync_best_choose_index.py +0 -0
  105. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/symbol/__init__.py +0 -0
  106. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/symbol/sync_best_choose_symbol.py +0 -0
  107. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/total/__init__.py +0 -0
  108. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/kpl/selection/total/sync_kpl_best_total_sync_api.py +0 -0
  109. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/lhb/__init__.py +0 -0
  110. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/lhb/stock_lhb_sync_service.py +0 -0
  111. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/open/__init__.py +0 -0
  112. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/open/sync_one_day_open_data_to_db_service.py +0 -0
  113. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/__init__.py +0 -0
  114. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/compliance/__init__.py +0 -0
  115. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/compliance/undisclosed_annual_report_api.py +0 -0
  116. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/financial/__init__.py +0 -0
  117. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/financial/annual_report_audit_check_api.py +0 -0
  118. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/financial/net_assets_check_api.py +0 -0
  119. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/financial/profit_income_check_api.py +0 -0
  120. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/financial/stock_equity_mortgage_check_api.py +0 -0
  121. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/financial_report_risk_check_api.py +0 -0
  122. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/major_violations/__init__.py +0 -0
  123. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/major_violations/register_and_investigate_stock_sync_api.py +0 -0
  124. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/self/__init__.py +0 -0
  125. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/self/wei_pan_stock_api.py +0 -0
  126. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/test/__init__.py +0 -0
  127. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/test/fix_blask_list.py +0 -0
  128. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/transactions/__init__.py +0 -0
  129. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/risk/transactions/transactions_check_api.py +0 -0
  130. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/self_choose/__init__.py +0 -0
  131. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/self_choose/ths_self_choose_service.py +0 -0
  132. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/__init__.py +0 -0
  133. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/auto_ipo_buy_api.py +0 -0
  134. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/auto_login/__init__.py +0 -0
  135. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/auto_login/trader_auto_service.py +0 -0
  136. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/auto_sell_service_api.py +0 -0
  137. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/balance/__init__.py +0 -0
  138. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/balance/ths_account_balance_service.py +0 -0
  139. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/sync_position_api.py +0 -0
  140. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/task/__init__.py +0 -0
  141. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/task/trader_task_service.py +0 -0
  142. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/tfp/__init__.py +0 -0
  143. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/trade/tfp/stock_tfp_info_sync.py +0 -0
  144. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/us/__init__.py +0 -0
  145. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/us/baidu_yun_pan_handle_service.py +0 -0
  146. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/us/k_line.py +0 -0
  147. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/us/us_company_info_sync_service_api.py +0 -0
  148. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zb/__init__.py +0 -0
  149. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zb/stock_zb_pool_sync.py +0 -0
  150. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/__init__.py +0 -0
  151. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/connected_boards/__init__.py +0 -0
  152. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/connected_boards/zt_five_boards_sync_api.py +0 -0
  153. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/export/__init__.py +0 -0
  154. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/export/export_kcx_high_chg_open_data_to_excel.py +0 -0
  155. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/high_chg/__init__.py +0 -0
  156. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py +0 -0
  157. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/high_chg/sync_high_chg_real_time_quotes_service.py +0 -0
  158. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/open_data/__init__.py +0 -0
  159. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/open_data/kcx_high_chg_open_data_sync.py +0 -0
  160. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/script/__init__.py +0 -0
  161. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/script/fix_error_deal_day.py +0 -0
  162. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/script/kcx_high_chg_open_his_data_handle.py +0 -0
  163. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/script/sync_high_chg_pool_his_data.py +0 -0
  164. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/zt_pool/__init__.py +0 -0
  165. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py +0 -0
  166. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zt/zt_pool/update_null_zt_reason_api.py +0 -0
  167. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler/zz_task/__init__.py +0 -0
  168. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler.egg-info/dependency_links.txt +0 -0
  169. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/mns_scheduler.egg-info/top_level.txt +0 -0
  170. {mns-scheduler-1.3.2.4 → mns-scheduler-1.3.2.5}/setup.cfg +0 -0
@@ -1,3 +1,3 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns-scheduler
3
- Version: 1.3.2.4
3
+ Version: 1.3.2.5
@@ -0,0 +1,7 @@
1
+ import sys
2
+ import os
3
+
4
+ file_path = os.path.abspath(__file__)
5
+ end = file_path.index('mns') + 16
6
+ project_path = file_path[0:end]
7
+ sys.path.append(project_path)
@@ -0,0 +1,144 @@
1
+ import sys
2
+ import os
3
+
4
+ import pandas as pd
5
+
6
+ file_path = os.path.abspath(__file__)
7
+ end = file_path.index('mns') + 16
8
+ project_path = file_path[0:end]
9
+ sys.path.append(project_path)
10
+ import mns_common.api.akshare.k_line_api as k_line_api
11
+ import mns_common.utils.date_handle_util as date_handle_util
12
+ import mns_common.api.xueqiu.xue_qiu_k_line_api as xue_qiu_k_line_api
13
+ import mns_common.component.cookie.cookie_info_service as cookie_info_service
14
+ import mns_common.component.common_service_fun_api as common_service_fun_api
15
+ from datetime import datetime, timedelta
16
+ from mns_common.component.exception.ExceptionMonitor import exception_counter
17
+ import mns_common.api.msg.push_msg_api as push_msg_api
18
+ import numpy as np
19
+ import mns_common.utils.data_frame_util as data_frame_util
20
+ from loguru import logger
21
+
22
+ source_type = 'xue_qiu'
23
+ # source_type = 'em'
24
+ error_no = 1
25
+
26
+
27
+ # 自定义报警处理函数
28
+ def custom_alert(current: int, threshold: int):
29
+ push_msg_api.push_msg_to_wechat('获取k线数据异常', "当前次数:" + str(current) + "阈值:" + str(threshold))
30
+
31
+
32
+ def get_k_line_common_adapter(symbol, period, hq, end_date):
33
+ global error_no
34
+ df = pd.DataFrame()
35
+ try:
36
+ if source_type == 'em':
37
+ df = get_em_k_line_api(symbol, period, hq, end_date)
38
+ elif source_type == 'xue_qiu':
39
+ df = get_xueqiu_k_line_api(symbol, period, hq, end_date)
40
+ if data_frame_util.is_empty(df):
41
+ error_no = error_no + 1
42
+ except BaseException as e:
43
+ logger.error("获取k线异常:{}", e)
44
+ error_no = error_no + 1
45
+ if error_no == 1000:
46
+ push_msg_api.push_msg_to_wechat('获取k线数据异常', "当前次数:" + str(error_no))
47
+ return df
48
+
49
+
50
+ # 应用带参数的装饰器
51
+ # @exception_counter(
52
+ # threshold=1500,
53
+ # alert_handler=custom_alert,
54
+ # auto_reset=False
55
+ # )
56
+ def get_em_k_line_api(symbol, period, hq, end_date):
57
+ # 检查symbol是否以'6'开头
58
+ if symbol.startswith('6'):
59
+ symbol_a = '1.' + symbol
60
+ else:
61
+ symbol_a = '0.' + symbol
62
+ stock_hfq_df = k_line_api.stock_zh_a_hist(symbol=symbol_a,
63
+ period=period,
64
+ start_date=date_handle_util.no_slash_date('1990-12-19'),
65
+ end_date=date_handle_util.no_slash_date(end_date),
66
+ adjust=hq)
67
+
68
+ stock_hfq_df.rename(columns={"日期": "date", "开盘": "open",
69
+ "收盘": "close", "最高": "high",
70
+ "最低": "low", "成交量": "volume",
71
+ "成交额": "amount", "振幅": "pct_chg",
72
+ "涨跌幅": "chg", "涨跌额": "change",
73
+ "换手率": "exchange"}, inplace=True)
74
+ stock_hfq_df['symbol'] = symbol
75
+ stock_hfq_df['_id'] = symbol + '-' + stock_hfq_df['date']
76
+ return stock_hfq_df
77
+
78
+
79
+ # period : year quarter month week day
80
+ # hq: qfq:before ,hfq:after, bfq:normal
81
+
82
+ def get_xueqiu_k_line_api(symbol, period, hq, end_date):
83
+ if hq == 'qfq':
84
+ adjust = 'before'
85
+ elif hq == 'hfq':
86
+ adjust = 'after'
87
+ else:
88
+ adjust = 'normal'
89
+
90
+ period_time = 'day'
91
+ if period == 'daily':
92
+ period_time = 'day'
93
+ elif period == 'weekly':
94
+ period_time = 'week'
95
+ elif period == 'monthly':
96
+ period_time = 'month'
97
+
98
+ cookie = cookie_info_service.get_xue_qiu_cookie()
99
+ symbol_pre_fix = common_service_fun_api.add_pre_prefix_one(symbol)
100
+ dt = datetime.strptime(end_date, '%Y-%m-%d')
101
+ dt += timedelta(days=1)
102
+ timestamp = str(int(dt.timestamp() * 1000)) # 转换为毫秒
103
+ stock_k_line_df = xue_qiu_k_line_api.get_xue_qiu_k_line(symbol_pre_fix, period_time,
104
+ cookie, timestamp, adjust)
105
+
106
+ stock_k_line_df['pct_chg'] = round(abs(stock_k_line_df['high'] - stock_k_line_df['low'] / stock_k_line_df['high']),
107
+ 2)
108
+ stock_k_line_df.rename(columns={"chg": "change",
109
+ "percent": "chg",
110
+ "str_day": "date",
111
+ "market_capital": "flow_mv",
112
+ "turnoverrate": "exchange"}, inplace=True)
113
+ stock_k_line_df = stock_k_line_df[[
114
+ "date",
115
+ "open",
116
+ "close",
117
+ "high",
118
+ "low",
119
+ "volume",
120
+ "amount",
121
+ "pct_chg",
122
+ "chg",
123
+ "change",
124
+ "exchange"
125
+ ]]
126
+ stock_k_line_df['symbol'] = symbol
127
+ stock_k_line_df['date'] = stock_k_line_df['date'].str.replace('-', '')
128
+ stock_k_line_df['_id'] = symbol + '-' + stock_k_line_df['date']
129
+ stock_k_line_df['last_price'] = round(((stock_k_line_df['close']) / (1 + stock_k_line_df['chg'] / 100)), 2)
130
+ stock_k_line_df['max_chg'] = round(
131
+ ((stock_k_line_df['high'] - stock_k_line_df['last_price']) / stock_k_line_df['last_price']) * 100, 2)
132
+ stock_k_line_df['amount_level'] = round((stock_k_line_df['amount'] / common_service_fun_api.HUNDRED_MILLION), 2)
133
+ stock_k_line_df['flow_mv'] = round(stock_k_line_df['amount'] * 100 / stock_k_line_df['exchange'], 2)
134
+ stock_k_line_df['flow_mv_sp'] = round(stock_k_line_df['flow_mv'] / common_service_fun_api.HUNDRED_MILLION, 2)
135
+
136
+ stock_k_line_df.replace([np.inf, -np.inf], 0, inplace=True)
137
+ stock_k_line_df.fillna(0, inplace=True)
138
+ return stock_k_line_df
139
+
140
+
141
+ if __name__ == '__main__':
142
+ while True:
143
+ test_df = get_k_line_common_adapter('000001', 'day', 'qfq', '2025-05-25')
144
+ print(test_df)
@@ -9,44 +9,24 @@ sys.path.append(project_path)
9
9
  from loguru import logger
10
10
  import mns_common.component.em.em_stock_info_api as em_stock_info_api
11
11
  from mns_common.db.MongodbUtil import MongodbUtil
12
- import mns_common.utils.date_handle_util as date_handle_util
13
12
  import mns_common.component.common_service_fun_api as common_service_fun_api
14
- import mns_common.api.akshare.k_line_api as k_line_api
13
+ import mns_scheduler.k_line.common.k_line_common_api as k_line_common_api
15
14
  import mns_common.component.company.company_common_service_new_api as company_common_service_new_api
16
15
 
16
+
17
+
17
18
  mongodb_util = MongodbUtil('27017')
18
19
 
19
20
 
20
21
  def sync_bfq_k_line_data(period='daily',
21
22
  hq='hfq',
22
23
  hq_col='stock_hfq_daily',
23
- end_date='22220101',
24
+ end_date='2222-01-01',
24
25
  symbol=None):
25
- # 检查symbol是否以'6'开头
26
- if symbol.startswith('6'):
27
- symbol_a = '1.' + symbol
28
- else:
29
- symbol_a = '0.' + symbol
30
- stock_hfq_df = k_line_api.stock_zh_a_hist(symbol=symbol_a, period=period,
31
- start_date=date_handle_util.no_slash_date('1990-12-19'),
32
- end_date=date_handle_util.no_slash_date(end_date),
33
- adjust=hq)
34
-
35
- stock_hfq_df.rename(columns={"日期": "date", "开盘": "open",
36
- "收盘": "close", "最高": "high",
37
- "最低": "low", "成交量": "volume",
38
- "成交额": "amount", "振幅": "pct_chg",
39
- "涨跌幅": "chg", "涨跌额": "change",
40
- "换手率": "exchange"}, inplace=True)
41
-
42
- stock_hfq_df['symbol'] = symbol
43
- stock_hfq_df['_id'] = stock_hfq_df['symbol'] + '-' + stock_hfq_df['date']
44
- stock_hfq_df['last_price'] = round(((stock_hfq_df['close']) / (1 + stock_hfq_df['chg'] / 100)), 2)
45
- stock_hfq_df['max_chg'] = round(
46
- ((stock_hfq_df['high'] - stock_hfq_df['last_price']) / stock_hfq_df['last_price']) * 100, 2)
47
- stock_hfq_df['amount_level'] = round((stock_hfq_df['amount'] / common_service_fun_api.HUNDRED_MILLION), 2)
48
- stock_hfq_df['flow_mv'] = round(stock_hfq_df['amount'] * 100 / stock_hfq_df['exchange'], 2)
49
- stock_hfq_df['flow_mv_sp'] = round(stock_hfq_df['flow_mv'] / common_service_fun_api.HUNDRED_MILLION, 2)
26
+
27
+ stock_hfq_df = k_line_common_api.get_k_line_common_adapter(symbol, period, hq, end_date)
28
+
29
+
50
30
 
51
31
  classification = common_service_fun_api.classify_symbol_one(symbol)
52
32
  stock_hfq_df['classification'] = classification
@@ -60,7 +40,7 @@ def sync_all_bfq_k_line(period='daily',
60
40
  hq='hfq',
61
41
  hq_col='stock_hfq_daily',
62
42
  end_date='22220101',
63
- symbol=None):
43
+ symbol='300085'):
64
44
  real_time_quotes_now_es = em_stock_info_api.get_a_stock_info()
65
45
 
66
46
  symbol_list = list(real_time_quotes_now_es['symbol'])
@@ -91,7 +71,7 @@ def insert_data(stock_hfq_df, hq_col, symbol):
91
71
 
92
72
  if __name__ == '__main__':
93
73
  sync_all_bfq_k_line('daily',
94
- '',
74
+ 'qfq',
95
75
  'stock_bfq_daily',
96
- None,
97
- None)
76
+ '2025-05-25',
77
+ '000001')
@@ -9,11 +9,9 @@ sys.path.append(project_path)
9
9
  from loguru import logger
10
10
  import mns_common.component.em.em_stock_info_api as em_stock_info_api
11
11
  from mns_common.db.MongodbUtil import MongodbUtil
12
- import mns_common.utils.date_handle_util as date_handle_util
13
12
  import mns_common.component.common_service_fun_api as common_service_fun_api
14
- import mns_common.api.akshare.k_line_api as k_line_api
15
13
  import mns_scheduler.k_line.clean.daily.daily_k_line_clean_common_service as daily_k_line_clean_common_service
16
-
14
+ import mns_scheduler.k_line.common.k_line_common_api as k_line_common_api
17
15
  mongodb_util = MongodbUtil('27017')
18
16
 
19
17
 
@@ -21,14 +19,9 @@ mongodb_util = MongodbUtil('27017')
21
19
 
22
20
  def save_one_symbol(symbol, period, end_date, hq, hq_col, real_time_quotes_now):
23
21
  # 检查symbol是否以'6'开头
24
- if symbol.startswith('6'):
25
- symbol_a = '1.' + symbol
26
- else:
27
- symbol_a = '0.' + symbol
28
- stock_hfq_df = k_line_api.stock_zh_a_hist(symbol=symbol_a, period=period,
29
- start_date=date_handle_util.no_slash_date('1990-12-19'),
30
- end_date=date_handle_util.no_slash_date(end_date),
31
- adjust=hq)
22
+
23
+ stock_hfq_df = k_line_common_api.get_k_line_common_adapter(symbol, period, hq, end_date)
24
+
32
25
  real_time_quotes_now_one = real_time_quotes_now.loc[real_time_quotes_now['symbol'] == symbol]
33
26
  stock_hfq_df.rename(columns={"日期": "date", "开盘": "open",
34
27
  "收盘": "close", "最高": "high",
@@ -12,27 +12,34 @@ from mns_common.db.MongodbUtil import MongodbUtil
12
12
  import mns_common.component.common_service_fun_api as common_service_fun_api
13
13
  import mns_common.constant.db_name_constant as db_name_constant
14
14
  import mns_common.api.xueqiu.xue_qiu_k_line_api as xue_qiu_k_line_api
15
+ import mns_common.component.cookie.cookie_info_service as cookie_info_service
16
+ from datetime import datetime
17
+ import mns_common.utils.data_frame_util as data_frame_util
15
18
 
16
19
  mongodb_util = MongodbUtil('27017')
17
20
 
18
21
 
19
22
  def sync_year_k_line():
20
- global symbol_prefix
23
+ timestamp = str(int(datetime.now().timestamp() * 1000))
24
+
21
25
  col_name = db_name_constant.STOCK_QFQ_YEAR
22
26
  real_time_quotes_all_stocks_df = em_stock_info_api.get_a_stock_info()
23
27
  real_time_quotes_all_stocks_df = common_service_fun_api.classify_symbol(real_time_quotes_all_stocks_df)
28
+ real_time_quotes_all_stocks_df = common_service_fun_api.add_pre_prefix(real_time_quotes_all_stocks_df)
24
29
  for stock_one in real_time_quotes_all_stocks_df.itertuples():
25
30
  symbol = stock_one.symbol
26
31
  try:
27
- classification = stock_one.classification
28
- if classification in ['H', 'K']:
29
- symbol_prefix = 'SH' + symbol
30
- elif classification in ['S', 'C']:
31
- symbol_prefix = 'SZ' + symbol
32
- elif classification in ['X']:
33
- symbol_prefix = 'BJ' + symbol
32
+ symbol_prefix = stock_one.symbol_prefix
33
+
34
+ year_k_line_df_copy = xue_qiu_k_line_api.get_xue_qiu_k_line(symbol_prefix, 'year',
35
+ cookie_info_service.get_xue_qiu_cookie(),
36
+ timestamp,
37
+ 'before')
38
+ if data_frame_util.is_empty(year_k_line_df_copy):
39
+ logger.warning("返回数据为空:{}", symbol)
40
+ continue
34
41
 
35
- year_k_line_df = xue_qiu_k_line_api.get_xue_qiu_k_line(symbol_prefix, 'year')
42
+ year_k_line_df = year_k_line_df_copy.copy()
36
43
  year_k_line_df = year_k_line_df[[
37
44
  'volume',
38
45
  'open',
@@ -19,13 +19,14 @@ def sync_now_day_high_chg():
19
19
  real_time_quotes_now_es = em_stock_info_api.get_a_stock_info()
20
20
  real_time_quotes_now_es_high_chg = real_time_quotes_now_es.loc[
21
21
  real_time_quotes_now_es['chg'] > common_service_fun_api.ZT_CHG]
22
+ now_date = datetime.now()
23
+
24
+ str_now_day = now_date.strftime('%Y-%m-%d')
22
25
  # 同步qfq k线
23
- daily_week_month_line_sync.sync_all_daily_data('daily', 'qfq', 'stock_qfq_daily', None,
26
+ daily_week_month_line_sync.sync_all_daily_data('daily', 'qfq', 'stock_qfq_daily', str_now_day,
24
27
  list(real_time_quotes_now_es_high_chg['symbol']))
25
28
 
26
- now_date = datetime.now()
27
29
 
28
- str_now_day = now_date.strftime('%Y-%m-%d')
29
30
  # 同步当前涨停
30
31
  em_zt_pool_sync_api.save_zt_info(str_now_day)
31
32
 
@@ -13,6 +13,7 @@ import mns_common.component.em.em_stock_info_api as em_stock_info_api
13
13
  import mns_common.component.company.company_common_service_new_api as company_common_service_new_api
14
14
  import mns_common.component.common_service_fun_api as common_service_fun_api
15
15
  from loguru import logger
16
+ import mns_scheduler.k_line.common.k_line_common_api as k_line_common_api
16
17
  import mns_common.api.akshare.k_line_api as k_line_api
17
18
  import mns_common.utils.date_handle_util as date_handle_util
18
19
  from mns_common.db.MongodbUtil import MongodbUtil
@@ -154,16 +155,9 @@ def get_bfq_daily_line(ths_zt_pool_df, str_day):
154
155
  for zt_one in ths_zt_pool_df.itertuples():
155
156
  try:
156
157
  symbol = zt_one.symbol
157
- # 检查symbol是否以'6'开头
158
- if symbol.startswith('6'):
159
- symbol_a = '1.' + symbol
160
- else:
161
- symbol_a = '0.' + symbol
162
- bfq_daily_line_df = k_line_api.stock_zh_a_hist(symbol_a,
163
- 'daily',
164
- date_handle_util.no_slash_date(str_day),
165
- date_handle_util.no_slash_date(str_day),
166
- '')
158
+
159
+ bfq_daily_line_df = k_line_common_api.get_k_line_common_adapter(symbol, 'daily', '', str_day)
160
+
167
161
  if data_frame_util.is_empty(bfq_daily_line_df):
168
162
  continue
169
163
  bfq_daily_line_df = bfq_daily_line_df[['amount', 'chg', 'close', 'exchange',
@@ -237,4 +231,4 @@ if __name__ == '__main__':
237
231
  # save_ths_zt_pool(zt_df, trade_date)
238
232
  trade_date = '2025-04-18'
239
233
  ths_zt_pool_df = ths_zt_pool(trade_date, None)
240
- save_ths_zt_pool(ths_zt_pool_df, trade_date)
234
+ save_ths_zt_pool(ths_zt_pool_df, trade_date)
@@ -96,7 +96,7 @@ def stock_sync_qfq_weekly():
96
96
  str_now_date = now_date.strftime('%Y-%m-%d')
97
97
  if date_handle_util.last_day_of_week(now_date):
98
98
  logger.info('同步每周行情数据(前复权):' + str_now_date)
99
- 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)
100
100
 
101
101
 
102
102
  # # 定时同步每周交易行情数据(前复权)
@@ -106,7 +106,7 @@ def stock_sync_qfq_monthly():
106
106
  if date_handle_util.last_day_month(now_date):
107
107
  logger.info('同步每周行情数据(前复权):' + str_now_date)
108
108
  daily_week_month_line_sync_api.sync_all_daily_data('monthly', 'qfq', 'stock_qfq_monthly',
109
- None)
109
+ str_now_date)
110
110
 
111
111
 
112
112
  # 当天实时数据备份
@@ -138,7 +138,7 @@ def stock_daily_sync_qfq():
138
138
  str_now_date = now_date.strftime('%Y-%m-%d')
139
139
  logger.info('同步每日行情数据(前复权):' + str_now_date)
140
140
  daily_week_month_line_sync_api.sync_all_daily_data('daily',
141
- 'qfq', 'stock_qfq_daily', None)
141
+ 'qfq', 'stock_qfq_daily', str_now_date)
142
142
 
143
143
 
144
144
  # 同步当日k c x 高涨幅数据
@@ -1,3 +1,3 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns-scheduler
3
- Version: 1.3.2.4
3
+ Version: 1.3.2.5
@@ -84,6 +84,8 @@ mns_scheduler/k_line/clean/daily/daily_k_line_service.py
84
84
  mns_scheduler/k_line/clean/week_month/__init__.py
85
85
  mns_scheduler/k_line/clean/week_month/normal_week_month_k_line_service.py
86
86
  mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py
87
+ mns_scheduler/k_line/common/__init__.py
88
+ mns_scheduler/k_line/common/k_line_common_api.py
87
89
  mns_scheduler/k_line/hot_stocks/__init__.py
88
90
  mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py
89
91
  mns_scheduler/k_line/month_week_daily/__init__.py
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='mns-scheduler',
5
- version='1.3.2.4',
5
+ version='1.3.2.5',
6
6
  packages=find_packages(),
7
7
  install_requires=[], # 如果有依赖项,可以在这里列出
8
8
  )