analyser_hj3415 2.8.0__py2.py3-none-any.whl → 2.8.2__py2.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
@@ -41,6 +41,15 @@ def analyser_manager():
41
41
  parser = argparse.ArgumentParser(description="Analyser Commands")
42
42
  type_subparsers = parser.add_subparsers(dest='type', help='분석 타입')
43
43
 
44
+ # tsa 명령어 서브파서
45
+ tsa_parser = type_subparsers.add_parser('tsa', help='Time serial analysis 타입')
46
+ tsa_subparser = tsa_parser.add_subparsers(dest='command', help='tsa 관련된 명령')
47
+ # red - ranking 파서
48
+ ranking_parser = red_subparser.add_parser('ranking', help='red 랭킹 책정 및 레디스 저장')
49
+ ranking_parser.add_argument('-e', '--expect_earn', type=float, help='기대수익률 (실수 값 입력)')
50
+ ranking_parser.add_argument('-r', '--refresh', action='store_true', help='래디스 캐시를 사용하지 않고 강제로 재계산 할지')
51
+ ranking_parser.add_argument('-n', '--noti', action='store_true', help='작업 완료 후 메시지 전송 여부')
52
+
44
53
  # red 명령어 서브파서
45
54
  red_parser = type_subparsers.add_parser('red', help='red 타입')
46
55
  red_subparser = red_parser.add_subparsers(dest='command', help='red 관련된 명령')
analyser_hj3415/tsa.py CHANGED
@@ -105,12 +105,13 @@ class MyProphet:
105
105
 
106
106
  def get_yhat(self) -> dict:
107
107
  """
108
- 예측하는 첫째날의 예측 데이터를 반환한다.
108
+ 최근 날짜의 예측데이터를 반환한다.
109
109
  :return: {'ds':..., 'yhat':.., 'yhat_lower':.., 'yhat_upper':..,}
110
110
  """
111
111
  df = self.df_forecast
112
- analyser_logger.debug(df)
113
- yhat_dict = df.iloc[0][['ds', 'yhat_lower', 'yhat_upper', 'yhat']].to_dict()
112
+ last_real_date = self.df_real.iloc[-1]['ds']
113
+ analyser_logger.info(last_real_date)
114
+ yhat_dict = df[df['ds']==last_real_date].iloc[0][['ds', 'yhat_lower', 'yhat_upper', 'yhat']].to_dict()
114
115
  analyser_logger.info(yhat_dict)
115
116
  return yhat_dict
116
117
 
@@ -135,7 +136,7 @@ class MyProphet:
135
136
  go.Scatter(x=self.df_forecast['ds'], y=self.df_forecast['yhat_lower'], fill='tonexty', mode='lines', name='하한'))
136
137
 
