mns-scheduler 1.1.5.0__py3-none-any.whl → 1.1.5.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

@@ -0,0 +1,87 @@
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_stock_api as east_money_stock_api
9
+ import mns_common.constant.db_name_constant as db_name_constant
10
+ from mns_common.db.MongodbUtil import MongodbUtil
11
+ from loguru import logger
12
+ import mns_common.component.company.company_common_service_new_api as company_common_service_new_api
13
+ import mns_common.utils.date_handle_util as date_handle_util
14
+ import mns_common.api.akshare.k_line_api as k_line_api
15
+
16
+ mongodb_util = MongodbUtil('27017')
17
+
18
+
19
+ def history_high_chg(symbol_param):
20
+ company_info_df = company_common_service_new_api.get_company_info_info()
21
+ begin_date = '20140722'
22
+ end_date = '20150615'
23
+
24
+ real_time_quotes_all_stocks_df = east_money_stock_api.get_real_time_quotes_all_stocks()
25
+ if symbol_param is not None:
26
+ real_time_quotes_all_stocks_df = real_time_quotes_all_stocks_df.loc[
27
+ real_time_quotes_all_stocks_df['symbol'] == symbol_param]
28
+ real_time_quotes_all_stocks_list_date_before = real_time_quotes_all_stocks_df.loc[
29
+ real_time_quotes_all_stocks_df['list_date'] < 20150615]
30
+
31
+ for company_one in real_time_quotes_all_stocks_list_date_before.itertuples():
32
+ try:
33
+
34
+ symbol = company_one.symbol
35
+ stock_qfq_daily_df = k_line_api.stock_zh_a_hist(symbol=symbol, period='daily',
36
+ start_date=date_handle_util.no_slash_date(begin_date),
37
+ end_date=date_handle_util.no_slash_date(end_date),
38
+ adjust='hfq')
39
+
40
+ if stock_qfq_daily_df.shape[0] < 100:
41
+ continue
42
+ logger.error("新股或者交易时间不足{}:{}", symbol, company_one.name)
43
+ stock_qfq_daily_df = stock_qfq_daily_df.sort_values(by=['date'], ascending=True)
44
+ first_row = stock_qfq_daily_df.iloc[0]
45
+
46
+ open_price = first_row.open
47
+
48
+ last_row = stock_qfq_daily_df.iloc[-1]
49
+
50
+ close_price = last_row.close
51
+
52
+ sum_chg = round((close_price - open_price) * 100 / open_price, 2)
53
+
54
+ company_info_df_one = company_info_df.loc[company_info_df['_id'] == symbol]
55
+ if company_info_df_one.shape[0] > 0:
56
+ company_info_df_one['sum_chg'] = sum_chg
57
+ company_info_df_one['name'] = company_one.name
58
+ company_info_df_one = company_info_df_one[
59
+ ['_id',
60
+ 'name',
61
+ 'sum_chg',
62
+ 'industry',
63
+ 'first_sw_industry',
64
+ 'second_sw_industry',
65
+ 'third_sw_industry',
66
+ 'em_industry',
67
+ 'list_date',
68
+ 'ths_concept_list_info',
69
+ 'kpl_plate_name',
70
+ 'kpl_plate_list_info',
71
+ 'company_type']]
72
+ mongodb_util.save_mongo(company_info_df_one, '2014-2015-chg-statistics')
73
+ else:
74
+ logger.error("该股票已经退市{}:{}", symbol, company_one.name)
75
+ except BaseException as e:
76
+ logger.error("出现异常{}:{}", symbol, e)
77
+
78
+
79
+ if __name__ == '__main__':
80
+ symbol_test = None
81
+
82
+ # qfq_k_line_df = k_line_api.stock_zh_a_hist(symbol=symbol_test, period='daily',
83
+ # start_date=date_handle_util.no_slash_date('1990-12-19'),
84
+ # end_date=date_handle_util.no_slash_date('2990-12-19'),
85
+ # adjust='hfq')
86
+
87
+ history_high_chg(symbol_test)
@@ -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)
@@ -75,6 +75,8 @@ def get_east_money_stock_info():
75
75
  'flow_share',
76
76
  'industry',
77
77
  'amount',
78
+ "hk_stock_code",
79
+ "hk_stock_name",
78
80
  'concept']]
79
81
 
80
82
  return all_real_time_quotes
@@ -171,6 +173,9 @@ def single_thread_sync_company_info(east_money_stock_info,
171
173
  company_info_type['em_industry'] = company_one.industry
172
174
  company_info_type['em_concept'] = company_one.concept
173
175
 
176
+ company_info_type['hk_stock_code'] = company_one.hk_stock_code
177
+ company_info_type['hk_stock_name'] = company_one.hk_stock_name
178
+
174
179
  company_info_type['now_price'] = company_one.now_price
175
180
  company_info_type['total_share'] = company_one.total_share
176
181
  company_info_type['flow_share'] = company_one.flow_share
@@ -368,7 +368,9 @@ def filed_sort(company_info):
368
368
  "kpl_plate_list_info",
369
369
  'operate_profit',
370
370
  'total_operate_income',
371
- 'kzz_debt_list'
371
+ 'kzz_debt_list',
372
+ 'hk_stock_code',
373
+ 'hk_stock_name'
372
374
  ]]
