{"status":"running","service":"AI Stock Prediction","version":"1.0.0","scheduler":"active","scheduled_jobs":[{"id":"news_ingestion_interval","name":"News & Sentiment Ingestion (5 min)","next_run":"2026-07-07 10:02:06.035812+00:00"},{"id":"event_retrain_check_30m","name":"Macro Event Retrain Check (30 min)","next_run":"2026-07-07 10:07:06.035696+00:00"},{"id":"intraday_prediction_4h_utc","name":"4H LSTM Prediction — Crypto (UTC)","next_run":"2026-07-07 12:00:00+00:00"},{"id":"daily_prediction_1330_utc","name":"Daily LSTM Prediction — Macro/Forex (UTC)","next_run":"2026-07-07 13:30:00+00:00"},{"id":"cache_clear_2105_utc","name":"Post-Market Cache Clear (UTC)","next_run":"2026-07-07 21:05:00+00:00"},{"id":"reconcile_2130_utc","name":"Primary Reconcile (UTC)","next_run":"2026-07-07 21:30:00+00:00"},{"id":"reconcile_2230_utc","name":"Winter EST Reconcile (UTC)","next_run":"2026-07-07 22:30:00+00:00"},{"id":"reconcile_0500_utc","name":"Morning Safety Reconcile (UTC)","next_run":"2026-07-08 05:00:00+00:00"},{"id":"weekly_retrain_sun_2300_utc","name":"Weekly Deep Learning Retrain — All Symbols (UTC)","next_run":"2026-07-12 23:00:00+00:00"}],"endpoints":["GET  /api/{symbol}/predict   → LSTM prediction (cached 2 min)","POST /api/{symbol}/refresh   → Force clear cache & re-run LSTM","GET  /api/{symbol}/history   → Prediction audit log","GET  /api/{symbol}/price     → Live price from Twelve Data","GET  /sentiment/{symbol}     → FinBERT aggregate (sentiment_summary)","GET  /health                 → Dependency health check"]}