{"note":"scheduled","recent_runs":[{"id":92,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260414_090021.json","run_time":"2026-04-14T09:00:21.675500+00:00","status":"completed"},{"id":91,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260413_210021.json","run_time":"2026-04-13T21:00:21.667989+00:00","status":"completed"},{"id":90,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260413_090004.json","run_time":"2026-04-13T09:00:04.115136+00:00","status":"completed"},{"id":89,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260412_210011.json","run_time":"2026-04-12T21:00:11.434779+00:00","status":"completed"},{"id":88,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260412_090021.json","run_time":"2026-04-12T09:00:21.345657+00:00","status":"completed"},{"id":87,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260411_210001.json","run_time":"2026-04-11T21:00:01.488482+00:00","status":"completed"},{"id":86,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260411_090001.json","run_time":"2026-04-11T09:00:01.360001+00:00","status":"completed"},{"id":85,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260410_210021.json","run_time":"2026-04-10T21:00:21.685752+00:00","status":"completed"},{"id":84,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260410_090001.json","run_time":"2026-04-10T09:00:01.634607+00:00","status":"completed"},{"id":83,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260409_210015.json","run_time":"2026-04-09T21:00:15.907286+00:00","status":"completed"}],"recommendations":[{"rationale":"Price above 20-day average; Short-term trend stronger than long-term; 20-day momentum is positive; Latest daily change is positive","score":3.5,"ticker":"AMZN"},{"rationale":"Price above 20-day average; 20-day momentum is positive; Latest daily change is positive","score":2.5,"ticker":"GOOGL"},{"rationale":"Price above 20-day average; 20-day momentum is positive; Latest daily change is positive","score":2.5,"ticker":"NVDA"},{"rationale":"Price above 20-day average; 20-day momentum is positive; Latest daily change is positive","score":2.5,"ticker":"QQQ"},{"rationale":"Price above 20-day average; 20-day momentum is positive; Latest daily change is positive","score":2.5,"ticker":"SPY"}],"run_id":92,"run_time_utc":"2026-04-14T09:00:21.675500+00:00","snapshot":[{"change_pct":-0.4914000020385666,"close":259.20001220703125,"high":260.17999267578125,"low":256.6600036621094,"momentum20":2.52353638872842,"momentum50":-0.10790764892931737,"open":259.7300109863281,"previous_close":260.4800109863281,"rationale":["Price above 20-day average","20-day momentum is positive"],"score":2.0,"sma20":253.7390007019043,"sma50":260.89580017089844,"ticker":"AAPL","volume":35196600.0},{"change_pct":0.6334400855383194,"close":239.88999938964844,"high":240.0,"low":235.75,"momentum20":13.294603365537917,"momentum50":0.24655091114353933,"open":237.4499969482422,"previous_close":238.3800048828125,"rationale":["Price above 20-day average","Short-term trend stronger than long-term","20-day momentum is positive","Latest daily change is positive"],"score":3.5,"sma20":213.80999984741212,"sma50":213.3658004760742,"ticker":"AMZN","volume":42075000.0},{"change_pct":1.2829427088343601,"close":321.30999755859375,"high":321.6300048828125,"low":315.4700012207031,"momentum20":5.154470521613286,"momentum50":-4.9378705447947535,"open":317.1400146484375,"previous_close":317.239990234375,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":300.2509994506836,"sma50":308.0063983154297,"ticker":"GOOGL","volume":18829800.0},{"change_pct":0.7414415987556138,"close":634.530029296875,"high":635.0,"low":624.4000244140625,"momentum20":1.128379464834195,"momentum50":-11.44033087273203,"open":629.5,"previous_close":629.8599853515625,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":592.3374969482422,"sma50":631.5323974609375,"ticker":"META","volume":9488700.0},{"change_pct":3.6400895671633586,"close":384.3699951171875,"high":384.5400085449219,"low":371.0199890136719,"momentum20":-3.89549108996623,"momentum50":-10.671875366806328,"open":373.6099853515625,"previous_close":370.8699951171875,"rationale":["Price above 20-day average","Latest daily change is positive"],"score":1.5,"sma20":376.5664993286133,"sma50":392.9011993408203,"ticker":"MSFT","volume":35563300.0},{"change_pct":0.3604901967763291,"close":189.30999755859375,"high":189.66000366210938,"low":185.74000549316406,"momentum20":3.323870918740335,"momentum50":-0.9522352732291517,"open":186.02999877929688,"previous_close":188.6300048828125,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":177.8734992980957,"sma50":182.01379974365236,"ticker":"NVDA","volume":133242100.0},{"change_pct":1.0342525812865675,"close":617.3900146484375,"high":626.739990234375,"low":608.1099853515625,"momentum20":2.8332072399621655,"momentum50":-0.7204046672015019,"open":609.47998046875,"previous_close":611.0700073242188,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":589.8210052490234,"sma50":600.3996008300782,"ticker":"QQQ","volume":32781900.0},{"change_pct":0.9772397784351856,"close":686.0999755859375,"high":686.2999877929688,"low":676.5800170898438,"momentum20":2.5514469517911476,"momentum50":-0.8483020023575372,"open":677.4099731445312,"previous_close":679.4600219726562,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":659.3595001220704,"sma50":674.1293994140625,"ticker":"SPY","volume":54083800.0},{"change_pct":0.994412121884203,"close":352.4200134277344,"high":356.3500061035156,"low":348.57000732421875,"momentum20":-10.906053290808082,"momentum50":-18.119929734625906,"open":350.07000732421875,"previous_close":348.95001220703125,"rationale":["Latest daily change is positive"],"score":0.5,"sma20":368.9114990234375,"sma50":393.02299926757814,"ticker":"TSLA","volume":53399400.0}],"summary":{"advancing_tickers":8,"average_daily_change_pct":1.019,"declining_tickers":1,"tracked_tickers":9},"tickers":["AAPL","AMZN","GOOGL","META","MSFT","NVDA","QQQ","SPY","TSLA"]}
