joaco7172 commited on
Commit
df83754
Β·
verified Β·
1 Parent(s): 2e5d983

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -1
app.py CHANGED
@@ -132,7 +132,7 @@ def get_prompt_by_row(symbol, row):
132
  head = "From {} to {}, {}'s stock price {} from {:.2f} to {:.2f}. Company news during this period are listed below:\n\n".format(
133
  start_date, end_date, symbol, term, row['Start Price'], row['End Price'])
134
 
135
- news = row["News"]
136
  news_formatted = ["[Headline]: {}\n[Summary]: {}\n".format(
137
  n['headline'], n['summary']) for n in news if n['date'][:8] <= end_date.replace('-', '') and \
138
  not n['summary'].startswith("Looking for stock market analysis and research with proves results?")]
@@ -152,8 +152,13 @@ def sample_news(news, k=5):
152
 
153
 
154
  def latest_news(news, k=5):
 
 
 
 
155
  sorted_news = sorted(news, key=lambda x: x['date'], reverse=True)
156
  return sorted_news[:k]
 
157
 
158
 
159
  def get_current_basics(symbol, curday):
@@ -214,6 +219,7 @@ def get_all_prompts_online(symbol, data, curday, with_basics=True):
214
  return info, prompt
215
 
216
 
 
217
  def construct_prompt(ticker, curday, n_weeks, use_basics):
218
  try:
219
  steps = [n_weeks_before(curday, n) for n in range(n_weeks + 1)][::-1]
 
132
  head = "From {} to {}, {}'s stock price {} from {:.2f} to {:.2f}. Company news during this period are listed below:\n\n".format(
133
  start_date, end_date, symbol, term, row['Start Price'], row['End Price'])
134
 
135
+ news = row["News"] if isinstance(row["News"], list) else json.loads(row["News"])
136
  news_formatted = ["[Headline]: {}\n[Summary]: {}\n".format(
137
  n['headline'], n['summary']) for n in news if n['date'][:8] <= end_date.replace('-', '') and \
138
  not n['summary'].startswith("Looking for stock market analysis and research with proves results?")]
 
152
 
153
 
154
  def latest_news(news, k=5):
155
+ # Ensure news is a list of dictionaries
156
+ if not isinstance(news, list):
157
+ raise ValueError("News must be a list of dictionaries.")
158
+ # Sort news by date in descending order and select the latest k items
159
  sorted_news = sorted(news, key=lambda x: x['date'], reverse=True)
160
  return sorted_news[:k]
161
+
162
 
163
 
164
  def get_current_basics(symbol, curday):
 
219
  return info, prompt
220
 
221
 
222
+
223
  def construct_prompt(ticker, curday, n_weeks, use_basics):
224
  try:
225
  steps = [n_weeks_before(curday, n) for n in range(n_weeks + 1)][::-1]