137
138
  fig.update_layout(
138
- title=f'{self.code} {self.name} 주가 예측 그래프(prophet)',
139
+ # title=f'{self.code} {self.name} 주가 예측 그래프(prophet)',
139
140
  xaxis_title='일자',
140
141
  yaxis_title='주가(원)',
141
142
  xaxis = dict(
@@ -186,14 +187,16 @@ class MyProphet:
186
187
  p = MyProphet('005930')
187
188
  for i, code in enumerate(myredis.Corps.list_all_codes()):
188
189
  p.code = code
189
- recent_price = p._preprocessing_for_prophet().iloc[-1]['y']
190
+ last_real_data = p._preprocessing_for_prophet().iloc[-1]
191
+ recent_price = last_real_data['y']
192
+ recent_date = datetime.strftime(last_real_data['ds'], '%Y-%m-%d')
190
193
  yhat_dict = p.get_yhat()
191
194
  analyser_logger.info(f'recent_price: {recent_price}, yhat_dict: {yhat_dict}')
192
195
  yhat_lower = int(yhat_dict['yhat_lower'])
193
196
  if recent_price < yhat_lower:
194
197
  deviation = int(eval.Tools.cal_deviation(recent_price, yhat_lower))
195
198
  data[code] = deviation
196
- print(f"{i}.{p.code}/{p.name} 최근가격:{recent_price} 기대하한값:{yhat_lower} 편차:{deviation}")
199
+ print(f"{i}.{p.code}/{p.name} date: {recent_date} 가격:{recent_price} 기대하한값:{yhat_lower} 편차:{deviation}")
197
200
  return data
198
201
 
199
202
  data_dict = myredis.Base.fetch_and_cache_data(redis_name, refresh, fetch_ranking, timer=expire_time)
@@ -15,6 +15,8 @@ stock_data = yf.download('259960.KS', start='2020-01-01', end='2024-10-11')
15
15
  # 하이닉스 주식 데이터 가져오기 (KOSPI 상장)
16
16
  #stock_data = yf.download('000660.KS', start='2019-01-01', end='2024-10-11')
17
17
 
18
+ stock_data = yf.download('004490.KS', start='2020-01-01', end='2024-10-15')
19
+
18
20
 
19
21
  # 2. 필요한 열만 선택 (종가만 사용)
20
22
  data = stock_data['Close'].values.reshape(-1, 1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: analyser_hj3415
3
- Version: 2.8.0
3
+ Version: 2.8.2
4
4
  Summary: Stock analyser and database processing programs
5
5
  Author-email: Hyungjin Kim <hj3415@gmail.com>
6
6
  Description-Content-Type: text/markdown
@@ -1,16 +1,16 @@
1
1
  analyser_hj3415/.DS_Store,sha256=qr9-0FPn5CFKe6kEu8_dWCNhzQ0sN7bwQgffKsaJEEo,6148
2
2
  analyser_hj3415/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- analyser_hj3415/cli.py,sha256=7ys-b9H_tJAbLLi_XpjmEvDiyNHddpg9F1FNAACfWnE,11005
3
+ analyser_hj3415/cli.py,sha256=SnIcejcjbXR9rMA7zIm-hIXgbIIlFJkZPMUCvo_AgtQ,11725
4
4
  analyser_hj3415/eval.py,sha256=4F0GIknCogAhv_iTq8auLrmwW20u8kH0HY0fP4SaVa4,39099
5
- analyser_hj3415/tsa.py,sha256=4fg92xzEnp9kChvEzXbnAv6jGLuDK4zMaZjBoobp6I0,7649
5
+ analyser_hj3415/tsa.py,sha256=3mZ0hjUNt202MAytnjAYAoG1Cj9Zl6S_Rmz39_0iC98,7875
6
6
  analyser_hj3415/workroom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- analyser_hj3415/workroom/lstm.py,sha256=gF7i1NqPOhNysvkSQcC_mkOmvLk96jPxoqajZ-FFD8I,4078
7
+ analyser_hj3415/workroom/lstm.py,sha256=b0ICzIVeCODcH4tAkVyrHVJLXwf21wmkIambKPHaZMQ,4155
8
8
  analyser_hj3415/workroom/mysklearn.py,sha256=wJXKz5MqqTzADdG2mqRMMzc_G9RzwYjj5_j4gyOopxQ,2030
9
9
  analyser_hj3415/workroom/mysklearn2.py,sha256=1lIy6EWEQHkOzDS-av8U0zQH6DuCLKWMI73dnJx5KRs,1495
10
10
  analyser_hj3415/workroom/score.py,sha256=P6nHBJYmyhigGtT4qna4BmNtvt4B93b7SKyzdstJK24,17376
11
11
  analyser_hj3415/workroom/trash.py,sha256=zF-W0piqkGr66UP6-iybo9EXh2gO0RP6R1FnIpsGkl8,12262
12
- analyser_hj3415-2.8.0.dist-info/entry_points.txt,sha256=ZfjPnJuH8SzvhE9vftIPMBIofsc65IAWYOhqOC_L5ck,65
13
- analyser_hj3415-2.8.0.dist-info/LICENSE,sha256=QVKTp0dTnB5xG8RLgG17LwSWCKNEzYoVVM6KjoCPKc0,1079
14
- analyser_hj3415-2.8.0.dist-info/WHEEL,sha256=Sgu64hAMa6g5FdzHxXv9Xdse9yxpGGMeagVtPMWpJQY,99
15
- analyser_hj3415-2.8.0.dist-info/METADATA,sha256=4Zf9g7uum4fIQqqY1IF0_HRzQwT-JAJvAPdfRY0eW9Q,6607
16
- analyser_hj3415-2.8.0.dist-info/RECORD,,
12
+ analyser_hj3415-2.8.2.dist-info/entry_points.txt,sha256=ZfjPnJuH8SzvhE9vftIPMBIofsc65IAWYOhqOC_L5ck,65
13
+ analyser_hj3415-2.8.2.dist-info/LICENSE,sha256=QVKTp0dTnB5xG8RLgG17LwSWCKNEzYoVVM6KjoCPKc0,1079
14
+ analyser_hj3415-2.8.2.dist-info/WHEEL,sha256=Sgu64hAMa6g5FdzHxXv9Xdse9yxpGGMeagVtPMWpJQY,99
15
+ analyser_hj3415-2.8.2.dist-info/METADATA,sha256=czwwaazkGIYfdqgPoz6AOleeIQgsLuR_99Xd-8OtV0o,6607
16
+ analyser_hj3415-2.8.2.dist-info/RECORD,,