﻿import sys, pandas as pd
from pathlib import Path
sys.path.insert(0, r"C:\Users\paul_\OneDrive\fx_macro_intraday\src")

# Check spot_lag_v3 end date
from features.spot_lag_v3 import get_model_ready_spot_lag_v3
df = get_model_ready_spot_lag_v3()
print(f"spot_lag_v3 end: {df['datetime'].max()}")
print(f"spot_lag_v3 start: {df['datetime'].min()}")

# Check EURUSD 15M price end
from ingestion.price_loader_15m import load_eurusd_15m
m15 = load_eurusd_15m()
print(f"EURUSD 15M end:  {m15['datetime'].max()}")
print(f"EURUSD 15M start: {m15['datetime'].min()}")

# Check USDJPY 15M end
proj = Path(r"C:\Users\paul_\OneDrive\fx_macro_intraday")
fpath = next(proj.rglob("USDJPY_15M*.csv"), None)
if fpath:
    uj = pd.read_csv(fpath)
    uj.columns = uj.columns.str.strip().str.lower()
    dt_col = next(c for c in uj.columns if "date" in c or "time" in c)
    uj[dt_col] = pd.to_datetime(uj[dt_col])
    print(f"USDJPY 15M end:  {uj[dt_col].max()}")
    print(f"USDJPY 15M start: {uj[dt_col].min()}")

# Check rate data end dates
RATES = proj / "data" / "raw" / "rates"
for fname in ["us2y.csv", "us10y.csv", "de2y.csv", "de10y.csv", "jp2y.csv"]:
    p = RATES / fname
    if p.exists():
        df = pd.read_csv(p)
        df.columns = [c.lower() for c in df.columns]
        df["date"] = pd.to_datetime(df["date"])
        print(f"{fname}: ends {df['date'].max().date()}, {len(df)} rows")
