mns-scheduler 1.2.8.8__py3-none-any.whl → 1.2.9.0__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.
Potentially problematic release.
This version of mns-scheduler might be problematic. Click here for more details.
- mns_scheduler/company_info/base/sync_company_base_info_api.py +2 -2
- mns_scheduler/company_info/em_stock_info/__init__.py +7 -0
- mns_scheduler/company_info/em_stock_info/sync_em_stock_info_sync.py +69 -0
- mns_scheduler/company_info/remark/company_remark_info_sync.py +2 -2
- mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py +2 -2
- mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py +2 -2
- mns_scheduler/extraIncome/one_minute/etf/etf_one_minute_sync_task.py +2 -2
- mns_scheduler/extraIncome/one_minute/kzz/kzz_one_minute_sync_task.py +3 -3
- mns_scheduler/extraIncome/one_minute/stock/stock_one_minute_sync_task.py +1 -1
- mns_scheduler/extraIncome/temp/tu_share_data_stock_sync.py +1 -1
- mns_scheduler/finance/em_financial_profit_sync_service_api.py +1 -1
- mns_scheduler/finance/finance_common_api.py +1 -1
- mns_scheduler/hk/hk_company_info_sync_service_api.py +2 -3
- mns_scheduler/hk/hk_industry_info_sync_service_api.py +2 -3
- mns_scheduler/irm/stock_irm_cninfo_service.py +1 -1
- mns_scheduler/k_line/clean/k_line_info_clean_task.py +2 -2
- mns_scheduler/k_line/month_week_daily/bfq_k_line_sync.py +1 -1
- mns_scheduler/k_line/month_week_daily/daily_week_month_line_sync.py +2 -2
- mns_scheduler/k_line/test/k_line_info_clean_his_data.py +1 -1
- mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py +1 -1
- mns_scheduler/risk/transactions/transactions_check_api.py +2 -2
- mns_scheduler/trade/auto_sell_service_api.py +2 -2
- mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py +1 -1
- mns_scheduler/zt/script/sync_now_higt_chg_zt.py +1 -1
- mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py +3 -3
- mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py +1 -1
- mns_scheduler/zz_task/data_sync_task.py +4 -4
- {mns_scheduler-1.2.8.8.dist-info → mns_scheduler-1.2.9.0.dist-info}/METADATA +1 -1
- {mns_scheduler-1.2.8.8.dist-info → mns_scheduler-1.2.9.0.dist-info}/RECORD +31 -31
- mns_scheduler/db/real_time_task_check.py +0 -128
- mns_scheduler/db/task_handle_service.py +0 -64
- {mns_scheduler-1.2.8.8.dist-info → mns_scheduler-1.2.9.0.dist-info}/WHEEL +0 -0
- {mns_scheduler-1.2.8.8.dist-info → mns_scheduler-1.2.9.0.dist-info}/top_level.txt +0 -0
|
@@ -10,7 +10,7 @@ from datetime import datetime
|
|
|
10
10
|
import pandas as pd
|
|
11
11
|
from loguru import logger
|
|
12
12
|
import mns_common.api.ths.concept.web.ths_company_info_web as ths_company_info_web
|
|
13
|
-
import mns_common.
|
|
13
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
14
14
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
15
15
|
import mns_common.component.concept.ths_concept_common_service_api as ths_concept_common_service_api
|
|
16
16
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
@@ -59,7 +59,7 @@ def calculate_circulation_ratio(symbol):
|
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
def get_east_money_stock_info():
|
|
62
|
-
all_real_time_quotes =
|
|
62
|
+
all_real_time_quotes = em_stock_info_api.get_a_stock_info()
|
|
63
63
|
all_real_time_quotes = all_real_time_quotes[['symbol',
|
|
64
64
|
'name',
|
|
65
65
|
"now_price",
|
|
@@ -0,0 +1,69 @@
|
|
|
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)
|
|
8
|
+
import datetime
|
|
9
|
+
import mns_common.component.proxies.proxy_common_api as proxy_common_api
|
|
10
|
+
from mns_common.db.MongodbUtil import MongodbUtil
|
|
11
|
+
from loguru import logger
|
|
12
|
+
import mns_common.api.em.real_time.east_money_stock_a_v2_api as east_money_stock_a_v2_api
|
|
13
|
+
import mns_common.api.em.real_time.east_money_debt_api as east_money_debt_api
|
|
14
|
+
import mns_common.api.em.real_time.east_money_etf_api as east_money_etf_api
|
|
15
|
+
import mns_common.api.em.real_time.east_money_stock_hk_api as east_money_stock_hk_api
|
|
16
|
+
import mns_common.api.em.real_time.east_money_stock_us_api as east_money_stock_us_api
|
|
17
|
+
import mns_common.constant.db_name_constant as db_name_constant
|
|
18
|
+
import mns_common.component.cookie.cookie_info_service as cookie_info_service
|
|
19
|
+
|
|
20
|
+
mongodb_util = MongodbUtil('27017')
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def sync_all_em_stock_info():
|
|
24
|
+
logger.info("同步东方财富a,etf,kzz,us,hk,信息开始")
|
|
25
|
+
now_date = datetime.datetime.now()
|
|
26
|
+
str_now_date = now_date.strftime('%Y-%m-%d %H:%M:%S')
|
|
27
|
+
proxy_ip = proxy_common_api.get_proxy_ip(str_now_date, 3)
|
|
28
|
+
proxies = {"https": proxy_ip}
|
|
29
|
+
# try:
|
|
30
|
+
# em_a_stock_info_df = east_money_stock_a_v2_api.get_all_real_time_quotes(proxies)
|
|
31
|
+
# em_a_stock_info_df['_id'] = em_a_stock_info_df['symbol']
|
|
32
|
+
# mongodb_util.save_mongo(em_a_stock_info_df, db_name_constant.EM_A_STOCK_INFO)
|
|
33
|
+
# except BaseException as e:
|
|
34
|
+
# logger.error("同步东方财富A股信息异常:{}", e)
|
|
35
|
+
#
|
|
36
|
+
# try:
|
|
37
|
+
# em_etf_info = east_money_etf_api.get_etf_real_time_quotes(proxies)
|
|
38
|
+
# em_etf_info['_id'] = em_etf_info['symbol']
|
|
39
|
+
# mongodb_util.save_mongo(em_etf_info, db_name_constant.EM_ETF_INFO)
|
|
40
|
+
# except BaseException as e:
|
|
41
|
+
# logger.error("同步东方财富ETF信息异常:{}", e)
|
|
42
|
+
#
|
|
43
|
+
# try:
|
|
44
|
+
# em_kzz_info = east_money_debt_api.get_debt_real_time_quotes(proxies)
|
|
45
|
+
#
|
|
46
|
+
# em_kzz_info['_id'] = em_kzz_info['symbol']
|
|
47
|
+
# mongodb_util.save_mongo(em_kzz_info, db_name_constant.EM_KZZ_INFO)
|
|
48
|
+
# except BaseException as e:
|
|
49
|
+
# logger.error("同步东方财富可转债信息异常:{}", e)
|
|
50
|
+
#
|
|
51
|
+
em_cookie = cookie_info_service.get_em_cookie()
|
|
52
|
+
# try:
|
|
53
|
+
# em_hk_stock_info = east_money_stock_hk_api.get_hk_real_time_quotes(em_cookie, proxies)
|
|
54
|
+
# em_hk_stock_info['_id'] = em_hk_stock_info['symbol']
|
|
55
|
+
# mongodb_util.save_mongo(em_hk_stock_info, db_name_constant.EM_HK_STOCK_INFO)
|
|
56
|
+
# except BaseException as e:
|
|
57
|
+
# logger.error("同步东方财富港股信息异常:{}", e)
|
|
58
|
+
|
|
59
|
+
try:
|
|
60
|
+
em_us_stock_info = east_money_stock_us_api.get_us_stock_real_time_quotes(em_cookie, proxies)
|
|
61
|
+
em_us_stock_info['_id'] = em_us_stock_info['symbol']
|
|
62
|
+
mongodb_util.save_mongo(em_us_stock_info, db_name_constant.EM_US_STOCK_INFO)
|
|
63
|
+
except BaseException as e:
|
|
64
|
+
logger.error("同步东方财富美股信息异常:{}", e)
|
|
65
|
+
logger.info("同步东方财富a,etf,kzz,us,hk,信息完成")
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
if __name__ == '__main__':
|
|
69
|
+
sync_all_em_stock_info()
|
|
@@ -6,7 +6,7 @@ end = file_path.index('mns') + 16
|
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
import mns_common.api.ths.concept.web.ths_company_info_web as ths_company_info_web
|
|
9
|
-
import mns_common.
|
|
9
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
10
10
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
11
11
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
12
12
|
import mns_common.constant.db_name_constant as db_name_constant
|
|
@@ -18,7 +18,7 @@ mongodb_util = MongodbUtil('27017')
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
def sync_company_remark_info():
|
|
21
|
-
east_money_stock_info =
|
|
21
|
+
east_money_stock_info = em_stock_info_api.get_a_stock_info()
|
|
22
22
|
de_listed_stock_list = company_common_service_api.get_de_list_company()
|
|
23
23
|
east_money_stock_info = east_money_stock_info.loc[~(
|
|
24
24
|
east_money_stock_info['symbol'].isin(de_listed_stock_list))]
|
|
@@ -9,7 +9,7 @@ import mns_common.component.concept.ths_concept_common_service_api as ths_concep
|
|
|
9
9
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
10
10
|
import mns_common.api.ths.concept.app.ths_concept_detail_app as ths_concept_detail_app
|
|
11
11
|
import mns_common.api.ths.wen_cai.ths_wen_cai_api as ths_wen_cai_api
|
|
12
|
-
import mns_common.
|
|
12
|
+
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.api.ths.concept.web.ths_concept_detail_web as ths_concept_detail_web
|
|
15
15
|
import math
|
|
@@ -24,7 +24,7 @@ import mns_common.constant.redis_msg_constant as redis_msg_constant
|
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
def get_ths_concept_detail(concept_code, concept_name):
|
|
27
|
-
real_time_quotes_all_stocks =
|
|
27
|
+
real_time_quotes_all_stocks = em_stock_info_api.get_a_stock_info()
|
|
28
28
|
# 1 通过入选理获取概念组成股票详情
|
|
29
29
|
ths_concept_detail_by_explain = get_ths_concept_detail_by_explain(concept_code, real_time_quotes_all_stocks)
|
|
30
30
|
# 2 app 分享链接获取概念组成详情
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import os
|
|
2
2
|
import sys
|
|
3
3
|
import mns_common.api.ths.concept.web.ths_concept_detail_web as ths_concept_detail_web
|
|
4
|
-
import mns_common.
|
|
4
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
5
5
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
6
6
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
7
7
|
from loguru import logger
|
|
@@ -157,7 +157,7 @@ def update_symbol_new_concept(symbol_df, page_number):
|
|
|
157
157
|
|
|
158
158
|
def sync_symbol_all_concept(symbol):
|
|
159
159
|
create_index()
|
|
160
|
-
real_time_quotes_now =
|
|
160
|
+
real_time_quotes_now = em_stock_info_api.get_a_stock_info()
|
|
161
161
|
real_time_quotes_now = common_service_fun_api.classify_symbol(real_time_quotes_now)
|
|
162
162
|
if symbol is not None:
|
|
163
163
|
real_time_quotes_now = real_time_quotes_now.loc[real_time_quotes_now['symbol'] == symbol]
|
|
@@ -6,7 +6,7 @@ end = file_path.index('mns') + 16
|
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
|
|
9
|
-
import mns_common.
|
|
9
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
10
10
|
from loguru import logger
|
|
11
11
|
import time
|
|
12
12
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
@@ -23,7 +23,7 @@ mongodbUtilV2_27019 = MongodbUtilV2('27019', extra_income_db_name.EXTRA_INCOME)
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
def sync_etf_one_minute(data_tag):
|
|
26
|
-
etf_real_time_quotes =
|
|
26
|
+
etf_real_time_quotes = em_stock_info_api.get_etf_info()
|
|
27
27
|
etf_real_time_quotes = classify_symbol(etf_real_time_quotes)
|
|
28
28
|
etf_real_time_quotes['symbol'] = etf_real_time_quotes.apply(
|
|
29
29
|
lambda row: row['symbol'] + '.SZ' if row['classification'] in ['S', 'C']
|
|
@@ -6,7 +6,7 @@ end = file_path.index('mns') + 16
|
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
|
|
9
|
-
import mns_common.
|
|
9
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
10
10
|
from loguru import logger
|
|
11
11
|
import time
|
|
12
12
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
@@ -23,7 +23,7 @@ mongodbUtilV2_27019 = MongodbUtilV2('27019', extra_income_db_name.EXTRA_INCOME)
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
def sync_kzz_one_minute(data_tag):
|
|
26
|
-
debt_real_time_quotes =
|
|
26
|
+
debt_real_time_quotes = em_stock_info_api.get_kzz_info()
|
|
27
27
|
debt_real_time_quotes = classify_symbol(debt_real_time_quotes)
|
|
28
28
|
debt_real_time_quotes['symbol'] = debt_real_time_quotes.apply(
|
|
29
29
|
lambda row: row['symbol'] + '.SZ' if row['classification'] in ['S', 'C']
|
|
@@ -84,4 +84,4 @@ def classify_symbol_one(market):
|
|
|
84
84
|
|
|
85
85
|
|
|
86
86
|
if __name__ == '__main__':
|
|
87
|
-
|
|
87
|
+
3()
|
|
@@ -6,7 +6,7 @@ end = file_path.index('mns') + 16
|
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
9
|
-
import mns_common.
|
|
9
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
10
10
|
from loguru import logger
|
|
11
11
|
import time
|
|
12
12
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
@@ -14,7 +14,7 @@ import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
|
14
14
|
import pandas as pd
|
|
15
15
|
from loguru import logger
|
|
16
16
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
17
|
-
import mns_common.
|
|
17
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
18
18
|
import time
|
|
19
19
|
|
|
20
20
|
mongodb_util_27017 = MongodbUtil('27017')
|
|
@@ -339,7 +339,7 @@ def check_columns(profit_df):
|
|
|
339
339
|
return profit_df
|
|
340
340
|
|
|
341
341
|
|
|
342
|
-
import mns_common.
|
|
342
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
343
343
|
|
|
344
344
|
if __name__ == '__main__':
|
|
345
345
|
get_em_profit_api('600519')
|
|
@@ -9,7 +9,7 @@ sys.path.append(project_path)
|
|
|
9
9
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
10
10
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
11
11
|
import mns_common.constant.db_name_constant as db_name_constant
|
|
12
|
-
import mns_common.
|
|
12
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
13
13
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
14
14
|
|
|
15
15
|
mongodb_util = MongodbUtil('27017')
|
|
@@ -5,7 +5,7 @@ file_path = os.path.abspath(__file__)
|
|
|
5
5
|
end = file_path.index('mns') + 16
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
|
-
import mns_common.
|
|
8
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
9
9
|
import akshare as ak
|
|
10
10
|
import mns_common.constant.db_name_constant as db_name_constant
|
|
11
11
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
@@ -48,8 +48,7 @@ def get_ths_cookie():
|
|
|
48
48
|
|
|
49
49
|
# https://quote.eastmoney.com/center/gridlist.html#hk_stocks
|
|
50
50
|
def sync_hk_company_info():
|
|
51
|
-
|
|
52
|
-
hk_real_time_df = east_money_stock_hk_api.get_hk_real_time_quotes(cookie)
|
|
51
|
+
hk_real_time_df = em_stock_info_api.get_hk_stock_info()
|
|
53
52
|
|
|
54
53
|
hk_real_time_df = hk_real_time_df[[
|
|
55
54
|
"symbol",
|
|
@@ -6,7 +6,7 @@ end = file_path.index('mns') + 16
|
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
|
|
9
|
-
import mns_common.
|
|
9
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
10
10
|
import akshare as ak
|
|
11
11
|
import mns_common.constant.db_name_constant as db_name_constant
|
|
12
12
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
@@ -38,8 +38,7 @@ def get_em_cookie():
|
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
def sync_hk_company_industry():
|
|
41
|
-
|
|
42
|
-
hk_real_time_df = east_money_stock_hk_api.get_hk_real_time_quotes(cookie)
|
|
41
|
+
hk_real_time_df = em_stock_info_api.get_hk_stock_info()
|
|
43
42
|
|
|
44
43
|
hk_real_time_df = hk_real_time_df[[
|
|
45
44
|
"symbol",
|
|
@@ -8,7 +8,7 @@ sys.path.append(project_path)
|
|
|
8
8
|
import akshare as ak
|
|
9
9
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
10
10
|
import pandas as pd
|
|
11
|
-
import mns_common.
|
|
11
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
12
12
|
import mns_common.component.company.company_common_service_api as company_common_service_api
|
|
13
13
|
from loguru import logger
|
|
14
14
|
from datetime import datetime
|
|
@@ -9,7 +9,7 @@ sys.path.append(project_path)
|
|
|
9
9
|
import pandas as pd
|
|
10
10
|
import mns_common.utils.date_handle_util as date_handle_util
|
|
11
11
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
12
|
-
import mns_common.
|
|
12
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
13
13
|
from loguru import logger
|
|
14
14
|
import threading
|
|
15
15
|
import mns_common.component.trade_date.trade_date_common_service_api as trade_date_common_service_api
|
|
@@ -109,7 +109,7 @@ def multi_threaded_k_line_sync(str_day):
|
|
|
109
109
|
|
|
110
110
|
de_list_company_df = mongodb_util.find_all_data(db_name_constant.DE_LIST_STOCK)
|
|
111
111
|
de_list_company_df = de_list_company_df.loc[de_list_company_df['de_list_date'] < str_day]
|
|
112
|
-
real_time_quotes_now =
|
|
112
|
+
real_time_quotes_now = em_stock_info_api.get_a_stock_info()
|
|
113
113
|
real_time_quotes_now = real_time_quotes_now.loc[
|
|
114
114
|
~(real_time_quotes_now['symbol'].isin(de_list_company_df['symbol']))]
|
|
115
115
|
|
|
@@ -7,7 +7,7 @@ project_path = file_path[0:end]
|
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
|
|
9
9
|
from loguru import logger
|
|
10
|
-
import mns_common.
|
|
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
12
|
import mns_common.utils.date_handle_util as date_handle_util
|
|
13
13
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
@@ -7,7 +7,7 @@ project_path = file_path[0:end]
|
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
|
|
9
9
|
from loguru import logger
|
|
10
|
-
import mns_common.
|
|
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
12
|
import mns_common.utils.date_handle_util as date_handle_util
|
|
13
13
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
@@ -71,7 +71,7 @@ def sync_all_daily_data(period='daily',
|
|
|
71
71
|
symbol_list=None):
|
|
72
72
|
create_db_index(hq_col)
|
|
73
73
|
|
|
74
|
-
real_time_quotes_now_es =
|
|
74
|
+
real_time_quotes_now_es = em_stock_info_api.get_a_stock_info()
|
|
75
75
|
# exclude b symbol
|
|
76
76
|
real_time_quotes_now = common_service_fun_api.exclude_b_symbol(real_time_quotes_now_es.copy())
|
|
77
77
|
|
|
@@ -13,7 +13,7 @@ mongodb_util = MongodbUtil('27017')
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
def clean_history_data():
|
|
16
|
-
query = {"$and": [{"trade_date": {"$gte": '2023-11-06'}}, {"trade_date": {"$lte": '
|
|
16
|
+
query = {"$and": [{"trade_date": {"$gte": '2023-11-06'}}, {"trade_date": {"$lte": '2024-09-12'}}]}
|
|
17
17
|
trade_date_list_df = mongodb_util.find_query_data('trade_date_list', query)
|
|
18
18
|
trade_date_list_df = trade_date_list_df.sort_values(by=['trade_date'], ascending=False)
|
|
19
19
|
for trade_data_one in trade_date_list_df.itertuples():
|
|
@@ -7,7 +7,7 @@ project_path = file_path[0:end]
|
|
|
7
7
|
sys.path.append(project_path)
|
|
8
8
|
|
|
9
9
|
from loguru import logger
|
|
10
|
-
import mns_common.
|
|
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
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
|
|
@@ -5,7 +5,7 @@ file_path = os.path.abspath(__file__)
|
|
|
5
5
|
end = file_path.index('mns') + 16
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
|
-
import mns_common.
|
|
8
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
9
9
|
from datetime import datetime
|
|
10
10
|
import mns_common.component.self_choose.black_list_service_api as black_list_service_api
|
|
11
11
|
import mns_common.component.trade_date.trade_date_common_service_api as trade_date_common_service_api
|
|
@@ -48,7 +48,7 @@ def transactions_check_task():
|
|
|
48
48
|
|
|
49
49
|
now_day_number = float(now_day_str)
|
|
50
50
|
|
|
51
|
-
real_time_quotes_now =
|
|
51
|
+
real_time_quotes_now = em_stock_info_api.get_a_stock_info()
|
|
52
52
|
real_time_quotes_now['list_date'] = real_time_quotes_now['list_date'].fillna(99999999)
|
|
53
53
|
real_time_quotes_now = real_time_quotes_now.loc[real_time_quotes_now['list_date'] <= now_day_number]
|
|
54
54
|
real_time_quotes_now = common_service_fun_api.classify_symbol(real_time_quotes_now)
|
|
@@ -109,10 +109,10 @@ def update_position_status(symbol, sell_entrust_no, str_day):
|
|
|
109
109
|
mongodb_util.update_many(update_query, new_values, db_name_constant.POSITION_STOCK)
|
|
110
110
|
|
|
111
111
|
|
|
112
|
-
import mns_common.
|
|
112
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
113
113
|
|
|
114
114
|
if __name__ == '__main__':
|
|
115
115
|
sell_price_01 = trade_price_service_api.get_trade_price('002336',PriceEnum.SEll_PRICE_LIMIT.price_code)
|
|
116
116
|
while True:
|
|
117
|
-
|
|
117
|
+
real_time_quotes_now = em_stock_info_api.get_a_stock_info()
|
|
118
118
|
auto_sell_stock(real_time_quotes_now)
|
|
@@ -9,7 +9,7 @@ import pandas as pd
|
|
|
9
9
|
from loguru import logger
|
|
10
10
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
11
11
|
import mns_common.component.trade_date.trade_date_common_service_api as trade_date_common_service_api
|
|
12
|
-
import mns_common.
|
|
12
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
13
13
|
import mns_common.utils.date_handle_util as date_handle_util
|
|
14
14
|
import mns_common.component.company.company_common_service_api as company_common_service_api
|
|
15
15
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
@@ -5,7 +5,7 @@ file_path = os.path.abspath(__file__)
|
|
|
5
5
|
end = file_path.index('mns') + 16
|
|
6
6
|
project_path = file_path[0:end]
|
|
7
7
|
sys.path.append(project_path)
|
|
8
|
-
import mns_common.
|
|
8
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
9
9
|
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
10
10
|
import mns_scheduler.k_line.month_week_daily.daily_week_month_line_sync as daily_week_month_line_sync
|
|
11
11
|
from datetime import datetime
|
|
@@ -16,7 +16,7 @@ import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
|
16
16
|
import mns_common.component.trade_date.trade_date_common_service_api as trade_date_common_service_api
|
|
17
17
|
import mns_common.api.ths.zt.ths_stock_zt_pool_v2_api as ths_stock_zt_pool_v2_api
|
|
18
18
|
import mns_common.component.zt.zt_common_service_api as zt_common_service_api
|
|
19
|
-
import mns_common.
|
|
19
|
+
import mns_common.component.em.em_stock_info_api as em_stock_info_api
|
|
20
20
|
from datetime import datetime
|
|
21
21
|
import mns_common.api.ths.company.ths_company_info_api as ths_company_info_api
|
|
22
22
|
import mns_common.component.cookie.cookie_info_service as cookie_info_service
|
|
@@ -169,7 +169,7 @@ def sync_miss_zt_data(stock_em_zt_pool_df_data, str_day):
|
|
|
169
169
|
now_date = datetime.now()
|
|
170
170
|
now_day = now_date.strftime('%Y-%m-%d')
|
|
171
171
|
if now_day == str_day:
|
|
172
|
-
real_time_quotes_all_stocks_df =
|
|
172
|
+
real_time_quotes_all_stocks_df = em_stock_info_api.get_a_stock_info()
|
|
173
173
|
real_time_quotes_all_stocks_df = real_time_quotes_all_stocks_df.loc[
|
|
174
174
|
(real_time_quotes_all_stocks_df['wei_bi'] == 100) & (real_time_quotes_all_stocks_df['chg'] >= 9)]
|
|
175
175
|
miss_zt_data_df = real_time_quotes_all_stocks_df.loc[~(
|
|
@@ -206,7 +206,7 @@ def sync_miss_zt_data(stock_em_zt_pool_df_data, str_day):
|
|
|
206
206
|
|
|
207
207
|
|
|
208
208
|
if __name__ == '__main__':
|
|
209
|
-
save_zt_info('
|
|
209
|
+
save_zt_info('2025-04-17')
|
|
210
210
|
# from datetime import datetime
|
|
211
211
|
#
|
|
212
212
|
# if __name__ == '__main__':
|
|
@@ -9,7 +9,7 @@ import mns_common.api.ths.zt.ths_stock_zt_pool_api as ths_stock_zt_pool_api
|
|
|
9
9
|
from datetime import datetime
|
|
10
10
|
import mns_common.utils.data_frame_util as data_frame_util
|
|
11
11
|
import pandas as pd
|
|
12
|
-
import mns_common.
|
|
12
|
+
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
|
|
@@ -26,7 +26,7 @@ import mns_scheduler.zt.connected_boards.zt_five_boards_sync_api as zt_five_boar
|
|
|
26
26
|
import mns_scheduler.zt.zt_pool.em_zt_pool_sync_api as em_zt_pool_sync_api
|
|
27
27
|
import mns_scheduler.k_line.clean.k_line_info_clean_task as k_line_info_clean_service
|
|
28
28
|
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
|
|
29
|
+
import mns_common.api.em.gd.east_money_stock_gdfx_free_top_10_api as east_money_stock_gdfx_free_top_10_api
|
|
30
30
|
import \
|
|
31
31
|
mns_scheduler.concept.ths.update_concept_info.sync_one_concept_all_symbols_api as sync_one_concept_all_symbols_api
|
|
32
32
|
import \
|
|
@@ -56,7 +56,7 @@ import mns_scheduler.zt.zt_pool.update_null_zt_reason_api as update_null_zt_reas
|
|
|
56
56
|
import mns_scheduler.trade.tfp.stock_tfp_info_sync as stock_tfp_info_sync
|
|
57
57
|
import mns_scheduler.industry.ths.ths_industry_sync_service as ths_industry_sync_service
|
|
58
58
|
import mns_scheduler.k_line.year_quarter.year_quarter_line_sync as year_quarter_line_sync
|
|
59
|
-
import
|
|
59
|
+
import mns_common.component.task.real_time_data_sync_check as real_time_data_sync_check
|
|
60
60
|
import mns_scheduler.extraIncome.one_minute.one_minute_sync_task as one_minute_sync_task
|
|
61
61
|
|
|
62
62
|
|
|
@@ -352,13 +352,13 @@ def sync_all_interactive_questions():
|
|
|
352
352
|
# 重开定时任务同步
|
|
353
353
|
def real_time_sync_task_open():
|
|
354
354
|
logger.info("开启实时行情同步任务")
|
|
355
|
-
|
|
355
|
+
real_time_data_sync_check.real_time_sync_task_open()
|
|
356
356
|
|
|
357
357
|
|
|
358
358
|
# 关闭实时行情任务
|
|
359
359
|
def real_time_sync_task_close():
|
|
360
360
|
logger.info("关闭实时行情同步任务")
|
|
361
|
-
|
|
361
|
+
real_time_data_sync_check.real_time_sync_task_close()
|
|
362
362
|
|
|
363
363
|
|
|
364
364
|
# 打开交易客户端
|
|
@@ -5,7 +5,7 @@ mns_scheduler/company_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlI
|
|
|
5
5
|
mns_scheduler/company_info/announce/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
6
6
|
mns_scheduler/company_info/announce/company_announce_sync_service.py,sha256=O0x0dqqnCmzzFenw4fShzWPAi_wegtvAZ9EB0ubrvnM,2808
|
|
7
7
|
mns_scheduler/company_info/base/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
8
|
-
mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=
|
|
8
|
+
mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=OCQ84roptUyHb3l9l54H669mvwSZSPMC8oQ-jli0_Ss,20528
|
|
9
9
|
mns_scheduler/company_info/base/sync_company_hold_info_api.py,sha256=W3Nj9st45efx8cy_42PRTcOXijWKnkO1-ZFRyyfR3S0,1587
|
|
10
10
|
mns_scheduler/company_info/clean/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
11
11
|
mns_scheduler/company_info/clean/company_info_clean_api.py,sha256=gykN2aFfjBQoGxux3otM9v_zbD_wbv7z0CqAX_hzG6U,6104
|
|
@@ -13,8 +13,10 @@ mns_scheduler/company_info/constant/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6L
|
|
|
13
13
|
mns_scheduler/company_info/constant/company_constant_data.py,sha256=v0PraTBSQMl1pM6QM2tFGxEcXBJ_MkMChMD2nmrxXsQ,22456
|
|
14
14
|
mns_scheduler/company_info/de_list_stock/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
15
15
|
mns_scheduler/company_info/de_list_stock/de_list_stock_service.py,sha256=GCp6hlvO-SuH1oIpEsYZwEnGUOa6fXb2D7CqAUYXKQA,1993
|
|
16
|
+
mns_scheduler/company_info/em_stock_info/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
17
|
+
mns_scheduler/company_info/em_stock_info/sync_em_stock_info_sync.py,sha256=IxhGp6t0Ed0Rngts1SIpYhZFjkUoRMjFlv14imgQyOI,3190
|
|
16
18
|
mns_scheduler/company_info/remark/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
17
|
-
mns_scheduler/company_info/remark/company_remark_info_sync.py,sha256=
|
|
19
|
+
mns_scheduler/company_info/remark/company_remark_info_sync.py,sha256=i61eLy4Z2054K5E8a3RwWZLqwsHEwCHvtaJoEoz1T_w,2334
|
|
18
20
|
mns_scheduler/concept/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
19
21
|
mns_scheduler/concept/clean/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
20
22
|
mns_scheduler/concept/clean/kpl_concept_clean_api.py,sha256=xxIIgrXLI6xLf10t4unJa7aMB_QeKeki1HJVeXsntkY,4512
|
|
@@ -24,17 +26,15 @@ mns_scheduler/concept/ths/common/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiN
|
|
|
24
26
|
mns_scheduler/concept/ths/common/ths_concept_sync_common_api.py,sha256=mJHFdZGpkVn9xiby2eCYvapZAhQuxSfxQGrGsr3dso0,10222
|
|
25
27
|
mns_scheduler/concept/ths/common/ths_concept_update_common_api.py,sha256=Mwy2g5bXWJBbcS_qS7bY_yx7g41mIQ36GIwa0Qbrd0E,4577
|
|
26
28
|
mns_scheduler/concept/ths/detaill/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py,sha256=
|
|
29
|
+
mns_scheduler/concept/ths/detaill/ths_concept_detail_api.py,sha256=O99zE0QHGedcCdY_PKWtOYhR4BCAD2hJRO7lCD7gNfg,10865
|
|
28
30
|
mns_scheduler/concept/ths/sync_new_index/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
29
31
|
mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py,sha256=wllTGr3HfP4HSg776I5v6XcMGZMrunSTJCmWwTnT1VU,7923
|
|
30
32
|
mns_scheduler/concept/ths/update_concept_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
31
33
|
mns_scheduler/concept/ths/update_concept_info/sync_one_concept_all_symbols_api.py,sha256=wwuLfjj9AnFcHP-oQPC5AhpwgZ8IsPiNUh-Z6swcngA,1380
|
|
32
|
-
mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py,sha256=
|
|
34
|
+
mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py,sha256=uOB8blinBrQ2LRVxFSfOMaUn9G3PwOwEy_XaSReHhCY,9392
|
|
33
35
|
mns_scheduler/db/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
34
36
|
mns_scheduler/db/col_move_service.py,sha256=9pOrHJ6rQuMPQdGFho1IJMEy2xvpQ20iku3p20MuAhg,4238
|
|
35
37
|
mns_scheduler/db/db_status.py,sha256=e5eW5ZSm5J7tHvmxxhFmFdbZb2_oB_SAcdcFqc4KDmw,733
|
|
36
|
-
mns_scheduler/db/real_time_task_check.py,sha256=OrzDWPgzC40-Hbw5hUlcrwNRHNmI0uNS6ZHlFcz9e_g,5036
|
|
37
|
-
mns_scheduler/db/task_handle_service.py,sha256=KbSIZ3Kjy_UOfXMS8qOBV2gAWC_xjVSizNXKQITNv6A,2207
|
|
38
38
|
mns_scheduler/db/script/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
39
39
|
mns_scheduler/db/script/col_move_script.py,sha256=0WNv0xbnPPKTME2_WMEPSGNT0DUWC7hS4mJ2VeNgc08,1163
|
|
40
40
|
mns_scheduler/db/script/db_move/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
@@ -58,39 +58,39 @@ mns_scheduler/extraIncome/one_minute/common/__init__.py,sha256=wEg73KlZo-dU0yKGw
|
|
|
58
58
|
mns_scheduler/extraIncome/one_minute/common/db_create_index.py,sha256=WhCAaLNrrc4nuGpa_GW6qrWyml6I-Fk4E2jJRSbUUZw,323
|
|
59
59
|
mns_scheduler/extraIncome/one_minute/common/symbol_handle_util.py,sha256=W5BbmAghEXag7yv6Cwdi0augJww2uMbHn0Z7mUW7O9Y,1275
|
|
60
60
|
mns_scheduler/extraIncome/one_minute/etf/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
61
|
-
mns_scheduler/extraIncome/one_minute/etf/etf_one_minute_sync_task.py,sha256=
|
|
61
|
+
mns_scheduler/extraIncome/one_minute/etf/etf_one_minute_sync_task.py,sha256=cQtIMGSI4LK4-hvQSxt2EcK-2ydiW37s6vQeahcJrYg,3691
|
|
62
62
|
mns_scheduler/extraIncome/one_minute/index/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
63
63
|
mns_scheduler/extraIncome/one_minute/index/main_index_sync_task.py,sha256=AbfHfbQznNa5w6zoElmYAI3iZpFtQGMdsLQZz-_7wF8,2649
|
|
64
64
|
mns_scheduler/extraIncome/one_minute/kzz/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
65
|
-
mns_scheduler/extraIncome/one_minute/kzz/kzz_one_minute_sync_task.py,sha256=
|
|
65
|
+
mns_scheduler/extraIncome/one_minute/kzz/kzz_one_minute_sync_task.py,sha256=AR6V7T2-XJp2CHmJI_KEzBT5rIIse1T1-I1foSXkQbo,3691
|
|
66
66
|
mns_scheduler/extraIncome/one_minute/stock/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
67
|
-
mns_scheduler/extraIncome/one_minute/stock/stock_one_minute_sync_task.py,sha256=
|
|
67
|
+
mns_scheduler/extraIncome/one_minute/stock/stock_one_minute_sync_task.py,sha256=cqWxt4ca4qmb0hglH7jlYt6Oy6T9-jvo9oS0oRpO1V4,4594
|
|
68
68
|
mns_scheduler/extraIncome/temp/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
69
69
|
mns_scheduler/extraIncome/temp/tu_share_data_etf_sync.py,sha256=XBsLl4o1Ras1zUQBkJ2BAgWtPebqAf9VUu_kLEisGmQ,4464
|
|
70
70
|
mns_scheduler/extraIncome/temp/tu_share_data_kzz_sync.py,sha256=A2Aa4TB2mgTHiDlW9_UpB0mdRCR_1sOTaPZKs-IBbXc,4850
|
|
71
|
-
mns_scheduler/extraIncome/temp/tu_share_data_stock_sync.py,sha256=
|
|
71
|
+
mns_scheduler/extraIncome/temp/tu_share_data_stock_sync.py,sha256=erPGU6QydbdxVyBCGAavb3tg9fz0-ddz0-eHy2yvsMk,6250
|
|
72
72
|
mns_scheduler/extraIncome/temp/tu_share_zhi_shu_sync_api.py,sha256=sAvfsIObHWsapgJP8o2YTL4D1XZiWa2tGguM6B6bgyQ,4169
|
|
73
73
|
mns_scheduler/finance/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
74
74
|
mns_scheduler/finance/em_financial_asset_liability_sync_service_api.py,sha256=kEZQZkxB7RF7UPH4DmHoRWfEKgI61ZN8BcNOzmBUoV0,19417
|
|
75
|
-
mns_scheduler/finance/em_financial_profit_sync_service_api.py,sha256=
|
|
76
|
-
mns_scheduler/finance/finance_common_api.py,sha256=
|
|
75
|
+
mns_scheduler/finance/em_financial_profit_sync_service_api.py,sha256=3PFPuXT-0UEe_kRUp-IiH3hIkkMAA0Jdv66IZ1ELqpY,14270
|
|
76
|
+
mns_scheduler/finance/finance_common_api.py,sha256=HLIIKvCbcwNNNUw_01z6VcVJWxt_Q-I0aHIzksuUhNk,2471
|
|
77
77
|
mns_scheduler/finance/sync_financial_report_service_api.py,sha256=7ttWeBJOhA76CIz-K0K0jxN5z2-0-_c6-AWEFGFyMIQ,6632
|
|
78
78
|
mns_scheduler/hk/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
79
|
-
mns_scheduler/hk/hk_company_info_sync_service_api.py,sha256=
|
|
80
|
-
mns_scheduler/hk/hk_industry_info_sync_service_api.py,sha256=
|
|
79
|
+
mns_scheduler/hk/hk_company_info_sync_service_api.py,sha256=vIxsl41rJPVvPVw2BTE7b0VZHFiuBecc3i3Gn0TKrFs,3696
|
|
80
|
+
mns_scheduler/hk/hk_industry_info_sync_service_api.py,sha256=Pf2uRGqjhibsBoOFJlUqj2WxujmIPysTAVOeffj3iWM,2275
|
|
81
81
|
mns_scheduler/industry/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
82
82
|
mns_scheduler/industry/ths/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
83
83
|
mns_scheduler/industry/ths/ths_industry_index_service.py,sha256=FcP4J0p3HP2tqD19dNmQfcShTl0hY7Ke7DJWat1MZFE,2686
|
|
84
84
|
mns_scheduler/industry/ths/ths_industry_sync_service.py,sha256=gAzvEG6rHdi0AXmo5vFxeJE81H1bqhE2kMLxZLW0nMQ,2762
|
|
85
85
|
mns_scheduler/irm/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
86
|
-
mns_scheduler/irm/stock_irm_cninfo_service.py,sha256=
|
|
86
|
+
mns_scheduler/irm/stock_irm_cninfo_service.py,sha256=Kyd2g9vfje3CUGtlYX3y6PcHYMt8tAAqImBzz7NNIj0,9560
|
|
87
87
|
mns_scheduler/irm/api/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
88
88
|
mns_scheduler/irm/api/sh_stock_sns_sse_info_api.py,sha256=iXy_FukyyQ_ZcU1WcT_DSpZ8-aEtDrTEcyiiIlFzXho,4931
|
|
89
89
|
mns_scheduler/irm/api/sz_stock_sns_sse_info_api.py,sha256=6iZpdQ1pARchL3kV-oEVPDc9Ja0ciQBjBntVmxseeNE,6199
|
|
90
90
|
mns_scheduler/k_line/__init__.py,sha256=ffZXFCLFdIwOsbxnw__u1MbQYh9yz7Bs8UMP6VF0X2M,161
|
|
91
91
|
mns_scheduler/k_line/clean/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
92
92
|
mns_scheduler/k_line/clean/k_line_info_clean_impl.py,sha256=ZTnSpQ2zKnNPWCkHKPJkLdkxVK29szgufxNV6uvXG7s,1344
|
|
93
|
-
mns_scheduler/k_line/clean/k_line_info_clean_task.py,sha256=
|
|
93
|
+
mns_scheduler/k_line/clean/k_line_info_clean_task.py,sha256=htllTDOmzJLhhdpHTEgAn03iSlJT7D8GQOhhdnwDktc,8852
|
|
94
94
|
mns_scheduler/k_line/clean/daily/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
95
95
|
mns_scheduler/k_line/clean/daily/daily_k_line_clean_common_service.py,sha256=ZOqaiQuOSFJsKZSW8GEQf1UkveKvg66f-bsHGAybvAM,20447
|
|
96
96
|
mns_scheduler/k_line/clean/daily/daily_k_line_service.py,sha256=AmnswvYlkO0gadMongt089WKWXdd-Cnku5AO0HSgDG0,6906
|
|
@@ -100,12 +100,12 @@ mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py,sha25
|
|
|
100
100
|
mns_scheduler/k_line/hot_stocks/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
101
101
|
mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py,sha256=whm-pYhAd_7OKurIw2cteBwWse5vVXS88lcrTbbcSaE,2628
|
|
102
102
|
mns_scheduler/k_line/month_week_daily/__init__.py,sha256=ffZXFCLFdIwOsbxnw__u1MbQYh9yz7Bs8UMP6VF0X2M,161
|
|
103
|
-
mns_scheduler/k_line/month_week_daily/bfq_k_line_sync.py,sha256=
|
|
104
|
-
mns_scheduler/k_line/month_week_daily/daily_week_month_line_sync.py,sha256=
|
|
103
|
+
mns_scheduler/k_line/month_week_daily/bfq_k_line_sync.py,sha256=pKFFnMT93TuIXquJfLw3679U-XHkzXtD45w-5V6S_E4,4218
|
|
104
|
+
mns_scheduler/k_line/month_week_daily/daily_week_month_line_sync.py,sha256=WAznTr6AZOqukz_gJJ745fuWtoJulEBEAg_pJUSRryk,6008
|
|
105
105
|
mns_scheduler/k_line/test/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
106
|
-
mns_scheduler/k_line/test/k_line_info_clean_his_data.py,sha256=
|
|
106
|
+
mns_scheduler/k_line/test/k_line_info_clean_his_data.py,sha256=7pfkcenet9Y7VQ98Gjj6a-TBkKd8fEmFoECEzPC5AYU,1663
|
|
107
107
|
mns_scheduler/k_line/year_quarter/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
108
|
-
mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py,sha256=
|
|
108
|
+
mns_scheduler/k_line/year_quarter/year_quarter_line_sync.py,sha256=TG0id2XUF1_F8S6qnBbmqjSoisGvlfoM1JmRJ4D441s,2769
|
|
109
109
|
mns_scheduler/kpl/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
110
110
|
mns_scheduler/kpl/selection/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
111
111
|
mns_scheduler/kpl/selection/index/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
@@ -135,12 +135,12 @@ mns_scheduler/risk/self/wei_pan_stock_api.py,sha256=5ebrjFqK49j_yEMffFBCumMeBzq_
|
|
|
135
135
|
mns_scheduler/risk/test/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
136
136
|
mns_scheduler/risk/test/fix_blask_list.py,sha256=zfUUZl-RrvSCUJPIBdj27cDt3xmz8sxA-OSdVg1z8xI,1245
|
|
137
137
|
mns_scheduler/risk/transactions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
138
|
-
mns_scheduler/risk/transactions/transactions_check_api.py,sha256=
|
|
138
|
+
mns_scheduler/risk/transactions/transactions_check_api.py,sha256=1Tbs8GNoAmdGPqwYOEFiyFjR4ghhvZ5fz4hl5kKjyfk,7379
|
|
139
139
|
mns_scheduler/self_choose/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
140
140
|
mns_scheduler/self_choose/ths_self_choose_service.py,sha256=QCZ8LMwCV4awOM1wk1yPwzsVJmH1cwjV9o-OjI9n-XQ,6599
|
|
141
141
|
mns_scheduler/trade/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
142
142
|
mns_scheduler/trade/auto_ipo_buy_api.py,sha256=jVe5ZiXwzkDy_j_4X4rUamSzJpmzhV16lNKwbeWgpQw,386
|
|
143
|
-
mns_scheduler/trade/auto_sell_service_api.py,sha256=
|
|
143
|
+
mns_scheduler/trade/auto_sell_service_api.py,sha256=EbVVf6khUm4-gF0yxPVzMg5XfvIhiGdkmeXDY9mcNeE,4623
|
|
144
144
|
mns_scheduler/trade/sync_position_api.py,sha256=deeOySGWsUbTiM2S0bb5wCSjtC59gdmwwjVZsCf3Wn4,2748
|
|
145
145
|
mns_scheduler/trade/auto_login/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
146
146
|
mns_scheduler/trade/auto_login/trader_auto_service.py,sha256=S2J36VrFcV8ZTQ2eeR_1c23d4eHe810kCyOINk6b6o8,686
|
|
@@ -162,7 +162,7 @@ mns_scheduler/zt/connected_boards/zt_five_boards_sync_api.py,sha256=HfjPHKD99fU9
|
|
|
162
162
|
mns_scheduler/zt/export/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
|
|
163
163
|
mns_scheduler/zt/export/export_kcx_high_chg_open_data_to_excel.py,sha256=9LK1s2BCzsXLMAYMmiMAZsmz8iha88JVcp6SKqIW37s,4063
|
|
164
164
|
mns_scheduler/zt/high_chg/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
165
|
-
mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py,sha256=
|
|
165
|
+
mns_scheduler/zt/high_chg/sync_high_chg_pool_service.py,sha256=658-KNjjDTggvaD4dkez81hIy7wUVlLl0GaEv-iT_ow,13347
|
|
166
166
|
mns_scheduler/zt/high_chg/sync_high_chg_real_time_quotes_service.py,sha256=IvP8tTtWTuMvTdIGFGLmhf9MH_Qfa8P5IpRuHfxTkdw,6351
|
|
167
167
|
mns_scheduler/zt/open_data/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
|
|
168
168
|
mns_scheduler/zt/open_data/kcx_high_chg_open_data_sync.py,sha256=wZiqOre2UK9CxIR7dDk11DmqRY3n2_eE2pe0JfmMcjk,11616
|
|
@@ -170,14 +170,14 @@ mns_scheduler/zt/script/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda
|
|
|
170
170
|
mns_scheduler/zt/script/fix_error_deal_day.py,sha256=n54pom24wCQAiHKjnVZACizb97iGWaEYtADM9R1z69g,1624
|
|
171
171
|
mns_scheduler/zt/script/kcx_high_chg_open_his_data_handle.py,sha256=EVJrQoyujH1V6ifmZCJiqzuLx4xin2pfxLJ-bYT1Cxw,5571
|
|
172
172
|
mns_scheduler/zt/script/sync_high_chg_pool_his_data.py,sha256=EBPV8ECBBqvZOcp9poH4h7vdVMCfdauGlKlSIgLNaAE,1685
|
|
173
|
-
mns_scheduler/zt/script/sync_now_higt_chg_zt.py,sha256=
|
|
173
|
+
mns_scheduler/zt/script/sync_now_higt_chg_zt.py,sha256=ljsJiR-Jl8wK23WSOwaa1YogpgsrhiL8B8GVF35RVw0,1862
|
|
174
174
|
mns_scheduler/zt/zt_pool/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
|
|
175
|
-
mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py,sha256=
|
|
176
|
-
mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=
|
|
175
|
+
mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py,sha256=KoJr8QEkq0Kt2NrXdnOUQH4petY_WXaLr_a3bbCKigc,11091
|
|
176
|
+
mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=CXmazwfzEGeD9Y9Yt_wCJtq8x3UDykPNzCKWbhstsqA,10647
|
|
177
177
|
mns_scheduler/zt/zt_pool/update_null_zt_reason_api.py,sha256=1uoiR2Uw46kDfjkvNg2US5rd_4OIkYO3872gIJOufUY,2135
|
|
178
178
|
mns_scheduler/zz_task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
179
|
-
mns_scheduler/zz_task/data_sync_task.py,sha256=
|
|
180
|
-
mns_scheduler-1.2.
|
|
181
|
-
mns_scheduler-1.2.
|
|
182
|
-
mns_scheduler-1.2.
|
|
183
|
-
mns_scheduler-1.2.
|
|
179
|
+
mns_scheduler/zz_task/data_sync_task.py,sha256=0GbvYioD15IgHQlCaZpVibEBorWt7P7AX8Q8m-nxzLA,23944
|
|
180
|
+
mns_scheduler-1.2.9.0.dist-info/METADATA,sha256=WFAh47T5U-8uuT9U45AbXCYaWBKC-PWvon0zFH_9fhs,64
|
|
181
|
+
mns_scheduler-1.2.9.0.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
182
|
+
mns_scheduler-1.2.9.0.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
|
|
183
|
+
mns_scheduler-1.2.9.0.dist-info/RECORD,,
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
import sys
|
|
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)
|
|
8
|
-
import mns_common.constant.db_name_constant as db_name_constant
|
|
9
|
-
import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
10
|
-
import mns_common.component.cache.cache_service as cache_service
|
|
11
|
-
import mns_common.utils.cmd_util as cmd_util
|
|
12
|
-
import mns_common.utils.data_frame_util as data_frame_util
|
|
13
|
-
from loguru import logger
|
|
14
|
-
from datetime import datetime
|
|
15
|
-
import mns_common.utils.date_handle_util as date_handle_util
|
|
16
|
-
from mns_common.db.MongodbUtil import MongodbUtil
|
|
17
|
-
import mns_common.component.trade_date.trade_date_common_service_api as trade_date_common_service_api
|
|
18
|
-
import time
|
|
19
|
-
|
|
20
|
-
mongodb_util = MongodbUtil('27017')
|
|
21
|
-
|
|
22
|
-
MAX_NUMBER_KEY = 'max_number_key'
|
|
23
|
-
# 定时任务 python名称
|
|
24
|
-
REAL_TIME_SCHEDULER_NAME = "sync_realtime_quotes_task"
|
|
25
|
-
# 实时同步 python名称
|
|
26
|
-
REAL_TIME_TASK_NAME = "realtime_quotes_now_sync"
|
|
27
|
-
# 实时同步 bat
|
|
28
|
-
REAL_TIME_TASK_NAME_PATH = 'H:\\real_time_task.bat'
|
|
29
|
-
# 定时任务 bat
|
|
30
|
-
REAL_TIME_SCHEDULER_NAME_PATH = 'H:\\real_time_scheduler.bat'
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
def get_real_time_max_number():
|
|
34
|
-
number = common_service_fun_api.realtime_quotes_now_max_number(db_name_constant.REAL_TIME_QUOTES_NOW,
|
|
35
|
-
'number')
|
|
36
|
-
|
|
37
|
-
return number
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
# 检查数据同步最大值
|
|
41
|
-
def check_max_number():
|
|
42
|
-
now_max_number = get_real_time_max_number()
|
|
43
|
-
if now_max_number == 1:
|
|
44
|
-
return False
|
|
45
|
-
last_minute_number = cache_service.get_cache(MAX_NUMBER_KEY)
|
|
46
|
-
cache_service.set_cache(MAX_NUMBER_KEY, now_max_number)
|
|
47
|
-
if last_minute_number is None:
|
|
48
|
-
return True
|
|
49
|
-
elif now_max_number == last_minute_number:
|
|
50
|
-
logger.error("数据相等:{}", now_max_number)
|
|
51
|
-
return False
|
|
52
|
-
else:
|
|
53
|
-
return True
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
# 实时行情数据同步状态check
|
|
57
|
-
def run_check_real_time_data_sync_status():
|
|
58
|
-
now_date = datetime.now()
|
|
59
|
-
hour = now_date.hour
|
|
60
|
-
minute = now_date.minute
|
|
61
|
-
str_day = now_date.strftime('%Y-%m-%d')
|
|
62
|
-
|
|
63
|
-
if bool(1 - trade_date_common_service_api.is_trade_day(str_day)):
|
|
64
|
-
return False
|
|
65
|
-
|
|
66
|
-
# 关闭定时同步
|
|
67
|
-
if (hour == 11 and minute == 31) or (hour == 9 and minute == 27):
|
|
68
|
-
all_cmd_processes = cmd_util.get_all_process()
|
|
69
|
-
if data_frame_util.is_empty(all_cmd_processes):
|
|
70
|
-
return False
|
|
71
|
-
all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
|
|
72
|
-
if data_frame_util.is_empty(all_cmd_processes_real_time_task):
|
|
73
|
-
return False
|
|
74
|
-
for match_task_one in all_cmd_processes_real_time_task.itertuples():
|
|
75
|
-
try:
|
|
76
|
-
processes_pid = match_task_one.process_pid
|
|
77
|
-
# 关闭当前进程
|
|
78
|
-
cmd_util.kill_process_by_pid(processes_pid)
|
|
79
|
-
except BaseException as e:
|
|
80
|
-
logger.error("关闭实时行情任务异常:{}", e)
|
|
81
|
-
|
|
82
|
-
# 重开定时同步
|
|
83
|
-
if (hour == 12 and minute == 59) or (hour == 9 and minute == 29):
|
|
84
|
-
all_cmd_processes = cmd_util.get_all_process()
|
|
85
|
-
if data_frame_util.is_empty(all_cmd_processes):
|
|
86
|
-
return False
|
|
87
|
-
all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
|
|
88
|
-
if data_frame_util.is_empty(all_cmd_processes_real_time_task):
|
|
89
|
-
# 重开定时任务
|
|
90
|
-
cmd_util.open_bat_file(REAL_TIME_SCHEDULER_NAME_PATH)
|
|
91
|
-
# 防止太快重开多个
|
|
92
|
-
time.sleep(3)
|
|
93
|
-
|
|
94
|
-
# 普通轮训
|
|
95
|
-
|
|
96
|
-
if bool(1 - date_handle_util.is_trade_time(now_date)):
|
|
97
|
-
return False
|
|
98
|
-
flag = check_max_number()
|
|
99
|
-
if bool(1 - flag):
|
|
100
|
-
all_cmd_processes = cmd_util.get_all_process()
|
|
101
|
-
if data_frame_util.is_empty(all_cmd_processes):
|
|
102
|
-
return False
|
|
103
|
-
all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
|
|
104
|
-
if data_frame_util.is_empty(all_cmd_processes_real_time_task):
|
|
105
|
-
return None
|
|
106
|
-
for match_task_one in all_cmd_processes_real_time_task.itertuples():
|
|
107
|
-
try:
|
|
108
|
-
processes_pid = match_task_one.process_pid
|
|
109
|
-
# 关闭当前进程
|
|
110
|
-
cmd_util.kill_process_by_pid(processes_pid)
|
|
111
|
-
# 清空临时数据表
|
|
112
|
-
mongodb_util.remove_all_data(db_name_constant.REAL_TIME_QUOTES_NOW)
|
|
113
|
-
|
|
114
|
-
except BaseException as e:
|
|
115
|
-
logger.error("关闭实时行情任务异常:{}", e)
|
|
116
|
-
# 重开任务进程
|
|
117
|
-
cmd_util.open_bat_file(REAL_TIME_TASK_NAME_PATH)
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
def get_real_time_quotes_task(all_cmd_processes):
|
|
121
|
-
return all_cmd_processes[
|
|
122
|
-
(all_cmd_processes['total_info'].str.contains(REAL_TIME_SCHEDULER_NAME, case=False, na=False))
|
|
123
|
-
| (all_cmd_processes['total_info'].str.contains(REAL_TIME_TASK_NAME, case=False, na=False))]
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
if __name__ == '__main__':
|
|
127
|
-
while True:
|
|
128
|
-
run_check_real_time_data_sync_status()
|
|
@@ -1,64 +0,0 @@
|
|
|
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)
|
|
8
|
-
|
|
9
|
-
import mns_common.utils.cmd_util as cmd_util
|
|
10
|
-
import mns_common.utils.data_frame_util as data_frame_util
|
|
11
|
-
from loguru import logger
|
|
12
|
-
from mns_common.db.MongodbUtil import MongodbUtil
|
|
13
|
-
import time
|
|
14
|
-
|
|
15
|
-
mongodb_util = MongodbUtil('27017')
|
|
16
|
-
|
|
17
|
-
MAX_NUMBER_KEY = 'max_number_key'
|
|
18
|
-
# 定时任务 python名称
|
|
19
|
-
REAL_TIME_SCHEDULER_NAME = "realtime_quotes_now_sync"
|
|
20
|
-
|
|
21
|
-
# 实时同步 bat
|
|
22
|
-
REAL_TIME_TASK_NAME_PATH = 'H:\\real_time_task.bat'
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
# 关闭实时行情任务
|
|
26
|
-
def real_time_sync_task_close():
|
|
27
|
-
all_cmd_processes = cmd_util.get_all_process()
|
|
28
|
-
if data_frame_util.is_empty(all_cmd_processes):
|
|
29
|
-
return False
|
|
30
|
-
all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
|
|
31
|
-
if data_frame_util.is_empty(all_cmd_processes_real_time_task):
|
|
32
|
-
return False
|
|
33
|
-
for match_task_one in all_cmd_processes_real_time_task.itertuples():
|
|
34
|
-
try:
|
|
35
|
-
processes_pid = match_task_one.process_pid
|
|
36
|
-
# 关闭当前进程
|
|
37
|
-
cmd_util.kill_process_by_pid(processes_pid)
|
|
38
|
-
except BaseException as e:
|
|
39
|
-
logger.error("关闭实时行情任务异常:{}", e)
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
# 重开定时任务同步
|
|
43
|
-
def real_time_sync_task_open():
|
|
44
|
-
all_cmd_processes = cmd_util.get_all_process()
|
|
45
|
-
if data_frame_util.is_empty(all_cmd_processes):
|
|
46
|
-
return False
|
|
47
|
-
all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
|
|
48
|
-
if data_frame_util.is_empty(all_cmd_processes_real_time_task):
|
|
49
|
-
# 重开定时任务
|
|
50
|
-
cmd_util.open_bat_file(REAL_TIME_TASK_NAME_PATH)
|
|
51
|
-
# 防止太快重开多个
|
|
52
|
-
time.sleep(3)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
def get_real_time_quotes_task(all_cmd_processes):
|
|
56
|
-
return all_cmd_processes[
|
|
57
|
-
(all_cmd_processes['total_info'].str.contains(REAL_TIME_SCHEDULER_NAME, case=False, na=False))
|
|
58
|
-
| (all_cmd_processes['total_info'].str.contains(REAL_TIME_SCHEDULER_NAME, case=False, na=False))]
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if __name__ == '__main__':
|
|
62
|
-
real_time_sync_task_close()
|
|
63
|
-
time.sleep(3)
|
|
64
|
-
real_time_sync_task_open()
|
|
File without changes
|
|
File without changes
|