feat: macro series
This commit is contained in:
@@ -715,6 +715,29 @@ def init_db():
|
||||
except Exception:
|
||||
pass # Column already exists
|
||||
|
||||
# ── Macro Series Log ───────────────────────────────────────────────────────
|
||||
# One row per change: actual or forecast changed vs previous snapshot.
|
||||
# Allows tracking forecast revisions over time + actual vs consensus history.
|
||||
c.execute("""CREATE TABLE IF NOT EXISTS macro_series_log (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
series_id TEXT NOT NULL,
|
||||
event_name TEXT NOT NULL DEFAULT '',
|
||||
event_date TEXT NOT NULL,
|
||||
actual_value REAL,
|
||||
forecast_value REAL,
|
||||
previous_value REAL,
|
||||
currency TEXT DEFAULT '',
|
||||
impact TEXT DEFAULT '',
|
||||
logged_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
source TEXT DEFAULT 'calendar_sync',
|
||||
changed TEXT DEFAULT 'new'
|
||||
)""")
|
||||
try:
|
||||
c.execute("CREATE INDEX IF NOT EXISTS idx_msl_series ON macro_series_log(series_id, event_date)")
|
||||
c.execute("CREATE INDEX IF NOT EXISTS idx_msl_logged ON macro_series_log(logged_at DESC)")
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# ── Specialist Desks ───────────────────────────────────────────────────────
|
||||
c.execute("""CREATE TABLE IF NOT EXISTS specialist_reports (
|
||||
id TEXT PRIMARY KEY,
|
||||
|
||||
Reference in New Issue
Block a user