373
375
 
374
376
 
@@ -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,45 @@
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 pymongo
9
+ from mns_common.db.MongodbUtil import MongodbUtil
10
+
11
+ mongodb_util = MongodbUtil('27017')
12
+
13
+ client_win = pymongo.MongoClient("mongodb://192.168.1.6:" + '27017' + "/patience")
14
+ from loguru import logger
15
+
16
+
17
+ def insert_mongo(df, col):
18
+ db = client_win.patience
19
+
20
+ if df is None or len(df) == 0:
21
+ return
22
+ collection = db[col]
23
+ # 格式转换
24
+ try:
25
+ df = df.drop_duplicates()
26
+ # df = df.T.drop_duplicates().T
27
+ records = df.to_dict('records')
28
+ collection.insert_many(records)
29
+ except BaseException as e:
30
+ logger.error("插入数据异常:{}", e)
31
+
32
+
33
+ def col_move():
34
+ col = 'realtime_quotes_now_2024-09-23'
35
+ number = 8
36
+ while number < 3312:
37
+ query = {'number': number}
38
+ realtime_quotes_now_df = mongodb_util.find_query_data(col, query)
39
+ insert_mongo(realtime_quotes_now_df, col)
40
+ number = number + 1
41
+ print(number)
42
+
43
+
44
+ if __name__ == '__main__':
45
+ col_move()
@@ -62,18 +62,21 @@ def delete_all_self_choose_stocks():
62
62
 
63
63
  def add_self_choose_local():
64
64
  ths_cookie = get_ths_cookie()
65
+
66
+ self_choose_symbol_df = mongodb_util.find_all_data(db_name_constant.SELF_CHOOSE_STOCK)
67
+ if data_frame_util.is_not_empty(self_choose_symbol_df):
68
+ self_choose_symbol_df = self_choose_symbol_df.sort_values(by=['str_now_date'], ascending=False)
69
+ for stock_one in self_choose_symbol_df.itertuples():
70
+ ths_self_choose_api.add_stock_to_account(stock_one.symbol, ths_cookie)
71
+
65
72
  query_plate = {'self_type': self_choose_constant.SELF_CHOOSE_THS_CONCEPT}
66
73
  self_choose_plate_df = mongodb_util.find_query_data(db_name_constant.SELF_CHOOSE_PLATE, query_plate)
67
74
  # 自选同花顺概念
68
75
  if data_frame_util.is_not_empty(self_choose_plate_df):
76
+ self_choose_plate_df = self_choose_plate_df.sort_values(by=['str_now_date'], ascending=False)
69
77
  for stock_one in self_choose_plate_df.itertuples():
70
78
  ths_self_choose_api.add_stock_to_account(str(stock_one.self_code), ths_cookie)
71
79
 
72
- self_choose_symbol_df = mongodb_util.find_all_data(db_name_constant.SELF_CHOOSE_STOCK)
73
- if data_frame_util.is_not_empty(self_choose_symbol_df):
74
- for stock_one in self_choose_symbol_df.itertuples():
75
- ths_self_choose_api.add_stock_to_account(stock_one.symbol, ths_cookie)
76
-
77
80
 
78
81
  # 添加最近交易股票
79
82
  def add_trade_stocks():
@@ -1,4 +1,4 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mns-scheduler
3
- Version: 1.1.5.0
3
+ Version: 1.1.5.2
4
4
 
@@ -1,13 +1,15 @@
1
1
  mns_scheduler/__init__.py,sha256=Tyvi_iQlv3jz59EdH67Mycnt9CSixcWPQoJwu55bOq0,165
2
+ mns_scheduler/2014-2015-test/2014_2015_chg_statistics.py,sha256=u7QaSs764ZGXi3iLf0tX2VJzKWVlhmOG-3iPX8sZsnQ,3889
3
+ mns_scheduler/2014-2015-test/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
2
4
  mns_scheduler/big_deal/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
3
5
  mns_scheduler/big_deal/ths_big_deal_sync.py,sha256=aMFj-_pLprh4vGjSSzmr_tlYoPA0L4Lm0SkLRkQwIiw,4564
4
6
  mns_scheduler/company_info/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
5
7
  mns_scheduler/company_info/base/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
6
- mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=LZ6Pxz_RXUiCh1OnCTJhvYSfY2zH0UdkveaBElI541Q,19106
8
+ mns_scheduler/company_info/base/sync_company_base_info_api.py,sha256=ELPKg-9R3J1f_PKqXwpYJXg7OAdRNEdt0e5la4W2d4M,19394
7
9
  mns_scheduler/company_info/clean/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
8
10
  mns_scheduler/company_info/clean/company_info_clean_api.py,sha256=n3kxsqihPjKJvGDkAjMYqB_U2EPemOi1Yjez5yOYJeo,4858
