mns-scheduler 1.1.2.5__py3-none-any.whl → 1.1.2.8__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 +29 -1
- mns_scheduler/company_info/clean/company_info_clean_api.py +5 -4
- mns_scheduler/company_info/constant/company_constant_data.py +3 -1
- mns_scheduler/db/__init__.py +0 -3
- mns_scheduler/db/col_move_service.py +1 -1
- mns_scheduler/db/real_time_task_check.py +1 -1
- mns_scheduler/debt/__init__.py +7 -0
- mns_scheduler/debt/kzz_bond_info_sync.py +33 -0
- mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py +4 -1
- mns_scheduler/k_line/test/k_line_info_clean_his_data.py +1 -1
- mns_scheduler/trade/auto_login/__init__.py +7 -0
- mns_scheduler/trade/auto_login/trader_auto_service.py +30 -0
- mns_scheduler/trade/task/__init__.py +7 -0
- mns_scheduler/trade/task/trader_task_service.py +48 -0
- mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py +18 -15
- mns_scheduler/zz_task/data_sync_task.py +9 -0
- {mns_scheduler-1.1.2.5.dist-info → mns_scheduler-1.1.2.8.dist-info}/METADATA +1 -1
- {mns_scheduler-1.1.2.5.dist-info → mns_scheduler-1.1.2.8.dist-info}/RECORD +20 -14
- {mns_scheduler-1.1.2.5.dist-info → mns_scheduler-1.1.2.8.dist-info}/WHEEL +1 -1
- {mns_scheduler-1.1.2.5.dist-info → mns_scheduler-1.1.2.8.dist-info}/top_level.txt +0 -0
|
@@ -21,6 +21,7 @@ import mns_common.api.kpl.constant.kpl_constant as kpl_constant
|
|
|
21
21
|
import mns_common.component.company.company_common_service_api as company_common_service_api
|
|
22
22
|
import mns_common.component.k_line.common.k_line_common_service_api as k_line_common_service_api
|
|
23
23
|
import mns_common.constant.db_name_constant as db_name_constant
|
|
24
|
+
from functools import lru_cache
|
|
24
25
|
|
|
25
26
|
mongodb_util = MongodbUtil('27017')
|
|
26
27
|
# 分页大小
|
|
@@ -128,7 +129,7 @@ def sync_company_base_info(symbol_list):
|
|
|
128
129
|
for page in range(page_number): # 0到100页
|
|
129
130
|
end_count = (page + 1) * MAX_PAGE_NUMBER
|
|
130
131
|
begin_count = page * MAX_PAGE_NUMBER
|
|
131
|
-
page_df = east_money_stock_info.
|
|
132
|
+
page_df = east_money_stock_info.iloc[begin_count:end_count]
|
|
132
133
|
thread = threading.Thread(target=single_thread_sync_company_info,
|
|
133
134
|
args=(page_df, kpl_real_time_quotes, exist_company_df))
|
|
134
135
|
threads.append(thread)
|
|
@@ -149,6 +150,7 @@ def single_thread_sync_company_info(east_money_stock_info,
|
|
|
149
150
|
for company_one in east_money_stock_info.itertuples():
|
|
150
151
|
try:
|
|
151
152
|
company_info_type = ths_company_info_web.get_company_info_detail(company_one.symbol)
|
|
153
|
+
company_info_type = set_kzz_debt(company_info_type, company_one.symbol)
|
|
152
154
|
company_info_type['first_industry_code'] = company_info_type['hycode'].apply(
|
|
153
155
|
lambda x: x[1:3] + '0000')
|
|
154
156
|
company_info_type['second_industry_code'] = company_info_type['hy2code'].apply(
|
|
@@ -271,6 +273,32 @@ def set_kpl_data(kpl_real_time_quotes_one, company_info_type, company_one):
|
|
|
271
273
|
return company_info_type
|
|
272
274
|
|
|
273
275
|
|
|
276
|
+
# 获取可转债信息
|
|
277
|
+
@lru_cache(maxsize=None)
|
|
278
|
+
def get_kzz_debt_info():
|
|
279
|
+
query = {}
|
|
280
|
+
kzz_debt_info_df = mongodb_util.find_query_data(db_name_constant.KZZ_DEBT_INFO, query)
|
|
281
|
+
kzz_debt_info_df = kzz_debt_info_df[[
|
|
282
|
+
'symbol',
|
|
283
|
+
'name',
|
|
284
|
+
'stock_code',
|
|
285
|
+
'apply_date',
|
|
286
|
+
'list_date',
|
|
287
|
+
'due_date'
|
|
288
|
+
]]
|
|
289
|
+
return kzz_debt_info_df
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
def set_kzz_debt(df, symbol):
|
|
293
|
+
kzz_debt_info_df_all = get_kzz_debt_info()
|
|
294
|
+
kzz_debt_info_df = kzz_debt_info_df_all.loc[kzz_debt_info_df_all['stock_code'] == symbol]
|
|
295
|
+
df.loc[:, 'kzz_debt_list'] = ''
|
|
296
|
+
if data_frame_util.is_not_empty(kzz_debt_info_df):
|
|
297
|
+
kzz_debt_info_df_list = kzz_debt_info_df.to_dict(orient='records')
|
|
298
|
+
df.at[0, 'kzz_debt_list'] = kzz_debt_info_df_list
|
|
299
|
+
return df
|
|
300
|
+
|
|
301
|
+
|
|
274
302
|
# 保存申万行业分类
|
|
275
303
|
def save_sw_data(company_info_type):
|
|
276
304
|
now_date = datetime.now()
|
|
@@ -19,9 +19,6 @@ import mns_common.component.common_service_fun_api as common_service_fun_api
|
|
|
19
19
|
import mns_common.component.company.company_common_service_api as company_common_service_api
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
22
|
# 修改行业信息
|
|
26
23
|
def fix_company_industry(symbol):
|
|
27
24
|
if symbol is not None:
|
|
@@ -95,7 +92,7 @@ def save_company_info_his(company_info_df):
|
|
|
95
92
|
tag = mongodb_util.remove_data(remove_query, db_name_constant.COMPANY_INFO_HIS)
|
|
96
93
|
success = tag.acknowledged
|
|
97
94
|
if success:
|
|
98
|
-
mongodb_util.
|
|
95
|
+
mongodb_util.save_mongo(company_info_df, db_name_constant.COMPANY_INFO_HIS)
|
|
99
96
|
|
|
100
97
|
|
|
101
98
|
# 更新新上市公司信息
|
|
@@ -110,3 +107,7 @@ def new_company_info_update():
|
|
|
110
107
|
except BaseException as e:
|
|
111
108
|
logger.error("出现异常:{}", e)
|
|
112
109
|
company_common_service_api.company_info_industry_cache_clear
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
if __name__ == '__main__':
|
|
113
|
+
fix_company_industry(None)
|
|
@@ -32,6 +32,7 @@ def get_fix_symbol_industry():
|
|
|
32
32
|
['300215', '电科院', '410110', '电能综合服务'],
|
|
33
33
|
# 持有上海微电子装备有限公司10%的股份 国产光刻机 主要炒作在芯片概念 不在房地产
|
|
34
34
|
['600895', '张江高科', '270108', '半导体设备'],
|
|
35
|
+
['301112', '信邦智能', '640704', '其他自动化设备'],
|
|
35
36
|
|
|
36
37
|
],
|
|
37
38
|
columns=['symbol', 'name', 'new_industry_code', 'new_industry'])
|
|
@@ -366,7 +367,8 @@ def filed_sort(company_info):
|
|
|
366
367
|
"kpl_most_relative_name",
|
|
367
368
|
"kpl_plate_list_info",
|
|
368
369
|
'operate_profit',
|
|
369
|
-
'total_operate_income'
|
|
370
|
+
'total_operate_income',
|
|
371
|
+
'kzz_debt_list'
|
|
370
372
|
]]
|
|
371
373
|
|
|
372
374
|
|
mns_scheduler/db/__init__.py
CHANGED
|
@@ -53,7 +53,7 @@ def run_check_real_time_data_sync_status():
|
|
|
53
53
|
return False
|
|
54
54
|
flag = check_max_number()
|
|
55
55
|
if bool(1 - flag):
|
|
56
|
-
all_cmd_processes = cmd_util.
|
|
56
|
+
all_cmd_processes = cmd_util.get_all_process()
|
|
57
57
|
if data_frame_util.is_empty(all_cmd_processes):
|
|
58
58
|
return None
|
|
59
59
|
all_cmd_processes_real_time_task = get_real_time_quotes_task(all_cmd_processes)
|
|
@@ -0,0 +1,33 @@
|
|
|
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 mns_common.api.em.east_money_debt_api as east_money_debt_api
|
|
9
|
+
from datetime import datetime
|
|
10
|
+
import mns_common.constant.db_name_constant as db_name_constant
|
|
11
|
+
from mns_common.db.MongodbUtil import MongodbUtil
|
|
12
|
+
|
|
13
|
+
mongodb_util = MongodbUtil('27017')
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# 同步可转债信息
|
|
17
|
+
def sync_debt_info():
|
|
18
|
+
now_date = datetime.now()
|
|
19
|
+
str_now_day = now_date.strftime('%Y-%m-%d')
|
|
20
|
+
kzz_bond_info_df = east_money_debt_api.get_kzz_bond_info()
|
|
21
|
+
kzz_bond_info_df = kzz_bond_info_df.fillna(0)
|
|
22
|
+
kzz_bond_info_df['apply_date'] = kzz_bond_info_df['apply_date'].astype(str)
|
|
23
|
+
kzz_bond_info_df['winning_date'] = kzz_bond_info_df['winning_date'].astype(str)
|
|
24
|
+
kzz_bond_info_df['list_date'] = kzz_bond_info_df['list_date'].astype(str)
|
|
25
|
+
kzz_bond_info_df['due_date'] = kzz_bond_info_df['due_date'].astype(str)
|
|
26
|
+
kzz_bond_info_df = kzz_bond_info_df.loc[kzz_bond_info_df['due_date'] >= str_now_day]
|
|
27
|
+
mongodb_util.remove_all_data(db_name_constant.KZZ_DEBT_INFO)
|
|
28
|
+
kzz_bond_info_df['_id'] = kzz_bond_info_df['symbol']
|
|
29
|
+
mongodb_util.insert_mongo(kzz_bond_info_df, db_name_constant.KZZ_DEBT_INFO)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
if __name__ == '__main__':
|
|
33
|
+
sync_debt_info()
|
|
@@ -33,7 +33,10 @@ def handle_month_line(k_line_info, stock_qfq_daily, deal_days):
|
|
|
33
33
|
k_line_info['month01'] = month_01
|
|
34
34
|
k_line_info['month02'] = month_02
|
|
35
35
|
k_line_info['month01_date'] = list(stock_qfq_daily_month_01.iloc[0:1]['date'])[0]
|
|
36
|
-
|
|
36
|
+
if k_line_length != MAX_TRADE_DAYS_PER_MONTH:
|
|
37
|
+
k_line_info['month02_date'] = list(stock_qfq_daily_month_02.iloc[0:1]['date'])[0]
|
|
38
|
+
else:
|
|
39
|
+
k_line_info['month02_date'] = ''
|
|
37
40
|
elif deal_days > MAX_TRADE_DAYS_PER_MONTH * 2:
|
|
38
41
|
stock_qfq_daily_month_01 = stock_qfq_daily.iloc[0:MAX_TRADE_DAYS_PER_MONTH]
|
|
39
42
|
month_01 = round(sum(stock_qfq_daily_month_01['chg']), 2)
|
|
@@ -0,0 +1,30 @@
|
|
|
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 mns_common.component.deal.deal_service_api as deal_service_api
|
|
9
|
+
from mns_common.component.deal.terminal_enum import TerminalEnum
|
|
10
|
+
import time
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
# qmt 自动登录
|
|
14
|
+
def qmt_auto_login():
|
|
15
|
+
deal_service_api.auto_login(TerminalEnum.QMT.terminal_code)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
# 同花顺自动登陆
|
|
19
|
+
def ths_auto_login():
|
|
20
|
+
deal_service_api.auto_login(TerminalEnum.EASY_TRADER.terminal_code)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def auto_login():
|
|
24
|
+
qmt_auto_login()
|
|
25
|
+
time.sleep(5)
|
|
26
|
+
ths_auto_login()
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
if __name__ == '__main__':
|
|
30
|
+
auto_login()
|
|
@@ -0,0 +1,48 @@
|
|
|
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 mns_common.utils.cmd_util as cmd_util
|
|
9
|
+
import time
|
|
10
|
+
import mns_scheduler.trade.auto_login.trader_auto_service as trader_auto_service
|
|
11
|
+
import mns_common.utils.data_frame_util as data_frame_util
|
|
12
|
+
from loguru import logger
|
|
13
|
+
|
|
14
|
+
# 交易任务
|
|
15
|
+
TRADER_SERVER_PATH = 'H:\\mns-trader.bat'
|
|
16
|
+
# 实时行情同步任务 python名称
|
|
17
|
+
TRADER_SERVER_NAME = "mns_trader"
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
# 打开交易客户端
|
|
21
|
+
def open_trader_terminal():
|
|
22
|
+
# 打开任务进程
|
|
23
|
+
cmd_util.open_bat_file(TRADER_SERVER_PATH)
|
|
24
|
+
# 自动登陆
|
|
25
|
+
trader_auto_service.auto_login()
|
|
26
|
+
time.sleep(5)
|
|
27
|
+
# 需先打开同花顺终端在开始交易服务
|
|
28
|
+
kill_server()
|
|
29
|
+
time.sleep(5)
|
|
30
|
+
# 打开任务进程
|
|
31
|
+
cmd_util.open_bat_file(TRADER_SERVER_PATH)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def kill_server():
|
|
35
|
+
all_cmd_processes = cmd_util.get_all_process()
|
|
36
|
+
all_cmd_processes_trader = all_cmd_processes.loc[
|
|
37
|
+
(all_cmd_processes['total_info'].str.contains(TRADER_SERVER_NAME, case=False, na=False))]
|
|
38
|
+
if data_frame_util.is_not_empty(all_cmd_processes_trader):
|
|
39
|
+
for processes_one in all_cmd_processes_trader.itertuples():
|
|
40
|
+
try:
|
|
41
|
+
process_pid = processes_one.process_pid
|
|
42
|
+
cmd_util.kill_process_by_pid(process_pid)
|
|
43
|
+
except BaseException as e:
|
|
44
|
+
logger.error("杀死进程异常:{}", e)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
if __name__ == '__main__':
|
|
48
|
+
open_trader_terminal()
|
|
@@ -17,6 +17,7 @@ import mns_common.api.akshare.k_line_api as k_line_api
|
|
|
17
17
|
import mns_common.utils.date_handle_util as date_handle_util
|
|
18
18
|
from mns_common.db.MongodbUtil import MongodbUtil
|
|
19
19
|
import mns_common.constant.db_name_constant as db_name_constant
|
|
20
|
+
import time
|
|
20
21
|
|
|
21
22
|
mongodb_util = MongodbUtil('27017')
|
|
22
23
|
|
|
@@ -226,20 +227,22 @@ def save_ths_zt_pool(ths_zt_pool_df, str_day):
|
|
|
226
227
|
|
|
227
228
|
|
|
228
229
|
if __name__ == '__main__':
|
|
229
|
-
trade_date = '
|
|
230
|
+
trade_date = '2015-05-28'
|
|
230
231
|
zt_df = ths_zt_pool(trade_date, None)
|
|
231
232
|
save_ths_zt_pool(zt_df, trade_date)
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
233
|
+
while True:
|
|
234
|
+
query = {"$and": [{'_id': {"$gte": '2013-07-04'}}, {'_id': {"$lte": '2015-05-05'}}]}
|
|
235
|
+
|
|
236
|
+
trade_date_list = mongodb_util.find_query_data('trade_date_list', query)
|
|
237
|
+
trade_date_list = trade_date_list.sort_values(by=['trade_date'], ascending=False)
|
|
238
|
+
for trade_one in trade_date_list.itertuples():
|
|
239
|
+
try:
|
|
240
|
+
trade_date = trade_one.trade_date
|
|
241
|
+
zt_df = ths_zt_pool(trade_date, None)
|
|
242
|
+
|
|
243
|
+
# zt_df = mongodb_util.find_query_data(db_name_constant.THS_ZT_POOL, query={"str_day": trade_date})
|
|
244
|
+
save_ths_zt_pool(zt_df, trade_date)
|
|
245
|
+
logger.info("同步到日期:{}", trade_date)
|
|
246
|
+
time.sleep(2)
|
|
247
|
+
except BaseException as e:
|
|
248
|
+
logger.warning("同步涨停到日期:{},{}", trade_one.trade_date, e)
|
|
@@ -49,6 +49,7 @@ import mns_scheduler.concept.ths.sync_new_index.sync_ths_concept_new_index_api a
|
|
|
49
49
|
import mns_scheduler.company_info.clean.company_info_clean_api as company_info_clean_api
|
|
50
50
|
import mns_scheduler.zt.zt_pool.ths_zt_pool_sync_api as ths_zt_pool_sync_api
|
|
51
51
|
import mns_scheduler.db.real_time_task_check as real_time_task_check_api
|
|
52
|
+
import mns_scheduler.trade.task.trader_task_service as trader_task_service
|
|
52
53
|
|
|
53
54
|
|
|
54
55
|
# 同步交易日期任务完成
|
|
@@ -348,6 +349,11 @@ def real_time_task_check_status():
|
|
|
348
349
|
real_time_task_check_api.run_check_real_time_data_sync_status()
|
|
349
350
|
|
|
350
351
|
|
|
352
|
+
# 打开交易客户端
|
|
353
|
+
def trader_client_auto_login():
|
|
354
|
+
trader_task_service.open_trader_terminal()
|
|
355
|
+
|
|
356
|
+
|
|
351
357
|
# # 定义BlockingScheduler
|
|
352
358
|
blockingScheduler = BlockingScheduler()
|
|
353
359
|
# sync_trade_date 同步交易日期
|
|
@@ -429,6 +435,9 @@ blockingScheduler.add_job(sync_all_interactive_questions, 'cron', hour='08,12,17
|
|
|
429
435
|
# 实时数据状态同步check
|
|
430
436
|
blockingScheduler.add_job(real_time_task_check_status, 'interval', seconds=59, max_instances=4)
|
|
431
437
|
|
|
438
|
+
# 打开交易客户端
|
|
439
|
+
blockingScheduler.add_job(trader_client_auto_login, 'cron', hour='09,12', minute='05')
|
|
440
|
+
|
|
432
441
|
print('定时任务启动成功')
|
|
433
442
|
blockingScheduler.start()
|
|
434
443
|
#
|
|
@@ -15,11 +15,11 @@ mns_scheduler/big_deal/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9
|
|
|
15
15
|
mns_scheduler/big_deal/ths_big_deal_sync.py,sha256=aMFj-_pLprh4vGjSSzmr_tlYoPA0L4Lm0SkLRkQwIiw,4564
|
|
16
16
|
mns_scheduler/company_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
17
17
|
mns_scheduler/company_info/base/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
18
|
-
mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=
|
|
18
|
+
mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=NRuwc5oJF9Ngt932OrnG76oP22OmkjbGgcWKgWplafg,19106
|
|
19
19
|
mns_scheduler/company_info/clean/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
20
|
-
mns_scheduler/company_info/clean/company_info_clean_api.py,sha256=
|
|
20
|
+
mns_scheduler/company_info/clean/company_info_clean_api.py,sha256=Pn2cRt3oRH-VRkHMZdsp-nJTFWrD5VSVRoH_uI_8-j0,4861
|
|
21
21
|
mns_scheduler/company_info/constant/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
22
|
-
mns_scheduler/company_info/constant/company_constant_data.py,sha256=
|
|
22
|
+
mns_scheduler/company_info/constant/company_constant_data.py,sha256=XIM81fA4PNalVJNBYXiMddkcW012fFtofoPGYy2VtD0,16001
|
|
23
23
|
mns_scheduler/company_info/de_list_stock/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
24
24
|
mns_scheduler/company_info/de_list_stock/de_list_stock_service.py,sha256=GCp6hlvO-SuH1oIpEsYZwEnGUOa6fXb2D7CqAUYXKQA,1993
|
|
25
25
|
mns_scheduler/concept/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
@@ -38,10 +38,12 @@ mns_scheduler/concept/ths/sync_new_index/sync_ths_concept_new_index_api.py,sha25
|
|
|
38
38
|
mns_scheduler/concept/ths/update_concept_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
39
39
|
mns_scheduler/concept/ths/update_concept_info/sync_one_concept_all_symbols_api.py,sha256=wlsr70rcS-uAH6b8NXPbA-wG37saeIQ0FIg8vSSTXQA,1920
|
|
40
40
|
mns_scheduler/concept/ths/update_concept_info/sync_one_symbol_all_concepts_api.py,sha256=HVqDSBruORebtiliKps2swJo_GNg_8mqT0r9cZX6sj8,8839
|
|
41
|
-
mns_scheduler/db/__init__.py,sha256=
|
|
42
|
-
mns_scheduler/db/col_move_service.py,sha256
|
|
41
|
+
mns_scheduler/db/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
42
|
+
mns_scheduler/db/col_move_service.py,sha256=-d3JUCjWyaGKBhyUSkqwpCgZtHkIy1JOasgpxmH74zg,4057
|
|
43
43
|
mns_scheduler/db/db_status.py,sha256=e5eW5ZSm5J7tHvmxxhFmFdbZb2_oB_SAcdcFqc4KDmw,733
|
|
44
|
-
mns_scheduler/db/real_time_task_check.py,sha256=
|
|
44
|
+
mns_scheduler/db/real_time_task_check.py,sha256=R8-ZmS7wzC_zZPGgDwv6kx2v25hBrYOTvXlU3cP2BVQ,3167
|
|
45
|
+
mns_scheduler/debt/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
46
|
+
mns_scheduler/debt/kzz_bond_info_sync.py,sha256=3o0Y4FBxP3AOXwf7Z7jVO1N_DcqxeOVqcgMM3y7E4uo,1336
|
|
45
47
|
mns_scheduler/dt/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
46
48
|
mns_scheduler/dt/stock_dt_pool_sync.py,sha256=5ivRUOnFtOapZniwTbujf1lVq3y4btm2Cmd5R6JJAVo,3466
|
|
47
49
|
mns_scheduler/finance/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
@@ -65,14 +67,14 @@ mns_scheduler/k_line/clean/daily/daily_k_line_clean_common_service.py,sha256=j00
|
|
|
65
67
|
mns_scheduler/k_line/clean/daily/daily_k_line_service.py,sha256=BOzE5smjgJyUPdNvV4CUmN2phHT1VCtusosq7uhrGCw,6654
|
|
66
68
|
mns_scheduler/k_line/clean/week_month/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
67
69
|
mns_scheduler/k_line/clean/week_month/normal_week_month_k_line_service.py,sha256=4qInTtReDd77Jzb7ngme8yXHRd6INSbSCq84lhS3ScI,4862
|
|
68
|
-
mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py,sha256=
|
|
70
|
+
mns_scheduler/k_line/clean/week_month/sub_new_week_month_k_line_service.py,sha256=BS5wouEZhz4WfqubDgjO2CcfmYonCFqRl1BOPnVN3r8,5518
|
|
69
71
|
mns_scheduler/k_line/hot_stocks/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
70
72
|
mns_scheduler/k_line/hot_stocks/recent_hot_stocks_clean_service.py,sha256=whm-pYhAd_7OKurIw2cteBwWse5vVXS88lcrTbbcSaE,2628
|
|
71
73
|
mns_scheduler/k_line/sync/__init__.py,sha256=ffZXFCLFdIwOsbxnw__u1MbQYh9yz7Bs8UMP6VF0X2M,161
|
|
72
74
|
mns_scheduler/k_line/sync/bfq_k_line_sync.py,sha256=i2NNdp4uVa-kiqQvOaY6odd8-DmQtlejeMXeVklKOIs,4067
|
|
73
75
|
mns_scheduler/k_line/sync/daily_week_month_line_sync.py,sha256=SHAvMkDW-2TKEC4wWkMdiOQWa4Ktc0Umm59OlceK1dg,5795
|
|
74
76
|
mns_scheduler/k_line/test/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
|
|
75
|
-
mns_scheduler/k_line/test/k_line_info_clean_his_data.py,sha256=
|
|
77
|
+
mns_scheduler/k_line/test/k_line_info_clean_his_data.py,sha256=2s0UW2dHGS_k25Rl9CeB7XZtbYRxWaHSp9Se5Okk7EI,1173
|
|
76
78
|
mns_scheduler/kpl/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
77
79
|
mns_scheduler/kpl/selection/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
78
80
|
mns_scheduler/kpl/selection/index/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
@@ -107,6 +109,10 @@ mns_scheduler/trade/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhU
|
|
|
107
109
|
mns_scheduler/trade/auto_ipo_buy_api.py,sha256=jVe5ZiXwzkDy_j_4X4rUamSzJpmzhV16lNKwbeWgpQw,386
|
|
108
110
|
mns_scheduler/trade/auto_sell_service_api.py,sha256=b-4xmW6W6cd6dMuLPD7ZJu3tUtchMcUG-p7wOMm_RRY,4640
|
|
109
111
|
mns_scheduler/trade/sync_position_api.py,sha256=deeOySGWsUbTiM2S0bb5wCSjtC59gdmwwjVZsCf3Wn4,2748
|
|
112
|
+
mns_scheduler/trade/auto_login/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
113
|
+
mns_scheduler/trade/auto_login/trader_auto_service.py,sha256=S2J36VrFcV8ZTQ2eeR_1c23d4eHe810kCyOINk6b6o8,686
|
|
114
|
+
mns_scheduler/trade/task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
115
|
+
mns_scheduler/trade/task/trader_task_service.py,sha256=xBqByakfCO2ruWXuWWsRPJtZ_oCLXLgaOHDiLdD4SVw,1560
|
|
110
116
|
mns_scheduler/zb/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
|
|
111
117
|
mns_scheduler/zb/stock_zb_pool_sync.py,sha256=ky3CNDzpjB6C_frCf4YGNXdidnUo-uUUKsJpY62P4Bk,1936
|
|
112
118
|
mns_scheduler/zt/__init__.py,sha256=Rzolrn2R5RZIj-eOmu9KcL6oZBY9Wjz_uBFXPlzirQc,1641
|
|
@@ -125,10 +131,10 @@ mns_scheduler/zt/script/sync_high_chg_pool_his_data.py,sha256=OXyJqhPIbXkECXzGr0
|
|
|
125
131
|
mns_scheduler/zt/script/sync_now_higt_chg_zt.py,sha256=bhoIGDWTI3w0YKVfIAVNHWpUrYqJYDMGPt-1i3d_Zmw,1850
|
|
126
132
|
mns_scheduler/zt/zt_pool/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
|
|
127
133
|
mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py,sha256=wUtc9kL6ICyz8Os1ix_o-ZERdt6A7owxKyTS25j7UIM,7642
|
|
128
|
-
mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=
|
|
134
|
+
mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=0juoFzZ4zAxhbsyitQ5FQrEeUu7CWCxmMEypBVKriH4,10353
|
|
129
135
|
mns_scheduler/zz_task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
|
|
130
|
-
mns_scheduler/zz_task/data_sync_task.py,sha256=
|
|
131
|
-
mns_scheduler-1.1.2.
|
|
132
|
-
mns_scheduler-1.1.2.
|
|
133
|
-
mns_scheduler-1.1.2.
|
|
134
|
-
mns_scheduler-1.1.2.
|
|
136
|
+
mns_scheduler/zz_task/data_sync_task.py,sha256=ciJkI3inI_SJ6s5Tlm3Zv8o59eoPKhUgnZfRW6xCmjg,18351
|
|
137
|
+
mns_scheduler-1.1.2.8.dist-info/METADATA,sha256=tc4EV8WMqvtl9o9Tg0-vVrmWE8OHDqOl2RO3_lG3Y4U,64
|
|
138
|
+
mns_scheduler-1.1.2.8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
139
|
+
mns_scheduler-1.1.2.8.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
|
|
140
|
+
mns_scheduler-1.1.2.8.dist-info/RECORD,,
|
|
File without changes
|