Spaces:
Sleeping
Sleeping
| import os | |
| import json | |
| import numpy as np | |
| import pandas as pd | |
| import joblib | |
| from sklearn.metrics import mean_squared_error | |
| def main(): | |
| os.makedirs("metrics", exist_ok=True) # ✅ ADD THIS LINE | |
| df = pd.read_csv("data/processed/merged_features.csv") | |
| results = {} | |
| for ticker in df["Ticker"].unique(): | |
| df_t = df[df["Ticker"] == ticker].copy() | |
| if len(df_t) < 50: | |
| continue | |
| X = df_t[["return_lag1","volume_lag1","sentiment_lag1"]].values | |
| y = df_t["Return"].shift(-1).dropna().values | |
| X = X[:-1] | |
| model = joblib.load(f"models/{ticker}/rf.joblib") | |
| preds = model.predict(X) | |
| rmse = float(np.sqrt(mean_squared_error(y, preds))) | |
| results[ticker] = {"rmse": rmse} | |
| with open("metrics/evaluation.json", "w") as f: | |
| json.dump(results, f, indent=4) | |
| print("Saved metrics/evaluation.json") | |
| if __name__ == "__main__": | |
| main() | |