from pathlib import Path from trading_bot.models.prediction import FEATURE_COLUMNS, predict_latest_probability def test_predict_latest_probability_returns_probability_between_zero_and_one() -> None: result = predict_latest_probability( model_path=Path("notebooks/models/spy_xgb_v1.json"), metadata_path=Path("notebooks/models/spy_xgb_v1_meta.json"), raw_data_dir=Path("data/ibkr/daily"), ) assert set(result.feature_columns).issubset(FEATURE_COLUMNS) assert 0.0 <= result.probability <= 1.0 assert result.probability > 0.0