{"note":"scheduled","recent_runs":[{"id":110,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260423_090000.json","run_time":"2026-04-23T09:00:00.714174+00:00","status":"completed"},{"id":109,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260422_210001.json","run_time":"2026-04-22T21:00:01.302531+00:00","status":"completed"},{"id":108,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260422_090001.json","run_time":"2026-04-22T09:00:01.014862+00:00","status":"completed"},{"id":107,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260421_210001.json","run_time":"2026-04-21T21:00:01.010425+00:00","status":"completed"},{"id":106,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260421_090000.json","run_time":"2026-04-21T09:00:00.774225+00:00","status":"completed"},{"id":105,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260420_210000.json","run_time":"2026-04-20T21:00:00.775312+00:00","status":"completed"},{"id":104,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260420_090000.json","run_time":"2026-04-20T09:00:00.909889+00:00","status":"completed"},{"id":103,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260419_210000.json","run_time":"2026-04-19T21:00:00.962902+00:00","status":"completed"},{"id":102,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260419_090000.json","run_time":"2026-04-19T09:00:00.895409+00:00","status":"completed"},{"id":101,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260418_210001.json","run_time":"2026-04-18T21:00:01.034501+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; Short-term trend stronger than long-term; 20-day momentum is positive; Latest daily change is positive","score":3.5,"ticker":"GOOGL"},{"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":"NVDA"},{"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":"QQQ"},{"rationale":"Price above 20-day average; 20-day momentum is positive; Latest daily change is positive","score":2.5,"ticker":"MSFT"}],"run_id":110,"run_time_utc":"2026-04-23T09:00:00.714174+00:00","snapshot":[{"change_pct":2.6298980526972517,"close":273.1700134277344,"high":273.739990234375,"low":266.8699951171875,"momentum20":8.13475524810059,"momentum50":-0.18634144317996038,"open":267.82000732421875,"previous_close":266.1700134277344,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":259.4494995117187,"sma50":260.23919982910155,"ticker":"AAPL","volume":43195700.0},{"change_pct":2.1807838295304305,"close":255.36000061035156,"high":255.94000244140625,"low":250.3300018310547,"momentum20":20.61782273498236,"momentum50":23.386157869331647,"open":252.44000244140625,"previous_close":249.91000366210938,"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":227.96050033569335,"sma50":216.48040008544922,"ticker":"AMZN","volume":35978900.0},{"change_pct":2.115621474771637,"close":339.32000732421875,"high":339.82000732421875,"low":335.1700134277344,"momentum20":16.632872466457727,"momentum50":6.51014552894662,"open":337.0199890136719,"previous_close":332.2900085449219,"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":311.8489990234375,"sma50":308.48419860839846,"ticker":"GOOGL","volume":20266500.0},{"change_pct":0.8791255923035332,"close":674.719970703125,"high":678.3800048828125,"low":669.75,"momentum20":13.419279881822298,"momentum50":0.5963740718509802,"open":674.3599853515625,"previous_close":668.8400268554688,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":614.8789978027344,"sma50":629.961796875,"ticker":"META","volume":9199500.0},{"change_pct":2.0652606775728253,"close":432.9200134277344,"high":433.70001220703125,"low":423.6700134277344,"momentum20":16.677448107410942,"momentum50":4.7547668440575785,"open":426.19000244140625,"previous_close":424.1600036621094,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":386.8040008544922,"sma50":393.6023992919922,"ticker":"MSFT","volume":29279800.0},{"change_pct":1.3107839969903818,"close":202.5,"high":202.5,"low":199.0,"momentum20":13.331099339947183,"momentum50":7.4042681717300995,"open":200.99000549316406,"previous_close":199.8800048828125,"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":185.48349990844727,"sma50":184.43879943847656,"ticker":"NVDA","volume":107156200.0},{"change_pct":1.6730507621555708,"close":655.1099853515625,"high":655.3300170898438,"low":648.52001953125,"momentum20":11.44737797096267,"momentum50":7.136902340151896,"open":650.1500244140625,"previous_close":644.3300170898438,"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":607.616000366211,"sma50":604.6049975585937,"ticker":"QQQ","volume":37212800.0},{"change_pct":1.0126696838070721,"close":711.2100219726562,"high":711.4500122070312,"low":708.219970703125,"momentum20":8.28080966504261,"momentum50":2.7581961206360583,"open":709.1500244140625,"previous_close":704.0800170898438,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":674.9610015869141,"sma50":676.2278002929687,"ticker":"SPY","volume":42473500.0},{"change_pct":0.2820755395720384,"close":387.510009765625,"high":393.010009765625,"low":385.29998779296875,"momentum20":0.4041967895461296,"momentum50":-8.866203157748698,"open":387.57000732421875,"previous_close":386.4200134277344,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":369.5290023803711,"sma50":389.14840026855467,"ticker":"TSLA","volume":58136500.0}],"summary":{"advancing_tickers":9,"average_daily_change_pct":1.572,"declining_tickers":0,"tracked_tickers":9},"tickers":["AAPL","AMZN","GOOGL","META","MSFT","NVDA","QQQ","SPY","TSLA"]}
