Add stock market calendar

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2023-09-05 11:31:47 +03:00
parent c8df507d47
commit 548a8e42d5
21 changed files with 417 additions and 73 deletions

View File

@@ -36,4 +36,26 @@ psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
);
SELECT create_hypertable('bars', 'timestamp', 'asset_symbol', 2);
CREATE TABLE calendar (
date DATE NOT NULL PRIMARY KEY,
open TIME NOT NULL,
close TIME NOT NULL
);
CREATE VIEW bars_missing AS
WITH time_series AS (
SELECT
asset_symbol,
generate_series(MIN(timestamp), NOW(), interval '1 minute')::TIMESTAMPTZ AS expected_time
FROM bars
GROUP BY asset_symbol
)
SELECT
ts.asset_symbol,
ts.expected_time AS missing_time
FROM time_series ts
LEFT JOIN bars b
ON ts.asset_symbol = b.asset_symbol AND ts.expected_time = b.timestamp
WHERE b.timestamp IS NULL;
EOSQL