analyser_hj3415 2.9.12__py3-none-any.whl → 2.9.14__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
analyser_hj3415/cli.py CHANGED
@@ -207,7 +207,7 @@ def analyser_manager():
207
207
  elif args.type == 'prophet':
208
208
  if args.command == 'ranking':
209
209
  myprophet = tsa.MyProphet
210
- result = myprophet.ranking(refresh=args.refresh, expire_time_h=24)
210
+ result = myprophet.ranking(refresh=args.refresh, expire_time_h=48)
211
211
  print(result)
212
212
  mymongo.Logs.save('cli','INFO', 'run >> analyser prophet ranking')
213
213
 
@@ -215,13 +215,13 @@ def analyser_manager():
215
215
  mylstm = tsa.MyLSTM
216
216
  if args.command == 'caching':
217
217
  if args.top:
218
- mylstm.caching_based_on_prophet_ranking(refresh=args.refresh, expire_time_h=48, top=args.top)
218
+ mylstm.caching_based_on_prophet_ranking(refresh=args.refresh, expire_time_h=96, top=args.top)
219
219
  else:
220
- mylstm.caching_based_on_prophet_ranking(refresh=args.refresh, expire_time_h=48)
220
+ mylstm.caching_based_on_prophet_ranking(refresh=args.refresh, expire_time_h=96)
221
221
  mymongo.Logs.save('cli','INFO', f'run >> analyser lstm caching / top={args.top if args.top else 20}')
222
222
  elif args.command == 'get':
223
223
  assert utils.is_6digit(args.code), "code 인자는 6자리 숫자이어야 합니다."
224
- result = mylstm(args.code).get_final_predictions(refresh=args.refresh, expire_time_h=48)
224
+ result = mylstm(args.code).get_final_predictions(refresh=args.refresh, expire_time_h=96)
225
225
  mymongo.Logs.save('cli','INFO', f'run >> analyser lstm get {args.code}')
226
226
 
227
227
  elif args.type == 'setting':
analyser_hj3415/eval.py CHANGED
@@ -10,7 +10,7 @@ import logging
10
10
 
11
11
  eval_logger = helpers.setup_logger('eval_logger', logging.WARNING)
12
12
 
13
- expire_time = 3600 * 24
13
+ expire_time = 3600 * 48
14
14
 
15
15
  class Tools:
16
16
  @staticmethod
analyser_hj3415/tsa.py CHANGED
@@ -193,7 +193,7 @@ class MyProphet:
193
193
  Exception("to 인자가 맞지 않습니다.")
194
194
 
195
195
  @classmethod
196
- def ranking(cls, refresh = False, expire_time_h = 24) -> OrderedDict:
196
+ def ranking(cls, refresh = False, expire_time_h = 24, top='all') -> OrderedDict:
197
197
  """
198
198
  가장 최근 날짜의 랭킹 분석
199
199
  :param refresh:
@@ -209,7 +209,11 @@ class MyProphet:
209
209
  data = {}
210
210
  p = MyProphet('005930')
211
211
  for i, code in enumerate(myredis.Corps.list_all_codes()):
212
- p.code = code
212
+ try:
213
+ p.code = code
214
+ except ValueError:
215
+ tsa_logger.error(f'myprophet ranking error : {code}/{myredis.Corps(code, "c101").get_name()}')
216
+ continue
213
217
  last_real_data = p._preprocessing_for_prophet().iloc[-1]
214
218
  recent_price = last_real_data['y']
215
219
  recent_date = datetime.strftime(last_real_data['ds'], '%Y-%m-%d')
@@ -224,7 +228,14 @@ class MyProphet:
224
228
 
225
229
  data_dict = myredis.Base.fetch_and_cache_data(redis_name, refresh, fetch_ranking, timer=expire_time_h * 3600)
226
230
 
227
- return OrderedDict(sorted(data_dict.items(), key=lambda item: item[1], reverse=True))
231
+ ranking = OrderedDict(sorted(data_dict.items(), key=lambda item: item[1], reverse=True))
232
+ if top == 'all':
233
+ return ranking
234
+ else:
235
+ if isinstance(top, int):
236
+ return OrderedDict(list(ranking.items())[:top])
237
+ else:
238
+ raise ValueError("top 인자는 int 형이어야 합니다.")
228
239
 
229
240
  @dataclass
230
241
  class LSTMData:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: analyser_hj3415
3
- Version: 2.9.12
3
+ Version: 2.9.14
4
4
  Summary: Stock analyser and database processing programs
5
5
  Requires-Python: >=3.6
6
6
  Description-Content-Type: text/markdown
@@ -1,13 +1,13 @@
1
1
  analyser_hj3415/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- analyser_hj3415/cli.py,sha256=yBAg-TFLZHzkP75WgF2feaACLJNr4EywvCMVjgtMV24,12540
3
- analyser_hj3415/eval.py,sha256=ky6n0R6HNXxunIoGUC7CNxLcXp4x62CMmO6t4fLPbvQ,38811
4
- analyser_hj3415/tsa.py,sha256=8JSAdLLApcRDIjrTo8pveHliBUObzpGWlq-yxZNsIZw,26984
2
+ analyser_hj3415/cli.py,sha256=a4oUwfPFEdd3r2Fq2EMHBITcp6lbXUjZvVWvCHIvCUQ,12540
3
+ analyser_hj3415/eval.py,sha256=eNrcbpVyj7SZJevWqatlj_gJ2EQTmLZAz2nPG5qNv6k,38811
4
+ analyser_hj3415/tsa.py,sha256=fc1jd4b-04Xm77i2800QOV8xw6AWJsDSARwOTQJa1zI,27465
5
5
  analyser_hj3415/workroom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  analyser_hj3415/workroom/mysklearn.py,sha256=wJXKz5MqqTzADdG2mqRMMzc_G9RzwYjj5_j4gyOopxQ,2030
7
7
  analyser_hj3415/workroom/mysklearn2.py,sha256=1lIy6EWEQHkOzDS-av8U0zQH6DuCLKWMI73dnJx5KRs,1495
8
8
  analyser_hj3415/workroom/score.py,sha256=P6nHBJYmyhigGtT4qna4BmNtvt4B93b7SKyzdstJK24,17376
9
9
  analyser_hj3415/workroom/trash.py,sha256=zF-W0piqkGr66UP6-iybo9EXh2gO0RP6R1FnIpsGkl8,12262
10
- analyser_hj3415-2.9.12.dist-info/entry_points.txt,sha256=ZfjPnJuH8SzvhE9vftIPMBIofsc65IAWYOhqOC_L5ck,65
11
- analyser_hj3415-2.9.12.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
12
- analyser_hj3415-2.9.12.dist-info/METADATA,sha256=oZY7kXpsP6NVL_ZdxqDZhNz6Sskm5WlxpYPhl30yhNQ,6777
13
- analyser_hj3415-2.9.12.dist-info/RECORD,,
10
+ analyser_hj3415-2.9.14.dist-info/entry_points.txt,sha256=ZfjPnJuH8SzvhE9vftIPMBIofsc65IAWYOhqOC_L5ck,65
11
+ analyser_hj3415-2.9.14.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
12
+ analyser_hj3415-2.9.14.dist-info/METADATA,sha256=v4p_RcYiGXPYA-3qAkZMnMeAeoG03O4s_-DEfdXcd7Q,6777
13
+ analyser_hj3415-2.9.14.dist-info/RECORD,,