KYTHY commited on
Commit
d66e5b8
·
verified ·
1 Parent(s): 2ea87df

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -9
app.py CHANGED
@@ -118,16 +118,12 @@ def fetch_financial_news(keyword):
118
 
119
 
120
  # --------------------------
121
- # (*** ส่วนที่แก้ไข ***)
122
  # ดึงราคาหุ้นย้อนหลัง (แก้ไขให้ตรงกับช่วงข่าว)
123
  # --------------------------
124
  @st.cache_data(ttl=3600)
125
  def fetch_stock_price(symbol):
126
  try:
127
- # --- (เริ่มการแก้ไข) ---
128
  # ดึงข้อมูลย้อนหลัง 8 วัน (เพื่อให้ครอบคลุมช่วงข่าว 7 วัน)
129
- # เราใช้ start/end ที่ชัดเจน แทน period="14d"
130
- # เพื่อให้แน่ใจว่าช่วงเวลาตรงกับข่าวที่เพิ่งดึงมา
131
  end_date = datetime.now()
132
  start_date = end_date - timedelta(days=8)
133
 
@@ -135,7 +131,6 @@ def fetch_stock_price(symbol):
135
  start=start_date.strftime('%Y-%m-%d'),
136
  end=end_date.strftime('%Y-%m-%d'),
137
  interval="1d")
138
- # --- (สิ้นสุดการแก้ไข) ---
139
 
140
  if df.empty:
141
  st.warning("ไม่พบข้อมูลราคาหุ้นในช่วง 8 วันที่ผ่านมา")
@@ -151,7 +146,7 @@ def fetch_stock_price(symbol):
151
 
152
 
153
  # --------------------------
154
- # MAIN APP (เหมือนเดิมทุกประการ)
155
  # --------------------------
156
  def main():
157
  st.title("📰 SentimentSync NewsAI")
@@ -211,7 +206,7 @@ def main():
211
  future_dates = [df_sorted["date"].max() + timedelta(days=i) for i in range(1, future_days + 1)]
212
  future_preds = model.predict(future_timestamps.reshape(-1, 1))
213
 
214
- # ดึงราคาหุ้น (นี่จะเรียกใช้ฟังก์ชันที่แก้ไขแล้ว)
215
  _, symbol = resolve_company_symbol(keyword)
216
  stock_df = fetch_stock_price(symbol)
217
 
@@ -229,13 +224,16 @@ def main():
229
  mode="lines+markers", name="Predicted Sentiment (7-day Forecast)",
230
  line=dict(color="orange", dash="dash")
231
  ))
232
- # Stock price (ตอนนี้จะแสดงผลตรงช่วงเวลาแล้ว)
 
233
  if not stock_df.empty:
234
- fig.add_trac(go.Scatter(
 
235
  x=stock_df["date"], y=stock_df["price"],
236
  mode="lines+markers", name=f"{symbol} Stock Price",
237
  line=dict(color="green"), yaxis="y2"
238
  ))
 
239
 
240
  fig.update_layout(
241
  title=f"แนวโน้มและพยากรณ์อารมณ์ข่าว & ราคาหุ้น '{keyword}'",
 
118
 
119
 
120
  # --------------------------
 
121
  # ดึงราคาหุ้นย้อนหลัง (แก้ไขให้ตรงกับช่วงข่าว)
122
  # --------------------------
123
  @st.cache_data(ttl=3600)
124
  def fetch_stock_price(symbol):
125
  try:
 
126
  # ดึงข้อมูลย้อนหลัง 8 วัน (เพื่อให้ครอบคลุมช่วงข่าว 7 วัน)
 
 
127
  end_date = datetime.now()
128
  start_date = end_date - timedelta(days=8)
129
 
 
131
  start=start_date.strftime('%Y-%m-%d'),
132
  end=end_date.strftime('%Y-%m-%d'),
133
  interval="1d")
 
134
 
135
  if df.empty:
136
  st.warning("ไม่พบข้อมูลราคาหุ้นในช่วง 8 วันที่ผ่านมา")
 
146
 
147
 
148
  # --------------------------
149
+ # MAIN APP
150
  # --------------------------
151
  def main():
152
  st.title("📰 SentimentSync NewsAI")
 
206
  future_dates = [df_sorted["date"].max() + timedelta(days=i) for i in range(1, future_days + 1)]
207
  future_preds = model.predict(future_timestamps.reshape(-1, 1))
208
 
209
+ # ดึงราคาหุ้น
210
  _, symbol = resolve_company_symbol(keyword)
211
  stock_df = fetch_stock_price(symbol)
212
 
 
224
  mode="lines+markers", name="Predicted Sentiment (7-day Forecast)",
225
  line=dict(color="orange", dash="dash")
226
  ))
227
+
228
+ # Stock price
229
  if not stock_df.empty:
230
+ # ----- (นี่คือบรรทัดที่แก้ไข) -----
231
+ fig.add_trace(go.Scatter(
232
  x=stock_df["date"], y=stock_df["price"],
233
  mode="lines+markers", name=f"{symbol} Stock Price",
234
  line=dict(color="green"), yaxis="y2"
235
  ))
236
+ # --------------------------------
237
 
238
  fig.update_layout(
239
  title=f"แนวโน้มและพยากรณ์อารมณ์ข่าว & ราคาหุ้น '{keyword}'",