seawolf2357 commited on
Commit
11bce52
ยท
verified ยท
1 Parent(s): d9f7f3e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -8
app.py CHANGED
@@ -76,24 +76,36 @@ def generate(prompt, history=[], temperature=0.1, max_new_tokens=10000, top_p=0.
76
  except Exception as e:
77
  yield f"Error: {str(e)}\nTotal tokens used: {total_tokens_used}"
78
 
 
 
 
 
 
 
 
 
 
 
 
79
  def process_financial_data(ticker):
 
 
 
 
80
  try:
81
  stock = yf.Ticker(ticker)
82
  real_time_price = stock.history(period="1d") # ์‹ค์‹œ๊ฐ„ ์ฃผ์‹ ๊ฐ€๊ฒฉ
83
- stock_info = stock.info # ์ฃผ์‹ ์ •๋ณด
84
- financial_data = stock.history(period="max") # ์ฃผ์‹ ๋ฐ์ดํ„ฐ ๋‹ค์šด๋กœ๋“œ ๋ฐ ๋ถ„์„
85
  financials = stock.financials # ์žฌ๋ฌด์ œํ‘œ ๋‹ค์šด๋กœ๋“œ ๋ฐ ๋ถ„์„
86
- news_links = stock.news # ์ตœ์‹  ๋‰ด์Šค ์กฐํšŒ
87
-
88
  return f"""**์‹ค์‹œ๊ฐ„ ์ฃผ์‹ ๊ฐ€๊ฒฉ**: {real_time_price.tail(1)}
89
- **๊ธฐ๋ณธ ์ฃผ์‹ ์ •๋ณด**: {stock_info.get('longName', '์ •๋ณด ์—†์Œ')} ({stock_info.get('sector', '์ •๋ณด ์—†์Œ')})
90
- **์žฌ๋ฌด ๋ฐ์ดํ„ฐ (์ตœ๊ทผ 5์ผ)**: {financial_data.tail(5)}
91
  **์žฌ๋ฌด์ œํ‘œ**: {financials.head()}
92
- **์ตœ์‹  ๋‰ด์Šค ๋งํฌ**: {', '.join([news['title'] + ": " + news['link'] for news in news_links[:3]])}
93
  """
94
  except Exception as e:
95
- return f"Error: {str(e)} - ์ฃผ์‹ ํ‹ฐ์ปค๋ฅผ ํ™•์ธํ•˜์„ธ์š”. ์š”์ฒญํ•˜์‹  ์ฃผ์‹ ํ‹ฐ์ปค '{ticker}'๋Š” ์ฐพ์„ ์ˆ˜ ์—†๊ฑฐ๋‚˜ ์ •๋ณด๋ฅผ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค."
96
 
 
 
 
 
97
 
98
 
99
  mychatbot = gr.Chatbot(
 
76
  except Exception as e:
77
  yield f"Error: {str(e)}\nTotal tokens used: {total_tokens_used}"
78
 
79
+ def validate_ticker(ticker):
80
+ stock = yf.Ticker(ticker)
81
+ # Yahoo Finance์—์„œ ๊ธฐ๋ณธ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์™€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
82
+ try:
83
+ info = stock.info
84
+ if not info:
85
+ raise ValueError("์œ ํšจํ•˜์ง€ ์•Š์€ ํ‹ฐ์ปค์ž…๋‹ˆ๋‹ค.")
86
+ except Exception as e:
87
+ return False, str(e)
88
+ return True, "ํ‹ฐ์ปค ์œ ํšจ์„ฑ ๊ฒ€์ฆ ์„ฑ๊ณต."
89
+
90
  def process_financial_data(ticker):
91
+ valid, message = validate_ticker(ticker)
92
+ if not valid:
93
+ return f"Error: {message} - ์ฃผ์‹ ํ‹ฐ์ปค '{ticker}'๋ฅผ ํ™•์ธํ•˜์„ธ์š”."
94
+
95
  try:
96
  stock = yf.Ticker(ticker)
97
  real_time_price = stock.history(period="1d") # ์‹ค์‹œ๊ฐ„ ์ฃผ์‹ ๊ฐ€๊ฒฉ
 
 
98
  financials = stock.financials # ์žฌ๋ฌด์ œํ‘œ ๋‹ค์šด๋กœ๋“œ ๋ฐ ๋ถ„์„
 
 
99
  return f"""**์‹ค์‹œ๊ฐ„ ์ฃผ์‹ ๊ฐ€๊ฒฉ**: {real_time_price.tail(1)}
 
 
100
  **์žฌ๋ฌด์ œํ‘œ**: {financials.head()}
 
101
  """
102
  except Exception as e:
103
+ return f"Error: {str(e)} - ์ฃผ์‹ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค."
104
 
105
+ # ์˜ˆ์‹œ ์‚ฌ์šฉ
106
+ ticker = "AAPL" # ์‚ฌ์šฉ์ž ์ž…๋ ฅ ํ‹ฐ์ปค
107
+ result = process_financial_data(ticker)
108
+ print(result)
109
 
110
 
111
  mychatbot = gr.Chatbot(