| { |
| "created_at": "2026-05-07T11:30:13.620502", |
| "tickers": [ |
| "SPY", |
| "QQQ", |
| "AAPL", |
| "MSFT", |
| "TSLA", |
| "NVDA", |
| "AMD", |
| "META", |
| "JPM", |
| "XOM" |
| ], |
| "forecast_horizon_days": 5, |
| "history_years": 15, |
| "feature_count": 66, |
| "features": [ |
| "close_lag_1", |
| "volume_lag_1", |
| "close_lag_2", |
| "volume_lag_2", |
| "close_lag_3", |
| "volume_lag_3", |
| "close_lag_5", |
| "volume_lag_5", |
| "close_lag_10", |
| "volume_lag_10", |
| "close_lag_20", |
| "volume_lag_20", |
| "return_1d", |
| "return_2d", |
| "return_3d", |
| "return_5d", |
| "return_10d", |
| "return_20d", |
| "sma_5", |
| "ema_5", |
| "price_to_sma_5", |
| "price_to_ema_5", |
| "sma_10", |
| "ema_10", |
| "price_to_sma_10", |
| "price_to_ema_10", |
| "sma_20", |
| "ema_20", |
| "price_to_sma_20", |
| "price_to_ema_20", |
| "sma_50", |
| "ema_50", |
| "price_to_sma_50", |
| "price_to_ema_50", |
| "rsi_14", |
| "macd", |
| "macd_signal", |
| "macd_hist", |
| "bb_middle", |
| "bb_std", |
| "bb_upper", |
| "bb_lower", |
| "bb_width", |
| "bb_position", |
| "atr_14", |
| "atr_pct", |
| "volatility_5", |
| "volatility_10", |
| "volatility_20", |
| "volume_sma_20", |
| "volume_ratio", |
| "obv", |
| "obv_ema_20", |
| "daily_range", |
| "daily_range_pct", |
| "upper_shadow", |
| "lower_shadow", |
| "body", |
| "high_low_ratio", |
| "volume_price_ratio", |
| "dayofweek", |
| "month", |
| "quarter", |
| "year", |
| "is_month_start", |
| "is_month_end" |
| ], |
| "aggregate": { |
| "mean_rmse": 0.04714254512125229, |
| "mean_r2": -0.011642625347288538, |
| "mean_directional_accuracy": 0.5683161685514271, |
| "mean_classification_accuracy": 0.48765633414108783 |
| }, |
| "per_ticker": [ |
| { |
| "ticker": "SPY", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.02258405498129791, |
| "mae": 0.015489606891181434, |
| "r2": -0.0014456491014669393, |
| "directional_accuracy": 0.6138933764135702 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.49789983844911145, |
| "mean_pred_proba": 0.5229997634887695 |
| }, |
| "top_features": [ |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_10", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_10", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "QQQ", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.027647329896099054, |
| "mae": 0.0202528876430223, |
| "r2": -0.0013446283390452507, |
| "directional_accuracy": 0.6064620355411955 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.4516962843295638, |
| "mean_pred_proba": 0.44377511739730835 |
| }, |
| "top_features": [ |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_10", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_10", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "AAPL", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.037949900394249565, |
| "mae": 0.02848060110522521, |
| "r2": -0.001883759887715275, |
| "directional_accuracy": 0.5773828756058158 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.46526655896607433, |
| "mean_pred_proba": 0.3982858955860138 |
| }, |
| "top_features": [ |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_10", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_10", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "MSFT", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.03338230145871437, |
| "mae": 0.02460364621836996, |
| "r2": -0.0017634296758328727, |
| "directional_accuracy": 0.5886914378029079 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.4898222940226171, |
| "mean_pred_proba": 0.4148150384426117 |
| }, |
| "top_features": [ |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_10", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_10", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "TSLA", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.08043075300075517, |
| "mae": 0.05903643965282488, |
| "r2": 0.003049126226984389, |
| "directional_accuracy": 0.5431340872374798 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.5124394184168013, |
| "mean_pred_proba": 0.38870567083358765 |
| }, |
| "top_features": [ |
| { |
| "feature": "return_20d", |
| "importance": 2.3221065998077393 |
| }, |
| { |
| "feature": "obv_ema_20", |
| "importance": 1.8002305030822754 |
| }, |
| { |
| "feature": "bb_width", |
| "importance": 1.5809487104415894 |
| }, |
| { |
| "feature": "macd_signal", |
| "importance": 1.4683542251586914 |
| }, |
| { |
| "feature": "volume_sma_20", |
| "importance": 1.4282184839248657 |
| }, |
| { |
| "feature": "close_lag_20", |
| "importance": 1.4218547344207764 |
| }, |
| { |
| "feature": "price_to_sma_50", |
| "importance": 1.3453361988067627 |
| }, |
| { |
| "feature": "bb_lower", |
| "importance": 1.039569616317749 |
| }, |
| { |
| "feature": "bb_position", |
| "importance": 1.0004820823669434 |
| }, |
| { |
| "feature": "month", |
| "importance": 0.9978708028793335 |
| } |
| ] |
| }, |
| { |
| "ticker": "NVDA", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.0629796865273556, |
| "mae": 0.046752108461442995, |
| "r2": -0.006990257854314175, |
| "directional_accuracy": 0.5912762520193862 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.4752827140549273, |
| "mean_pred_proba": 0.4138370156288147 |
| }, |
| "top_features": [ |
| { |
| "feature": "price_to_ema_20", |
| "importance": 0.11267860233783722 |
| }, |
| { |
| "feature": "price_to_ema_10", |
| "importance": 0.10398182272911072 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "AMD", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.08264027036392803, |
| "mae": 0.06240457589615701, |
| "r2": -0.10014641602044749, |
| "directional_accuracy": 0.4898222940226171 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.502746365105008, |
| "mean_pred_proba": 0.4997366964817047 |
| }, |
| "top_features": [ |
| { |
| "feature": "volume_sma_20", |
| "importance": 1.6253958940505981 |
| }, |
| { |
| "feature": "bb_std", |
| "importance": 1.5996568202972412 |
| }, |
| { |
| "feature": "bb_width", |
| "importance": 0.7092846632003784 |
| }, |
| { |
| "feature": "obv_ema_20", |
| "importance": 0.5368807315826416 |
| }, |
| { |
| "feature": "year", |
| "importance": 0.49854761362075806 |
| }, |
| { |
| "feature": "ema_50", |
| "importance": 0.42345595359802246 |
| }, |
| { |
| "feature": "sma_10", |
| "importance": 0.3844447731971741 |
| }, |
| { |
| "feature": "volume_price_ratio", |
| "importance": 0.37271618843078613 |
| }, |
| { |
| "feature": "bb_upper", |
| "importance": 0.3239809572696686 |
| }, |
| { |
| "feature": "atr_14", |
| "importance": 0.29528796672821045 |
| } |
| ] |
| }, |
| { |
| "ticker": "META", |
| "n_samples": 3457, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.05135977345262444, |
| "mae": 0.03550399560740792, |
| "r2": -0.0029538454689683746, |
| "directional_accuracy": 0.5645833333333333 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.5114583333333333, |
| "mean_pred_proba": 0.45935922861099243 |
| }, |
| "top_features": [ |
| { |
| "feature": "atr_14", |
| "importance": 1.1425180435180664 |
| }, |
| { |
| "feature": "sma_50", |
| "importance": 0.540405809879303 |
| }, |
| { |
| "feature": "atr_pct", |
| "importance": 0.2499609887599945 |
| }, |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "JPM", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.03553619067582355, |
| "mae": 0.025525398304969315, |
| "r2": -0.0017578911152462684, |
| "directional_accuracy": 0.5725363489499192 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.46332794830371565, |
| "mean_pred_proba": 0.44338667392730713 |
| }, |
| "top_features": [ |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_10", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_10", |
| "importance": 0.0 |
| } |
| ] |
| }, |
| { |
| "ticker": "XOM", |
| "n_samples": 3717, |
| "last_date": "2026-04-29 00:00:00", |
| "reg_metrics": { |
| "rmse": 0.03691519046167525, |
| "mae": 0.025952926462741707, |
| "r2": -0.0011895022368331176, |
| "directional_accuracy": 0.5353796445880452 |
| }, |
| "clf_metrics": { |
| "accuracy": 0.5066235864297254, |
| "mean_pred_proba": 0.5345469117164612 |
| }, |
| "top_features": [ |
| { |
| "feature": "close_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_1", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_2", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_3", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_5", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "close_lag_10", |
| "importance": 0.0 |
| }, |
| { |
| "feature": "volume_lag_10", |
| "importance": 0.0 |
| } |
| ] |
| } |
| ] |
| } |