fix: Correct price and volume filtering in get_qualified_stocks query
This commit is contained in:
parent
fcc8203aae
commit
b8eaafafd6
@ -68,6 +68,8 @@ def get_qualified_stocks(start_date: datetime, end_date: datetime, min_price: fl
|
|||||||
FROM stock_db.stock_prices
|
FROM stock_db.stock_prices
|
||||||
WHERE window_start BETWEEN {start_ts} AND {end_ts}
|
WHERE window_start BETWEEN {start_ts} AND {end_ts}
|
||||||
AND toDateTime(window_start/1000000000) <= now()
|
AND toDateTime(window_start/1000000000) <= now()
|
||||||
|
AND close BETWEEN {min_price} AND {max_price}
|
||||||
|
AND volume >= {min_volume}
|
||||||
),
|
),
|
||||||
daily_data AS (
|
daily_data AS (
|
||||||
SELECT
|
SELECT
|
||||||
@ -77,8 +79,6 @@ def get_qualified_stocks(start_date: datetime, end_date: datetime, min_price: fl
|
|||||||
sum(volume) as daily_volume
|
sum(volume) as daily_volume
|
||||||
FROM filtered_data
|
FROM filtered_data
|
||||||
GROUP BY ticker, toDate(trade_date)
|
GROUP BY ticker, toDate(trade_date)
|
||||||
HAVING daily_close BETWEEN {min_price} AND {max_price}
|
|
||||||
AND daily_volume >= {min_volume}
|
|
||||||
),
|
),
|
||||||
latest_data AS (
|
latest_data AS (
|
||||||
SELECT
|
SELECT
|
||||||
@ -88,6 +88,7 @@ def get_qualified_stocks(start_date: datetime, end_date: datetime, min_price: fl
|
|||||||
max(toUnixTimestamp(date)) as last_update
|
max(toUnixTimestamp(date)) as last_update
|
||||||
FROM daily_data
|
FROM daily_data
|
||||||
GROUP BY ticker
|
GROUP BY ticker
|
||||||
|
HAVING last_close BETWEEN {min_price} AND {max_price}
|
||||||
)
|
)
|
||||||
SELECT
|
SELECT
|
||||||
ticker,
|
ticker,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user