import pandas as pd
from pathlib import Path

BASE_PATH = Path(__file__).resolve().parents[2]
PRICES_PATH = BASE_PATH / "data" / "raw" / "prices" / "EURUSD"


def load_eurusd():
    csv_files = list(PRICES_PATH.glob("*.csv"))
    if not csv_files:
        raise FileNotFoundError(f"No CSV files found in {PRICES_PATH}")

    file_path = csv_files[0]
    print(f"Loading file: {file_path.name}")

    df = pd.read_csv(file_path)

    # Clean column names
    df.columns = [c.strip().lower() for c in df.columns]

    rename_map = {
        "time (eet)": "datetime",
        "open": "open",
        "high": "high",
        "low": "low",
        "close": "close",
        "volume": "volume",
    }

    df.rename(columns=rename_map, inplace=True)

    df["datetime"] = pd.to_datetime(df["datetime"], format="%Y.%m.%d %H:%M:%S")

    keep_cols = ["datetime", "open", "high", "low", "close", "volume"]
    df = df[keep_cols].copy()
    df = df.sort_values("datetime").reset_index(drop=True)

    return df


if __name__ == "__main__":
    prices = load_eurusd()
    print(prices.head())
    print(prices.tail())
    print(prices.columns.tolist())