{"ok":true,"security_id":69,"symbol":"SO","snapshot":{"security_id":69,"symbol":"SO","asset_type":"equity","sector_code":"utilities","industry":null,"exchange_code":null,"currency":"USD","data_mode":"demo","price":"3.350000","prev_close":"3.359300","chg_1d_pct":"-0.2770","volume":12647117,"rvol_30":"1.413","avg_volume_30d":9072085,"dollar_volume_avg":"28821719.9900","mcap":892844750,"wk52_high":"4.634700","wk52_low":"2.967000","pct_from_52wh":"-27.7200","dist_to_52wh_pct":"-27.7200","rsi14":"67.978","macd":"0.058000","macd_hist":"0.008500","adx14":"35.145","atr_pct":"2.3600","hv20":"13.2000","hv60":"15.5800","vol_regime":"low","bb_pctb":"0.7691","stoch_k":"88.999","above_sma20":1,"above_sma50":1,"above_sma200":0,"sma20":"3.240400","sma50":"3.165600","sma200":"3.698400","vwap":"3.350100","trend":"up","support":"3.215400","resistance":"3.354000","perf_1d":"-0.2800","perf_5d":"0.7400","perf_1m":"8.0900","perf_3m":"2.1300","perf_6m":"-13.2400","perf_12m":"-1.0300","rel_strength_3m":"-2.2200","rs_rank":null,"mom_persist":null,"bars":760,"beta":"0.3100","mdd_pct":"-34.6400","gap_risk":"0.3170","liq_days":null,"pe_ttm":"21.9550","pe_fwd":"21.9630","peg":null,"ps":"5.2340","pb":"4.5870","ev_ebitda":"15.1410","rev_g":"0.5750","eps_g":"-0.0430","gross_margin":"52.7330","op_margin":"26.1360","fcf_margin":"24.3660","roe":"20.8940","roic":"10.9010","debt_equity":"1.8410","net_debt_ebitda":null,"div_yield":"5.5210","payout":"35.4400","buyback_yield":"-0.8840","eps_surprise_pct":"2.7780","rev_surprise_pct":"1.6280","earnings_days_out":33,"earnings_date":"2026-12-10","consensus_score":"61.690","pct_analyst_buy":null,"pt_upside_pct":null,"sent_score":null,"sent_label":null,"sent_delta":"9.010","inst_ownership":"191.4720","inst_chg_pct":"-61.6500","inst_top_name":"Vanguard Index Group","insider_net_usd":-687054,"insider_trades_90d":1,"short_pct_float":"11.7360","score_total":"60.62","score_technical":"63.13","score_fundamental":"59.11","score_momentum":"51.91","score_sentiment":"58.44","score_institutional":"33.07","score_risk":"87.45","confidence":"54.00","risk_level":"low","stance":"constructive","cats":"income,defensive","catalysts":"Earnings report 2026-12-10 (as scheduled) · Street target implies 5%","risks":"Binary event: 2026-12-10","model_version":"score-1.0.0","priced_at":"2026-10-23 16:00:00","computed_at":"2026-10-25 04:13:59"},"quote":{"security_id":69,"last_price":"3.350000","bid":null,"ask":null,"prev_close":"3.359300","open":"3.334500","day_high":"3.374600","day_low":"3.325700","volume":12647117,"avg_volume_30d":9052830,"change_abs":"-0.009300","change_pct":"-0.2770","market_state":"closed","quote_ts":"2026-10-23 16:00:00","latency_ms":null,"is_realtime":0,"data_source":"synthetic_demo","data_mode":"demo","updated_at":"2026-10-25 04:13:58","price":"3.350000","as_of":"2026-10-23 16:00:00"},"score":{"id":1466,"security_id":69,"model_id":1,"scored_at":"2026-10-25 04:13:00","total_score":"60.62","technical":"63.13","fundamental":"59.11","momentum":"51.91","sentiment":"58.44","institutional":"33.07","risk":"87.45","components_json":"{\"components\":{\"technical\":{\"score\":63.13,\"label\":\"Positive\",\"complete\":true,\"factors\":[{\"key\":\"trend_structure\",\"score\":70,\"why\":\"Price vs 20\\/50\\/200-day moving averages: up\",\"w\":1.8},{\"key\":\"trend_strength_adx\",\"score\":77.32,\"why\":\"ADX(14) 35.1 \\u2014 trending\",\"w\":1},{\"key\":\"rsi_condition\",\"score\":68.01,\"why\":\"RSI(14) 68 \\u2014 constructive zone\",\"w\":1},{\"key\":\"macd_signal\",\"score\":62.51,\"why\":\"MACD(12,26,9) above, histogram 0.009\",\"w\":1},{\"key\":\"volume_confirmation\",\"score\":69.82,\"why\":\"Relative volume 1.41\\u00d7 its own 30-day average\",\"w\":0.8},{\"key\":\"52w_position\",\"score\":42.96,\"why\":\"-27.7% from its 52-week high\",\"w\":1.4},{\"key\":\"volatility_compression\",\"score\":78.09,\"why\":\"Bollinger width 12.6%\",\"w\":0.7},{\"key\":\"candlestick_patterns\",\"score\":50,\"why\":\"No reversal\\/breakout pattern at the latest close\",\"w\":0.7},{\"key\":\"intraday_position\",\"score\":40,\"why\":\"Below session VWAP\",\"w\":0.4}]},\"fundamental\":{\"score\":59.11,\"label\":\"Available\",\"complete\":true,\"factors\":[{\"key\":\"gross_margin\",\"score\":73.46,\"why\":\"Gross margin 52.7%\",\"w\":1},{\"key\":\"operating_margin\",\"score\":78.76,\"why\":\"Operating margin 26.1%\",\"w\":1},{\"key\":\"free_cash_flow\",\"score\":82,\"why\":\"FCF margin 24.4%\",\"w\":1},{\"key\":\"return_on_equity\",\"score\":75.02,\"why\":\"ROE 20.9%\",\"w\":1},{\"key\":\"return_on_invested_capital\",\"score\":64.03,\"why\":\"ROIC 10.9%\",\"w\":1},{\"key\":\"leverage\",\"score\":38.18,\"why\":\"Debt\\/Equity 1.84\",\"w\":1},{\"key\":\"coverage\",\"score\":61.94,\"why\":\"Interest coverage 5.5\\u00d7\",\"w\":1},{\"key\":\"valuation_pe\",\"score\":45.4,\"why\":\"P\\/E 22\\u00d7 vs sector median 17.6\\u00d7 (in line)\",\"w\":1},{\"key\":\"valuation_sales\",\"score\":45.26,\"why\":\"P\\/S 5.2\\u00d7 vs sector median 3.7\\u00d7\",\"w\":1},{\"key\":\"valuation_book\",\"score\":41.54,\"why\":\"P\\/B 4.6\\u00d7\",\"w\":1},{\"key\":\"valuation_ebitda\",\"score\":49.43,\"why\":\"EV\\/EBITDA 15.1\\u00d7\",\"w\":1},{\"key\":\"dividend\",\"score\":76.72,\"why\":\"Yield 5.52%\",\"w\":1}]},\"momentum\":{\"score\":51.91,\"label\":\"Neutral\",\"complete\":true,\"factors\":[{\"key\":\"multi_horizon_performance\",\"score\":49.7,\"why\":\"1M +8.1% \\u00b7 3M +2.1% \\u00b7 6M -13.2% \\u00b7 12M -1%\",\"w\":1},{\"key\":\"relative_strength_vs_index\",\"score\":46.67,\"why\":\"3-month return minus index -2.2%\",\"w\":1},{\"key\":\"volume_acceleration\",\"score\":48.78,\"why\":\"Today -0.3% on 1.4\\u00d7 volume\",\"w\":1},{\"key\":\"momentum_persistence\",\"score\":62.5,\"why\":\"2 of 4 measured horizons are positive\",\"w\":1}]},\"sentiment\":{\"score\":58.44,\"label\":\"Positive\",\"complete\":true,\"factors\":[{\"key\":\"news_sentiment_index\",\"score\":61.69,\"why\":\"Aggregate news sentiment 23.4 (\\u2212100 bearish \\u2026 +100 bullish) from 35 scored items\",\"w\":1},{\"key\":\"sentiment_delta\",\"score\":81.54,\"why\":\"30-day sentiment change 9 pts\",\"w\":1},{\"key\":\"analyst_consensus\",\"score\":16.4,\"why\":\"Analyst consensus score 4.38 (1=Strong Buy, 5=Sell) across 5 ratings\",\"w\":1},{\"key\":\"analyst_distribution\",\"score\":41.6,\"why\":\"42% Buy\\/Strong Buy \\u00b7 52% Hold \\u00b7 6% Sell\\/Short\",\"w\":1},{\"key\":\"price_target_gap\",\"score\":57.4,\"why\":\"Average target implies +5% from the last close\",\"w\":1},{\"key\":\"estimate_revisions\",\"score\":92,\"why\":\"Net EPS estimate revisions (90d): 39\",\"w\":1}]},\"institutional\":{\"score\":33.07,\"label\":\"Available\",\"complete\":true,\"factors\":[{\"key\":\"institutional_flows\",\"score\":22,\"why\":\"Reported 13F-style positioning change -61.7% vs prior quarter2026-09-01\",\"w\":1},{\"key\":\"ownership_crowding\",\"score\":26,\"why\":\"Institutions hold ~191.5% of float (crowding risk rises above ~78%)\",\"w\":1},{\"key\":\"insider_activity\",\"score\":50.35,\"why\":\"Net insider sales \\u2248 $0.7M over 1 filings\",\"w\":1},{\"key\":\"short_interest\",\"score\":33.92,\"why\":\"Short interest 11.7% of float, days-to-cover 7.2\",\"w\":1}]},\"risk\":{\"score\":87.45,\"label\":\"Low risk\",\"complete\":true,\"factors\":[{\"key\":\"volatility\",\"score\":90,\"why\":\"20-day realised volatility 13.2% annualised\",\"w\":1.5},{\"key\":\"beta\",\"score\":81.3,\"why\":\"Beta 0.31 vs the reference index\",\"w\":1},{\"key\":\"drawdown_history\",\"score\":71.56,\"why\":\"Max drawdown in stored history -34.6%\",\"w\":1.2},{\"key\":\"liquidity\",\"score\":91.46,\"why\":\"Average $28.8M traded per session\",\"w\":1.3},{\"key\":\"gap_risk\",\"score\":95,\"why\":\"Median overnight gap 0.32% \\u2014 position sizing must survive opens\",\"w\":1},{\"key\":\"event_risk_earnings\",\"score\":82,\"why\":\"No earnings inside the next 3 weeks\",\"w\":1},{\"key\":\"sector_risk\",\"score\":95.31,\"why\":\"Sector average volatility 15.6%\",\"w\":1},{\"key\":\"market_risk\",\"score\":84.63,\"why\":\"Benchmark volatility 20.1% \\u00b7 regime: Sideways \\u00b7 normal vol \\u00b7 risk-off\",\"w\":1},{\"key\":\"correlation\",\"score\":96.44,\"why\":\"Correlation to benchmark 0.63-year rolling: 0.32\",\"w\":1}]}},\"weights\":{\"technical\":25,\"fundamental\":25,\"momentum\":15,\"sentiment\":10,\"institutional\":10,\"risk\":15},\"confidence\":54,\"confidence_basis\":\"760 bars \\u00b7 data 31h old \\u00b7 components covered 100%% \\u00b7 risk drag 65\",\"coverage\":100}","factors_json":"{\"positive\":[{\"component\":\"risk\",\"key\":\"correlation\",\"score\":96.44,\"why\":\"Correlation to benchmark 0.63-year rolling: 0.32\"},{\"component\":\"risk\",\"key\":\"sector_risk\",\"score\":95.31,\"why\":\"Sector average volatility 15.6%\"},{\"component\":\"risk\",\"key\":\"gap_risk\",\"score\":95,\"why\":\"Median overnight gap 0.32% \\u2014 position sizing must survive opens\"},{\"component\":\"sentiment\",\"key\":\"estimate_revisions\",\"score\":92,\"why\":\"Net EPS estimate revisions (90d): 39\"},{\"component\":\"risk\",\"key\":\"liquidity\",\"score\":91.46,\"why\":\"Average $28.8M traded per session\"},{\"component\":\"risk\",\"key\":\"volatility\",\"score\":90,\"why\":\"20-day realised volatility 13.2% annualised\"}],\"negative\":[{\"component\":\"sentiment\",\"key\":\"analyst_consensus\",\"score\":16.4,\"why\":\"Analyst consensus score 4.38 (1=Strong Buy, 5=Sell) across 5 ratings\"},{\"component\":\"institutional\",\"key\":\"institutional_flows\",\"score\":22,\"why\":\"Reported 13F-style positioning change -61.7% vs prior quarter2026-09-01\"},{\"component\":\"institutional\",\"key\":\"ownership_crowding\",\"score\":26,\"why\":\"Institutions hold ~191.5% of float (crowding risk rises above ~78%)\"},{\"component\":\"institutional\",\"key\":\"short_interest\",\"score\":33.92,\"why\":\"Short interest 11.7% of float, days-to-cover 7.2\"},{\"component\":\"fundamental\",\"key\":\"buybacks\",\"score\":36.74,\"why\":\"Net buyback yield -0.88%\"}]}","inputs_snapshot":"{\"bars\":760,\"price\":\"3.350000\",\"trend\":\"up\",\"pe\":\"21.9550\",\"sent\":23.37,\"sector\":\"utilities\"}","data_mode":"demo","stance":"constructive","risk_level":"low","confidence":"54.00","model_version":"score-1.0.0","computed_at":"2026-10-25 04:13:59","catalysts":"Earnings report 2026-12-10 (as scheduled) · Street target implies 5%","risks":"Binary event: 2026-12-10","sent_score":null,"sent_label":null,"snap_total":"60.62","score_total":60.62,"components":{"technical":25,"fundamental":25,"momentum":15,"sentiment":10,"institutional":10,"risk":15},"component_detail":{"technical":{"score":63.13,"label":"Positive","complete":true,"factors":[{"key":"trend_structure","score":70,"why":"Price vs 20/50/200-day moving averages: up","w":1.8},{"key":"trend_strength_adx","score":77.32,"why":"ADX(14) 35.1 — trending","w":1},{"key":"rsi_condition","score":68.01,"why":"RSI(14) 68 — constructive zone","w":1},{"key":"macd_signal","score":62.51,"why":"MACD(12,26,9) above, histogram 0.009","w":1},{"key":"volume_confirmation","score":69.82,"why":"Relative volume 1.41× its own 30-day average","w":0.8},{"key":"52w_position","score":42.96,"why":"-27.7% from its 52-week high","w":1.4},{"key":"volatility_compression","score":78.09,"why":"Bollinger width 12.6%","w":0.7},{"key":"candlestick_patterns","score":50,"why":"No reversal/breakout pattern at the latest close","w":0.7},{"key":"intraday_position","score":40,"why":"Below session VWAP","w":0.4}]},"fundamental":{"score":59.11,"label":"Available","complete":true,"factors":[{"key":"gross_margin","score":73.46,"why":"Gross margin 52.7%","w":1},{"key":"operating_margin","score":78.76,"why":"Operating margin 26.1%","w":1},{"key":"free_cash_flow","score":82,"why":"FCF margin 24.4%","w":1},{"key":"return_on_equity","score":75.02,"why":"ROE 20.9%","w":1},{"key":"return_on_invested_capital","score":64.03,"why":"ROIC 10.9%","w":1},{"key":"leverage","score":38.18,"why":"Debt/Equity 1.84","w":1},{"key":"coverage","score":61.94,"why":"Interest coverage 5.5×","w":1},{"key":"valuation_pe","score":45.4,"why":"P/E 22× vs sector median 17.6× (in line)","w":1},{"key":"valuation_sales","score":45.26,"why":"P/S 5.2× vs sector median 3.7×","w":1},{"key":"valuation_book","score":41.54,"why":"P/B 4.6×","w":1},{"key":"valuation_ebitda","score":49.43,"why":"EV/EBITDA 15.1×","w":1},{"key":"dividend","score":76.72,"why":"Yield 5.52%","w":1}]},"momentum":{"score":51.91,"label":"Neutral","complete":true,"factors":[{"key":"multi_horizon_performance","score":49.7,"why":"1M +8.1% · 3M +2.1% · 6M -13.2% · 12M -1%","w":1},{"key":"relative_strength_vs_index","score":46.67,"why":"3-month return minus index -2.2%","w":1},{"key":"volume_acceleration","score":48.78,"why":"Today -0.3% on 1.4× volume","w":1},{"key":"momentum_persistence","score":62.5,"why":"2 of 4 measured horizons are positive","w":1}]},"sentiment":{"score":58.44,"label":"Positive","complete":true,"factors":[{"key":"news_sentiment_index","score":61.69,"why":"Aggregate news sentiment 23.4 (−100 bearish … +100 bullish) from 35 scored items","w":1},{"key":"sentiment_delta","score":81.54,"why":"30-day sentiment change 9 pts","w":1},{"key":"analyst_consensus","score":16.4,"why":"Analyst consensus score 4.38 (1=Strong Buy, 5=Sell) across 5 ratings","w":1},{"key":"analyst_distribution","score":41.6,"why":"42% Buy/Strong Buy · 52% Hold · 6% Sell/Short","w":1},{"key":"price_target_gap","score":57.4,"why":"Average target implies +5% from the last close","w":1},{"key":"estimate_revisions","score":92,"why":"Net EPS estimate revisions (90d): 39","w":1}]},"institutional":{"score":33.07,"label":"Available","complete":true,"factors":[{"key":"institutional_flows","score":22,"why":"Reported 13F-style positioning change -61.7% vs prior quarter2026-09-01","w":1},{"key":"ownership_crowding","score":26,"why":"Institutions hold ~191.5% of float (crowding risk rises above ~78%)","w":1},{"key":"insider_activity","score":50.35,"why":"Net insider sales ≈ $0.7M over 1 filings","w":1},{"key":"short_interest","score":33.92,"why":"Short interest 11.7% of float, days-to-cover 7.2","w":1}]},"risk":{"score":87.45,"label":"Low risk","complete":true,"factors":[{"key":"volatility","score":90,"why":"20-day realised volatility 13.2% annualised","w":1.5},{"key":"beta","score":81.3,"why":"Beta 0.31 vs the reference index","w":1},{"key":"drawdown_history","score":71.56,"why":"Max drawdown in stored history -34.6%","w":1.2},{"key":"liquidity","score":91.46,"why":"Average $28.8M traded per session","w":1.3},{"key":"gap_risk","score":95,"why":"Median overnight gap 0.32% — position sizing must survive opens","w":1},{"key":"event_risk_earnings","score":82,"why":"No earnings inside the next 3 weeks","w":1},{"key":"sector_risk","score":95.31,"why":"Sector average volatility 15.6%","w":1},{"key":"market_risk","score":84.63,"why":"Benchmark volatility 20.1% · regime: Sideways · normal vol · risk-off","w":1},{"key":"correlation","score":96.44,"why":"Correlation to benchmark 0.63-year rolling: 0.32","w":1}]}},"coverage":100,"confidence_basis":"760 bars · data 31h old · components covered 100%% · risk drag 65","factors":[{"component":"risk","key":"correlation","label":"Correlation","score":96.44,"why":"Correlation to benchmark 0.63-year rolling: 0.32","w":1,"direction":"positive"},{"component":"risk","key":"sector_risk","label":"Sector Risk","score":95.31,"why":"Sector average volatility 15.6%","w":1,"direction":"positive"},{"component":"risk","key":"gap_risk","label":"Gap Risk","score":95,"why":"Median overnight gap 0.32% — position sizing must survive opens","w":1,"direction":"positive"},{"component":"sentiment","key":"estimate_revisions","label":"Estimate Revisions","score":92,"why":"Net EPS estimate revisions (90d): 39","w":1,"direction":"positive"},{"component":"risk","key":"liquidity","label":"Liquidity","score":91.46,"why":"Average $28.8M traded per session","w":1.3,"direction":"positive"},{"component":"risk","key":"volatility","label":"Volatility","score":90,"why":"20-day realised volatility 13.2% annualised","w":1.5,"direction":"positive"},{"component":"risk","key":"market_risk","label":"Market Risk","score":84.63,"why":"Benchmark volatility 20.1% · regime: Sideways · normal vol · risk-off","w":1,"direction":"positive"},{"component":"sentiment","key":"analyst_consensus","label":"Analyst Consensus","score":16.4,"why":"Analyst consensus score 4.38 (1=Strong Buy, 5=Sell) across 5 ratings","w":1,"direction":"negative"},{"component":"fundamental","key":"free_cash_flow","label":"Free Cash Flow","score":82,"why":"FCF margin 24.4%","w":1,"direction":"positive"},{"component":"risk","key":"event_risk_earnings","label":"Event Risk Earnings","score":82,"why":"No earnings inside the next 3 weeks","w":1,"direction":"positive"},{"component":"sentiment","key":"sentiment_delta","label":"Sentiment Delta","score":81.54,"why":"30-day sentiment change 9 pts","w":1,"direction":"positive"},{"component":"risk","key":"beta","label":"Beta","score":81.3,"why":"Beta 0.31 vs the reference index","w":1,"direction":"positive"},{"component":"fundamental","key":"operating_margin","label":"Operating Margin","score":78.76,"why":"Operating margin 26.1%","w":1,"direction":"positive"},{"component":"technical","key":"volatility_compression","label":"Volatility Compression","score":78.09,"why":"Bollinger width 12.6%","w":0.7,"direction":"positive"}],"factors_positive":[{"component":"risk","key":"correlation","score":96.44,"why":"Correlation to benchmark 0.63-year rolling: 0.32"},{"component":"risk","key":"sector_risk","score":95.31,"why":"Sector average volatility 15.6%"},{"component":"risk","key":"gap_risk","score":95,"why":"Median overnight gap 0.32% — position sizing must survive opens"},{"component":"sentiment","key":"estimate_revisions","score":92,"why":"Net EPS estimate revisions (90d): 39"},{"component":"risk","key":"liquidity","score":91.46,"why":"Average $28.8M traded per session"},{"component":"risk","key":"volatility","score":90,"why":"20-day realised volatility 13.2% annualised"}],"factors_negative":[{"component":"sentiment","key":"analyst_consensus","score":16.4,"why":"Analyst consensus score 4.38 (1=Strong Buy, 5=Sell) across 5 ratings"},{"component":"institutional","key":"institutional_flows","score":22,"why":"Reported 13F-style positioning change -61.7% vs prior quarter2026-09-01"},{"component":"institutional","key":"ownership_crowding","score":26,"why":"Institutions hold ~191.5% of float (crowding risk rises above ~78%)"},{"component":"institutional","key":"short_interest","score":33.92,"why":"Short interest 11.7% of float, days-to-cover 7.2"},{"component":"fundamental","key":"buybacks","score":36.74,"why":"Net buyback yield -0.88%"}],"inputs":{"bars":760,"price":"3.350000","trend":"up","pe":"21.9550","sent":23.37,"sector":"utilities"}},"predictions":[{"id":8791,"security_id":69,"model_id":2,"horizon_code":"1D","generated_at":"2026-10-25 04:13:59","ref_price":3.35,"bull_low_pct":0.5,"bull_high_pct":1,"base_low_pct":0,"base_high_pct":0.5,"bear_low_pct":-0.5,"bear_high_pct":-0.5,"prob_up":0.54,"p10_pct":-0.5,"p25_pct":0,"p50_pct":0,"p75_pct":0.5,"p90_pct":0.5,"expected_range_low":0,"expected_range_high":0.5,"risk_range_low":-0.5,"risk_range_high":0.5,"confidence":59,"confidence_basis":"760 bars, blended vol 15%, score 61, coverage 100%%","risk_level":"low","volatility_ann":14.5,"max_hist_drawdown":"-34.6000","sample_size":760,"data_freshness_secs":112439,"bull_case":"If a volatility-compressed setup resolving upward would accelerate the move, the upside path is the 80–95th percentile band shown here.","base_case":"mildly positive","bear_case":"Downside triggers: a market-wide risk-off move alone can carry the 5–20th percentile band. Treat the 5–20th percentile band as the stress case for sizing, not as a worst case.","catalysts":["Earnings report 2026-12-10 (as scheduled)","Street target implies 5%"],"key_risks":"Binary event: 2026-12-10","assumptions":["Realised volatility stays near its recent level (blended 14.5% annualised).","The scoring tilt persists over the window; no structural break (fraud, delisting, forced guidance cut).","Returns are approximated as lognormal; fat tails are handled by widening, not by point forecasts.","Index regime assumed: sideways.","Close below the 3.7 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 23% annualised invalidates position sizing.","Loss of the fundamental pillars used in the score (guidance cut, covenant breach, auditor change)."],"invalidation":null,"regime_at_time":"sideways","status":"active","invalidated_at":null,"invalidated_reason":null,"data_mode":"demo"},{"id":8792,"security_id":69,"model_id":2,"horizon_code":"5D","generated_at":"2026-10-25 04:13:59","ref_price":3.35,"bull_low_pct":1,"bull_high_pct":2,"base_low_pct":-1,"base_high_pct":1,"bear_low_pct":-2,"bear_high_pct":-1,"prob_up":0.55,"p10_pct":-1,"p25_pct":-1,"p50_pct":0,"p75_pct":1,"p90_pct":2,"expected_range_low":-1,"expected_range_high":1,"risk_range_low":-2,"risk_range_high":1,"confidence":59,"confidence_basis":"760 bars, blended vol 15%, score 61, coverage 100%%","risk_level":"low","volatility_ann":14.5,"max_hist_drawdown":"-34.6000","sample_size":760,"data_freshness_secs":112439,"bull_case":"If a volatility-compressed setup resolving upward would accelerate the move, the upside path is the 80–95th percentile band shown here.","base_case":"mildly positive","bear_case":"Downside triggers: a market-wide risk-off move alone can carry the 5–20th percentile band. Treat the 5–20th percentile band as the stress case for sizing, not as a worst case.","catalysts":["Earnings report 2026-12-10 (as scheduled)","Street target implies 5%"],"key_risks":"Binary event: 2026-12-10","assumptions":["Realised volatility stays near its recent level (blended 14.5% annualised).","The scoring tilt persists over the window; no structural break (fraud, delisting, forced guidance cut).","Returns are approximated as lognormal; fat tails are handled by widening, not by point forecasts.","Index regime assumed: sideways.","Close below the 3.7 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 23% annualised invalidates position sizing.","Loss of the fundamental pillars used in the score (guidance cut, covenant breach, auditor change)."],"invalidation":null,"regime_at_time":"sideways","status":"active","invalidated_at":null,"invalidated_reason":null,"data_mode":"demo"},{"id":8793,"security_id":69,"model_id":2,"horizon_code":"1M","generated_at":"2026-10-25 04:13:59","ref_price":3.35,"bull_low_pct":2,"bull_high_pct":4,"base_low_pct":-1,"base_high_pct":2,"bear_low_pct":-3,"bear_high_pct":-2,"prob_up":0.55,"p10_pct":-3,"p25_pct":-1,"p50_pct":0,"p75_pct":2,"p90_pct":3,"expected_range_low":-1,"expected_range_high":2,"risk_range_low":-3,"risk_range_high":2,"confidence":59,"confidence_basis":"760 bars, blended vol 15%, score 61, coverage 100%%","risk_level":"low","volatility_ann":14.5,"max_hist_drawdown":"-34.6000","sample_size":760,"data_freshness_secs":112439,"bull_case":"If a volatility-compressed setup resolving upward would accelerate the move, the upside path is the 80–95th percentile band shown here.","base_case":"mildly positive","bear_case":"Downside triggers: a market-wide risk-off move alone can carry the 5–20th percentile band. Treat the 5–20th percentile band as the stress case for sizing, not as a worst case.","catalysts":["Earnings report 2026-12-10 (as scheduled)","Street target implies 5%"],"key_risks":"Binary event: 2026-12-10","assumptions":["Realised volatility stays near its recent level (blended 14.5% annualised).","The scoring tilt persists over the window; no structural break (fraud, delisting, forced guidance cut).","Returns are approximated as lognormal; fat tails are handled by widening, not by point forecasts.","Index regime assumed: sideways.","Close below the 3.7 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 23% annualised invalidates position sizing.","Loss of the fundamental pillars used in the score (guidance cut, covenant breach, auditor change)."],"invalidation":null,"regime_at_time":"sideways","status":"active","invalidated_at":null,"invalidated_reason":null,"data_mode":"demo"},{"id":8794,"security_id":69,"model_id":2,"horizon_code":"3M","generated_at":"2026-10-25 04:13:59","ref_price":3.35,"bull_low_pct":4.5,"bull_high_pct":7.5,"base_low_pct":-1.5,"base_high_pct":3,"bear_low_pct":-6,"bear_high_pct":-3,"prob_up":0.55,"p10_pct":-4.5,"p25_pct":-1.5,"p50_pct":0,"p75_pct":3,"p90_pct":6,"expected_range_low":-1.5,"expected_range_high":3,"risk_range_low":-6,"risk_range_high":3,"confidence":59,"confidence_basis":"760 bars, blended vol 15%, score 61, coverage 100%%","risk_level":"low","volatility_ann":14.5,"max_hist_drawdown":"-34.6000","sample_size":760,"data_freshness_secs":112439,"bull_case":"If a volatility-compressed setup resolving upward would accelerate the move, the upside path is the 80–95th percentile band shown here.","base_case":"mildly positive","bear_case":"Downside triggers: a market-wide risk-off move alone can carry the 5–20th percentile band. Treat the 5–20th percentile band as the stress case for sizing, not as a worst case.","catalysts":["Earnings report 2026-12-10 (as scheduled)","Street target implies 5%"],"key_risks":"Binary event: 2026-12-10","assumptions":["Realised volatility stays near its recent level (blended 14.5% annualised).","The scoring tilt persists over the window; no structural break (fraud, delisting, forced guidance cut).","Returns are approximated as lognormal; fat tails are handled by widening, not by point forecasts.","Index regime assumed: sideways.","Close below the 3.7 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 23% annualised invalidates position sizing.","Loss of the fundamental pillars used in the score (guidance cut, covenant breach, auditor change)."],"invalidation":null,"regime_at_time":"sideways","status":"active","invalidated_at":null,"invalidated_reason":null,"data_mode":"demo"},{"id":8795,"security_id":69,"model_id":2,"horizon_code":"6M","generated_at":"2026-10-25 04:13:59","ref_price":3.35,"bull_low_pct":6,"bull_high_pct":10.5,"base_low_pct":-3,"base_high_pct":4.5,"bear_low_pct":-9,"bear_high_pct":-3,"prob_up":0.55,"p10_pct":-6,"p25_pct":-3,"p50_pct":1.5,"p75_pct":4.5,"p90_pct":7.5,"expected_range_low":-3,"expected_range_high":4.5,"risk_range_low":-9,"risk_range_high":4.5,"confidence":59,"confidence_basis":"760 bars, blended vol 15%, score 61, coverage 100%%","risk_level":"low","volatility_ann":14.5,"max_hist_drawdown":"-34.6000","sample_size":760,"data_freshness_secs":112439,"bull_case":"If a volatility-compressed setup resolving upward would accelerate the move, the upside path is the 80–95th percentile band shown here.","base_case":"mildly positive","bear_case":"Downside triggers: a market-wide risk-off move alone can carry the 5–20th percentile band. Treat the 5–20th percentile band as the stress case for sizing, not as a worst case.","catalysts":["Earnings report 2026-12-10 (as scheduled)","Street target implies 5%"],"key_risks":"Binary event: 2026-12-10","assumptions":["Realised volatility stays near its recent level (blended 14.5% annualised).","The scoring tilt persists over the window; no structural break (fraud, delisting, forced guidance cut).","Returns are approximated as lognormal; fat tails are handled by widening, not by point forecasts.","Index regime assumed: sideways.","Close below the 3.7 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 23% annualised invalidates position sizing.","Loss of the fundamental pillars used in the score (guidance cut, covenant breach, auditor change)."],"invalidation":null,"regime_at_time":"sideways","status":"active","invalidated_at":null,"invalidated_reason":null,"data_mode":"demo"},{"id":8796,"security_id":69,"model_id":2,"horizon_code":"12M","generated_at":"2026-10-25 04:13:59","ref_price":3.35,"bull_low_pct":7.5,"bull_high_pct":15,"base_low_pct":-5,"base_high_pct":7.5,"bear_low_pct":-12.5,"bear_high_pct":-5,"prob_up":0.55,"p10_pct":-10,"p25_pct":-5,"p50_pct":2.5,"p75_pct":7.5,"p90_pct":12.5,"expected_range_low":-5,"expected_range_high":7.5,"risk_range_low":-12.5,"risk_range_high":7.5,"confidence":59,"confidence_basis":"760 bars, blended vol 15%, score 61, coverage 100%%","risk_level":"low","volatility_ann":14.5,"max_hist_drawdown":"-34.6000","sample_size":760,"data_freshness_secs":112439,"bull_case":"If a volatility-compressed setup resolving upward would accelerate the move, the upside path is the 80–95th percentile band shown here.","base_case":"mildly positive","bear_case":"Downside triggers: a market-wide risk-off move alone can carry the 5–20th percentile band. Treat the 5–20th percentile band as the stress case for sizing, not as a worst case.","catalysts":["Earnings report 2026-12-10 (as scheduled)","Street target implies 5%"],"key_risks":"Binary event: 2026-12-10","assumptions":["Realised volatility stays near its recent level (blended 14.5% annualised).","The scoring tilt persists over the window; no structural break (fraud, delisting, forced guidance cut).","Returns are approximated as lognormal; fat tails are handled by widening, not by point forecasts.","Index regime assumed: sideways.","Close below the 3.7 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 23% annualised invalidates position sizing.","Loss of the fundamental pillars used in the score (guidance cut, covenant breach, auditor change)."],"invalidation":null,"regime_at_time":"sideways","status":"active","invalidated_at":null,"invalidated_reason":null,"data_mode":"demo"}],"available":true,"as_of":"2026-10-23","mode":"demo","note":"Stored snapshot values; not a real-time feed."}