9
11
  mns_scheduler/company_info/constant/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
10
- mns_scheduler/company_info/constant/company_constant_data.py,sha256=XIM81fA4PNalVJNBYXiMddkcW012fFtofoPGYy2VtD0,16001
12
+ mns_scheduler/company_info/constant/company_constant_data.py,sha256=eN4vIH3XO5xSI2R_75mgaDfJV2cA4fX54jcelkIVgQA,16053
11
13
  mns_scheduler/company_info/de_list_stock/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
12
14
  mns_scheduler/company_info/de_list_stock/de_list_stock_service.py,sha256=GCp6hlvO-SuH1oIpEsYZwEnGUOa6fXb2D7CqAUYXKQA,1993
13
15
  mns_scheduler/company_info/remark/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
@@ -31,6 +33,8 @@ mns_scheduler/db/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,
31
33
  mns_scheduler/db/col_move_service.py,sha256=P6_n-U4ebY0JRb1DqDSYBnl79RxLgD3TqsdRD_3TA4E,4133
32
34
  mns_scheduler/db/db_status.py,sha256=e5eW5ZSm5J7tHvmxxhFmFdbZb2_oB_SAcdcFqc4KDmw,733
33
35
  mns_scheduler/db/real_time_task_check.py,sha256=R8-ZmS7wzC_zZPGgDwv6kx2v25hBrYOTvXlU3cP2BVQ,3167
36
+ mns_scheduler/db/script/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
37
+ mns_scheduler/db/script/col_move_script.py,sha256=0WNv0xbnPPKTME2_WMEPSGNT0DUWC7hS4mJ2VeNgc08,1163
34
38
  mns_scheduler/debt/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
35
39
  mns_scheduler/debt/kzz_bond_info_sync.py,sha256=3o0Y4FBxP3AOXwf7Z7jVO1N_DcqxeOVqcgMM3y7E4uo,1336
36
40
  mns_scheduler/dt/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
@@ -95,7 +99,7 @@ mns_scheduler/risk/test/fix_blask_list.py,sha256=jjLhhIWH1L4CgNp2jQ_HAHbC3wVgeX1
95
99
  mns_scheduler/risk/transactions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
96
100
  mns_scheduler/risk/transactions/transactions_check_api.py,sha256=_VOiUyIPyTGbcrbuxzJnp1KiLdKBJsRS584f-jqHXA0,6682
97
101
  mns_scheduler/self_choose/__init__.py,sha256=wEg73KlZo-dU0yKGwpA1C2y6LZm4IBb94tNda1tqLeg,163
98
- mns_scheduler/self_choose/ths_self_choose_service.py,sha256=lRncu8wXYH9EJkZLq1Kd2PFSy3tyS__hPDZFMhT66tw,5043
102
+ mns_scheduler/self_choose/ths_self_choose_service.py,sha256=f2mepnzm436vAX4MP2QEwxwFbtLmb8VPVwxtzTq0Qyg,5253
99
103
  mns_scheduler/trade/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
100
104
  mns_scheduler/trade/auto_ipo_buy_api.py,sha256=jVe5ZiXwzkDy_j_4X4rUamSzJpmzhV16lNKwbeWgpQw,386
101
105
  mns_scheduler/trade/auto_sell_service_api.py,sha256=b-4xmW6W6cd6dMuLPD7ZJu3tUtchMcUG-p7wOMm_RRY,4640
@@ -125,7 +129,7 @@ mns_scheduler/zt/zt_pool/em_zt_pool_sync_api.py,sha256=x3-NCugHoY5IuX2s1UOUMl8DZ
125
129
  mns_scheduler/zt/zt_pool/ths_zt_pool_sync_api.py,sha256=LJVGqJyLn04oC-Xp59RVE1IOz7lx6ao78bw9l67sKBM,10382
126
130
  mns_scheduler/zz_task/__init__.py,sha256=QWBdZwBCvQw8aS4hnL9_pg3U3ZiNLUXzlImyy9WhUcI,163
127
131
  mns_scheduler/zz_task/data_sync_task.py,sha256=OK6ynbUuMehQmPgIbrn3lZmY9_TDj1IUgaCHp0H3tgE,19613
128
- mns_scheduler-1.1.5.0.dist-info/METADATA,sha256=dAi_64P7ukLAtBfg4Ad-3YNU40343qOWsOwpIVrJ6LE,64
129
- mns_scheduler-1.1.5.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
130
- mns_scheduler-1.1.5.0.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
131
- mns_scheduler-1.1.5.0.dist-info/RECORD,,
132
+ mns_scheduler-1.1.5.2.dist-info/METADATA,sha256=HYdqpSzcqGZ4gVUwt-9bCbLAXgv3KylliN_XGr6gLHE,64
133
+ mns_scheduler-1.1.5.2.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
134
+ mns_scheduler-1.1.5.2.dist-info/top_level.txt,sha256=PXQDFBGR1pWmsUbH5yiLAh71P5HZODTRED0zJ8CCgOc,14
135
+ mns_scheduler-1.1.5.2.dist-info/RECORD,,