{"note":"scheduled","recent_runs":[{"id":94,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260415_090002.json","run_time":"2026-04-15T09:00:02.897909+00:00","status":"completed"},{"id":93,"note":"scheduled","report_path":"/root/projects/stock-insight-automation/data/reports/2026/04/stock_insights_20260414_210002.json","run_time":"2026-04-14T21:00:02.409318+00:00","status":"completed"},{"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"}],"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":"NVDA"},{"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":"META"},{"rationale":"Price above 20-day average; 20-day momentum is positive; Latest daily change is positive","score":2.5,"ticker":"QQQ"}],"run_id":94,"run_time_utc":"2026-04-15T09:00:02.897909+00:00","snapshot":[{"change_pct":-0.14275679681298542,"close":258.8299865722656,"high":261.92999267578125,"low":257.19000244140625,"momentum20":1.8093816316059108,"momentum50":-4.140595825711757,"open":259.25,"previous_close":259.20001220703125,"rationale":["Price above 20-day average","20-day momentum is positive"],"score":2.0,"sma20":254.03949966430665,"sma50":260.8827996826172,"ticker":"AAPL","volume":48214600.0},{"change_pct":3.8059130876826672,"close":249.02000427246094,"high":252.17999267578125,"low":241.77999877929688,"momentum20":15.715617009210646,"momentum50":2.4942366608223576,"open":241.77999877929688,"previous_close":239.88999938964844,"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":215.67399978637695,"sma50":213.5602005004883,"ticker":"AMZN","volume":72499800.0},{"change_pct":3.61022258618027,"close":332.9100036621094,"high":333.2900085449219,"low":323.75,"momentum20":7.072555411260462,"momentum50":-3.1365470926477457,"open":324.7900085449219,"previous_close":321.30999755859375,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":301.6184997558594,"sma50":307.9045983886719,"ticker":"GOOGL","volume":27604400.0},{"change_pct":4.40640468481571,"close":662.489990234375,"high":666.260009765625,"low":639.3699951171875,"momentum20":6.396752450409782,"momentum50":-6.21735034609573,"open":643.219970703125,"previous_close":634.530029296875,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":594.0894958496094,"sma50":630.452197265625,"ticker":"META","volume":17696300.0},{"change_pct":2.273848204959478,"close":393.1099853515625,"high":394.69000244140625,"low":386.5199890136719,"momentum20":-1.5773311266075618,"momentum50":-7.147414817918096,"open":387.9200134277344,"previous_close":384.3699951171875,"rationale":["Price above 20-day average","Latest daily change is positive"],"score":1.5,"sma20":376.22449798583983,"sma50":392.1575988769531,"ticker":"MSFT","volume":37335000.0},{"change_pct":3.8032840531909575,"close":196.50999450683594,"high":196.50999450683594,"low":190.77000427246094,"momentum20":8.014072675217342,"momentum50":5.872525112139071,"open":190.83999633789062,"previous_close":189.30999755859375,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":178.53799896240236,"sma50":182.1213995361328,"ticker":"NVDA","volume":160691000.0},{"change_pct":1.8157016912369932,"close":628.5999755859375,"high":628.5999755859375,"low":620.0999755859375,"momentum20":4.191871198833819,"momentum50":0.3928771329015257,"open":620.219970703125,"previous_close":617.3900146484375,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":591.2320037841797,"sma50":600.5342004394531,"ticker":"QQQ","volume":49690400.0},{"change_pct":1.2184880752370195,"close":694.4600219726562,"high":694.5800170898438,"low":687.6599731445312,"momentum20":3.528681811097001,"momentum50":-0.1366030411642627,"open":687.6900024414062,"previous_close":686.0999755859375,"rationale":["Price above 20-day average","20-day momentum is positive","Latest daily change is positive"],"score":2.5,"sma20":660.6309997558594,"sma50":674.1792004394531,"ticker":"SPY","volume":63310200.0},{"change_pct":3.342602102735697,"close":364.20001220703125,"high":367.6300048828125,"low":354.7699890136719,"momentum20":-8.783524374891039,"momentum50":-13.65780462412105,"open":357.6700134277344,"previous_close":352.4200134277344,"rationale":["Latest daily change is positive"],"score":0.5,"sma20":367.3434997558594,"sma50":391.69879943847656,"ticker":"TSLA","volume":59782500.0}],"summary":{"advancing_tickers":8,"average_daily_change_pct":2.682,"declining_tickers":1,"tracked_tickers":9},"tickers":["AAPL","AMZN","GOOGL","META","MSFT","NVDA","QQQ","SPY","TSLA"]}
