fix: Correct timestamp handling in stock details query

This commit is contained in:
Bobby (aider) 2025-02-09 00:28:35 -08:00
parent d4e0bc2c92
commit c03a361096

View File

@ -134,10 +134,10 @@ def view_stock_details(ticker: str, interval: str, start_date: datetime, end_dat
"1hour": 60 "1hour": 60
} }
minutes = minutes_map[interval] minutes = minutes_map[interval]
query = f""" query = f"""
SELECT SELECT
fromUnixTimestamp(intDiv({date_col}, 300) * 300) as interval_start, toDateTime(intDiv({date_col}/1000000000, {minutes}*60) * ({minutes}*60)) as interval_start,
min(open) as open, min(open) as open,
max(high) as high, max(high) as high,
min(low) as low, min(low) as low,
@ -145,7 +145,7 @@ def view_stock_details(ticker: str, interval: str, start_date: datetime, end_dat
sum(volume) as volume sum(volume) as volume
FROM stock_db.{table} FROM stock_db.{table}
WHERE ticker = '{ticker}' WHERE ticker = '{ticker}'
AND {date_col} BETWEEN toUnixTimestamp('{start_date}') AND toUnixTimestamp('{today}') AND {date_col} BETWEEN {int(start_date.timestamp() * 1e9)} AND {int(today.timestamp() * 1e9)}
GROUP BY interval_start GROUP BY interval_start
ORDER BY interval_start ASC ORDER BY interval_start ASC
""" """