{"ok":true,"security_id":194,"symbol":"ZQH27","snapshot":{"security_id":194,"symbol":"ZQH27","asset_type":"future","sector_code":null,"industry":null,"exchange_code":null,"currency":"USD","data_mode":"demo","price":"106.472500","prev_close":"104.344300","chg_1d_pct":"2.0400","volume":578954,"rvol_30":"1.077","avg_volume_30d":539118,"dollar_volume_avg":"58582294.4700","mcap":null,"wk52_high":"115.143300","wk52_low":"89.469200","pct_from_52wh":"-7.5300","dist_to_52wh_pct":"-7.5300","rsi14":"45.436","macd":"-0.709000","macd_hist":"-0.806100","adx14":"25.376","atr_pct":"2.9600","hv20":"18.0600","hv60":"15.7600","vol_regime":"normal","bb_pctb":"0.2851","stoch_k":"37.339","above_sma20":0,"above_sma50":0,"above_sma200":1,"sma20":"109.206600","sma50":"106.719700","sma200":"104.887600","vwap":"105.507900","trend":"down","support":"100.759600","resistance":"106.269100","perf_1d":"2.0400","perf_5d":"1.0000","perf_1m":"-3.2900","perf_3m":"4.1900","perf_6m":"-0.5700","perf_12m":"16.9000","rel_strength_3m":"-0.1600","rs_rank":null,"mom_persist":null,"bars":760,"beta":"-0.0740","mdd_pct":"-11.0000","gap_risk":"0.3610","liq_days":null,"pe_ttm":null,"pe_fwd":null,"peg":null,"ps":null,"pb":null,"ev_ebitda":null,"rev_g":null,"eps_g":null,"gross_margin":null,"op_margin":null,"fcf_margin":null,"roe":null,"roic":null,"debt_equity":null,"net_debt_ebitda":null,"div_yield":null,"payout":null,"buyback_yield":null,"eps_surprise_pct":null,"rev_surprise_pct":null,"earnings_days_out":null,"earnings_date":null,"consensus_score":"42.500","pct_analyst_buy":null,"pt_upside_pct":null,"sent_score":null,"sent_label":null,"sent_delta":null,"inst_ownership":null,"inst_chg_pct":null,"inst_top_name":null,"insider_net_usd":null,"insider_trades_90d":0,"short_pct_float":null,"score_total":"58.54","score_technical":"52.86","score_fundamental":"50.00","score_momentum":"60.21","score_sentiment":"42.50","score_institutional":"50.00","score_risk":"88.01","confidence":"52.00","risk_level":"low","stance":"constructive","cats":"","catalysts":"Demo synthetic: ZQH27 cut to neutral on valuation · Demo synthetic: ZQH27 cut to neutral on valuation · Demo synthetic: ZQH27 completes share buyback tranche","risks":"No exceptional risk flags from stored data; normal market risk always applies","model_version":"score-1.0.0","priced_at":"2026-10-23 16:00:00","computed_at":"2026-10-25 04:14:01"},"quote":{"security_id":194,"last_price":"106.472500","bid":null,"ask":null,"prev_close":"104.344300","open":"102.753900","day_high":"108.078500","day_low":"101.972800","volume":578954,"avg_volume_30d":558847,"change_abs":"2.128200","change_pct":"2.0400","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":"106.472500","as_of":"2026-10-23 16:00:00"},"score":{"id":1586,"security_id":194,"model_id":1,"scored_at":"2026-10-25 04:14:00","total_score":"58.54","technical":"52.86","fundamental":"50.00","momentum":"60.21","sentiment":"42.50","institutional":"50.00","risk":"88.01","components_json":"{\"components\":{\"technical\":{\"score\":52.86,\"label\":\"Neutral\",\"complete\":true,\"factors\":[{\"key\":\"trend_structure\",\"score\":32,\"why\":\"Price vs 20\\/50\\/200-day moving averages: down\",\"w\":1.8},{\"key\":\"trend_strength_adx\",\"score\":55.83,\"why\":\"ADX(14) 25.4 \\u2014 trending\",\"w\":1},{\"key\":\"rsi_condition\",\"score\":65.62,\"why\":\"RSI(14) 45.4 \\u2014 constructive zone\",\"w\":1},{\"key\":\"macd_signal\",\"score\":28,\"why\":\"MACD(12,26,9) below, histogram -0.806\",\"w\":1},{\"key\":\"volume_confirmation\",\"score\":53.7,\"why\":\"Relative volume 1.08\\u00d7 its own 30-day average\",\"w\":0.8},{\"key\":\"52w_position\",\"score\":71.56,\"why\":\"-7.5% from its 52-week high\",\"w\":1.4},{\"key\":\"volatility_compression\",\"score\":78.83,\"why\":\"Bollinger width 11.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\":62,\"why\":\"Holding above session VWAP\",\"w\":0.4}]},\"fundamental\":{\"score\":50,\"label\":\"Partial (missing provider fields)\",\"complete\":false,\"factors\":[]},\"momentum\":{\"score\":60.21,\"label\":\"Neutral\",\"complete\":true,\"factors\":[{\"key\":\"multi_horizon_performance\",\"score\":55.91,\"why\":\"1M -3.3% \\u00b7 3M +4.2% \\u00b7 6M -0.6% \\u00b7 12M +16.9%\",\"w\":1},{\"key\":\"relative_strength_vs_index\",\"score\":51.62,\"why\":\"3-month return minus index -0.2%\",\"w\":1},{\"key\":\"volume_acceleration\",\"score\":70.79,\"why\":\"Today +2% on 1.1\\u00d7 volume\",\"w\":1},{\"key\":\"momentum_persistence\",\"score\":62.5,\"why\":\"2 of 4 measured horizons are positive\",\"w\":1}]},\"sentiment\":{\"score\":42.5,\"label\":\"Neutral\",\"complete\":true,\"factors\":[{\"key\":\"recent_headline_tone\",\"score\":42.5,\"why\":\"Last items: 5 positive \\/ 7 negative headlines\",\"w\":1}]},\"institutional\":{\"score\":50,\"label\":\"Not available (no licensed filing feed configured)\",\"complete\":false,\"factors\":[]},\"risk\":{\"score\":88.01,\"label\":\"Low risk\",\"complete\":true,\"factors\":[{\"key\":\"volatility\",\"score\":83.9,\"why\":\"20-day realised volatility 18.1% annualised\",\"w\":1.5},{\"key\":\"beta\",\"score\":71.61,\"why\":\"Beta -0.07 vs the reference index\",\"w\":1},{\"key\":\"drawdown_history\",\"score\":94.1,\"why\":\"Max drawdown in stored history -11%\",\"w\":1.2},{\"key\":\"liquidity\",\"score\":92.95,\"why\":\"Average $58.6M traded per session\",\"w\":1.3},{\"key\":\"gap_risk\",\"score\":95,\"why\":\"Median overnight gap 0.36% \\u2014 position sizing must survive opens\",\"w\":1},{\"key\":\"event_risk_earnings\",\"score\":82,\"why\":\"No scheduled earnings date on file\",\"w\":1},{\"key\":\"sector_risk\",\"score\":90.29,\"why\":\"Sector average volatility 20%\",\"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\":97,\"why\":\"Correlation to benchmark 0.63-year rolling: -0.08\",\"w\":1}]}},\"weights\":{\"technical\":25,\"fundamental\":25,\"momentum\":15,\"sentiment\":10,\"institutional\":10,\"risk\":15},\"confidence\":52,\"confidence_basis\":\"760 bars \\u00b7 data 31h old \\u00b7 components covered 84%% \\u00b7 risk drag 63\",\"coverage\":84.3}","factors_json":"{\"positive\":[{\"component\":\"risk\",\"key\":\"correlation\",\"score\":97,\"why\":\"Correlation to benchmark 0.63-year rolling: -0.08\"},{\"component\":\"risk\",\"key\":\"gap_risk\",\"score\":95,\"why\":\"Median overnight gap 0.36% \\u2014 position sizing must survive opens\"},{\"component\":\"risk\",\"key\":\"drawdown_history\",\"score\":94.1,\"why\":\"Max drawdown in stored history -11%\"},{\"component\":\"risk\",\"key\":\"liquidity\",\"score\":92.95,\"why\":\"Average $58.6M traded per session\"},{\"component\":\"risk\",\"key\":\"sector_risk\",\"score\":90.29,\"why\":\"Sector average volatility 20%\"},{\"component\":\"risk\",\"key\":\"market_risk\",\"score\":84.63,\"why\":\"Benchmark volatility 20.1% \\u00b7 regime: Sideways \\u00b7 normal vol \\u00b7 risk-off\"}],\"negative\":[{\"component\":\"technical\",\"key\":\"macd_signal\",\"score\":28,\"why\":\"MACD(12,26,9) below, histogram -0.806\"},{\"component\":\"technical\",\"key\":\"trend_structure\",\"score\":32,\"why\":\"Price vs 20\\/50\\/200-day moving averages: down\"}]}","inputs_snapshot":"{\"bars\":760,\"price\":\"106.472500\",\"trend\":\"down\",\"pe\":null,\"sent\":null,\"sector\":null}","data_mode":"demo","stance":"constructive","risk_level":"low","confidence":"52.00","model_version":"score-1.0.0","computed_at":"2026-10-25 04:14:01","catalysts":"Demo synthetic: ZQH27 cut to neutral on valuation · Demo synthetic: ZQH27 cut to neutral on valuation · Demo synthetic: ZQH27 completes share buyback tranche","risks":"No exceptional risk flags from stored data; normal market risk always applies","sent_score":null,"sent_label":null,"snap_total":"58.54","score_total":58.54,"components":{"technical":25,"fundamental":25,"momentum":15,"sentiment":10,"institutional":10,"risk":15},"component_detail":{"technical":{"score":52.86,"label":"Neutral","complete":true,"factors":[{"key":"trend_structure","score":32,"why":"Price vs 20/50/200-day moving averages: down","w":1.8},{"key":"trend_strength_adx","score":55.83,"why":"ADX(14) 25.4 — trending","w":1},{"key":"rsi_condition","score":65.62,"why":"RSI(14) 45.4 — constructive zone","w":1},{"key":"macd_signal","score":28,"why":"MACD(12,26,9) below, histogram -0.806","w":1},{"key":"volume_confirmation","score":53.7,"why":"Relative volume 1.08× its own 30-day average","w":0.8},{"key":"52w_position","score":71.56,"why":"-7.5% from its 52-week high","w":1.4},{"key":"volatility_compression","score":78.83,"why":"Bollinger width 11.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":62,"why":"Holding above session VWAP","w":0.4}]},"fundamental":{"score":50,"label":"Partial (missing provider fields)","complete":false,"factors":[]},"momentum":{"score":60.21,"label":"Neutral","complete":true,"factors":[{"key":"multi_horizon_performance","score":55.91,"why":"1M -3.3% · 3M +4.2% · 6M -0.6% · 12M +16.9%","w":1},{"key":"relative_strength_vs_index","score":51.62,"why":"3-month return minus index -0.2%","w":1},{"key":"volume_acceleration","score":70.79,"why":"Today +2% on 1.1× volume","w":1},{"key":"momentum_persistence","score":62.5,"why":"2 of 4 measured horizons are positive","w":1}]},"sentiment":{"score":42.5,"label":"Neutral","complete":true,"factors":[{"key":"recent_headline_tone","score":42.5,"why":"Last items: 5 positive / 7 negative headlines","w":1}]},"institutional":{"score":50,"label":"Not available (no licensed filing feed configured)","complete":false,"factors":[]},"risk":{"score":88.01,"label":"Low risk","complete":true,"factors":[{"key":"volatility","score":83.9,"why":"20-day realised volatility 18.1% annualised","w":1.5},{"key":"beta","score":71.61,"why":"Beta -0.07 vs the reference index","w":1},{"key":"drawdown_history","score":94.1,"why":"Max drawdown in stored history -11%","w":1.2},{"key":"liquidity","score":92.95,"why":"Average $58.6M traded per session","w":1.3},{"key":"gap_risk","score":95,"why":"Median overnight gap 0.36% — position sizing must survive opens","w":1},{"key":"event_risk_earnings","score":82,"why":"No scheduled earnings date on file","w":1},{"key":"sector_risk","score":90.29,"why":"Sector average volatility 20%","w":1},{"key":"market_risk","score":84.63,"why":"Benchmark volatility 20.1% · regime: Sideways · normal vol · risk-off","w":1},{"key":"correlation","score":97,"why":"Correlation to benchmark 0.63-year rolling: -0.08","w":1}]}},"coverage":84.3,"confidence_basis":"760 bars · data 31h old · components covered 84%% · risk drag 63","factors":[{"component":"risk","key":"correlation","label":"Correlation","score":97,"why":"Correlation to benchmark 0.63-year rolling: -0.08","w":1,"direction":"positive"},{"component":"risk","key":"gap_risk","label":"Gap Risk","score":95,"why":"Median overnight gap 0.36% — position sizing must survive opens","w":1,"direction":"positive"},{"component":"risk","key":"drawdown_history","label":"Drawdown History","score":94.1,"why":"Max drawdown in stored history -11%","w":1.2,"direction":"positive"},{"component":"risk","key":"liquidity","label":"Liquidity","score":92.95,"why":"Average $58.6M traded per session","w":1.3,"direction":"positive"},{"component":"risk","key":"sector_risk","label":"Sector Risk","score":90.29,"why":"Sector average volatility 20%","w":1,"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":"risk","key":"volatility","label":"Volatility","score":83.9,"why":"20-day realised volatility 18.1% annualised","w":1.5,"direction":"positive"},{"component":"risk","key":"event_risk_earnings","label":"Event Risk Earnings","score":82,"why":"No scheduled earnings date on file","w":1,"direction":"positive"},{"component":"technical","key":"volatility_compression","label":"Volatility Compression","score":78.83,"why":"Bollinger width 11.6%","w":0.7,"direction":"positive"},{"component":"technical","key":"macd_signal","label":"Macd Signal","score":28,"why":"MACD(12,26,9) below, histogram -0.806","w":1,"direction":"negative"},{"component":"risk","key":"beta","label":"Beta","score":71.61,"why":"Beta -0.07 vs the reference index","w":1,"direction":"positive"},{"component":"technical","key":"52w_position","label":"52w Position","score":71.56,"why":"-7.5% from its 52-week high","w":1.4,"direction":"positive"},{"component":"momentum","key":"volume_acceleration","label":"Volume Acceleration","score":70.79,"why":"Today +2% on 1.1× volume","w":1,"direction":"positive"},{"component":"technical","key":"trend_structure","label":"Trend Structure","score":32,"why":"Price vs 20/50/200-day moving averages: down","w":1.8,"direction":"negative"}],"factors_positive":[{"component":"risk","key":"correlation","score":97,"why":"Correlation to benchmark 0.63-year rolling: -0.08"},{"component":"risk","key":"gap_risk","score":95,"why":"Median overnight gap 0.36% — position sizing must survive opens"},{"component":"risk","key":"drawdown_history","score":94.1,"why":"Max drawdown in stored history -11%"},{"component":"risk","key":"liquidity","score":92.95,"why":"Average $58.6M traded per session"},{"component":"risk","key":"sector_risk","score":90.29,"why":"Sector average volatility 20%"},{"component":"risk","key":"market_risk","score":84.63,"why":"Benchmark volatility 20.1% · regime: Sideways · normal vol · risk-off"}],"factors_negative":[{"component":"technical","key":"macd_signal","score":28,"why":"MACD(12,26,9) below, histogram -0.806"},{"component":"technical","key":"trend_structure","score":32,"why":"Price vs 20/50/200-day moving averages: down"}],"inputs":{"bars":760,"price":"106.472500","trend":"down","pe":null,"sent":null,"sector":null}},"predictions":[{"id":9511,"security_id":194,"model_id":2,"horizon_code":"1D","generated_at":"2026-10-25 04:14:01","ref_price":106.4725,"bull_low_pct":0.5,"bull_high_pct":1,"base_low_pct":-0.5,"base_high_pct":0.5,"bear_low_pct":-1,"bear_high_pct":-0.5,"prob_up":0.54,"p10_pct":-0.5,"p25_pct":-0.5,"p50_pct":0,"p75_pct":0.5,"p90_pct":1,"expected_range_low":-0.5,"expected_range_high":0.5,"risk_range_low":-1,"risk_range_high":0.5,"confidence":56,"confidence_basis":"760 bars, blended vol 17%, score 59, coverage 84%%","risk_level":"low","volatility_ann":16.8,"max_hist_drawdown":"-11.0000","sample_size":760,"data_freshness_secs":112441,"bull_case":"If price above the 200-day average (trend intact), RSI mid-range — room to extend, 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":["Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 completes share buyback tranche"],"key_risks":"No exceptional risk flags from stored data; normal market risk always applies","assumptions":["Realised volatility stays near its recent level (blended 16.8% 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 104.89 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 27% 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":9512,"security_id":194,"model_id":2,"horizon_code":"5D","generated_at":"2026-10-25 04:14:01","ref_price":106.4725,"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.54,"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":56,"confidence_basis":"760 bars, blended vol 17%, score 59, coverage 84%%","risk_level":"low","volatility_ann":16.8,"max_hist_drawdown":"-11.0000","sample_size":760,"data_freshness_secs":112441,"bull_case":"If price above the 200-day average (trend intact), RSI mid-range — room to extend, 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":["Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 completes share buyback tranche"],"key_risks":"No exceptional risk flags from stored data; normal market risk always applies","assumptions":["Realised volatility stays near its recent level (blended 16.8% 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 104.89 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 27% 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":9513,"security_id":194,"model_id":2,"horizon_code":"1M","generated_at":"2026-10-25 04:14:01","ref_price":106.4725,"bull_low_pct":3,"bull_high_pct":5,"base_low_pct":-1,"base_high_pct":2,"bear_low_pct":-4,"bear_high_pct":-2,"prob_up":0.54,"p10_pct":-3,"p25_pct":-1,"p50_pct":0,"p75_pct":2,"p90_pct":4,"expected_range_low":-1,"expected_range_high":2,"risk_range_low":-4,"risk_range_high":2,"confidence":56,"confidence_basis":"760 bars, blended vol 17%, score 59, coverage 84%%","risk_level":"low","volatility_ann":16.8,"max_hist_drawdown":"-11.0000","sample_size":760,"data_freshness_secs":112441,"bull_case":"If price above the 200-day average (trend intact), RSI mid-range — room to extend, 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":["Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 completes share buyback tranche"],"key_risks":"No exceptional risk flags from stored data; normal market risk always applies","assumptions":["Realised volatility stays near its recent level (blended 16.8% 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 104.89 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 27% 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":9514,"security_id":194,"model_id":2,"horizon_code":"3M","generated_at":"2026-10-25 04:14:01","ref_price":106.4725,"bull_low_pct":4.5,"bull_high_pct":7.5,"base_low_pct":-3,"base_high_pct":4.5,"bear_low_pct":-7.5,"bear_high_pct":-3,"prob_up":0.54,"p10_pct":-6,"p25_pct":-3,"p50_pct":0,"p75_pct":4.5,"p90_pct":6,"expected_range_low":-3,"expected_range_high":4.5,"risk_range_low":-7.5,"risk_range_high":4.5,"confidence":56,"confidence_basis":"760 bars, blended vol 17%, score 59, coverage 84%%","risk_level":"low","volatility_ann":16.8,"max_hist_drawdown":"-11.0000","sample_size":760,"data_freshness_secs":112441,"bull_case":"If price above the 200-day average (trend intact), RSI mid-range — room to extend, 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":["Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 completes share buyback tranche"],"key_risks":"No exceptional risk flags from stored data; normal market risk always applies","assumptions":["Realised volatility stays near its recent level (blended 16.8% 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 104.89 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 27% 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":9515,"security_id":194,"model_id":2,"horizon_code":"6M","generated_at":"2026-10-25 04:14:01","ref_price":106.4725,"bull_low_pct":6,"bull_high_pct":12,"base_low_pct":-3,"base_high_pct":6,"bear_low_pct":-10.5,"bear_high_pct":-4.5,"prob_up":0.54,"p10_pct":-7.5,"p25_pct":-3,"p50_pct":1.5,"p75_pct":6,"p90_pct":9,"expected_range_low":-3,"expected_range_high":6,"risk_range_low":-10.5,"risk_range_high":6,"confidence":56,"confidence_basis":"760 bars, blended vol 17%, score 59, coverage 84%%","risk_level":"low","volatility_ann":16.8,"max_hist_drawdown":"-11.0000","sample_size":760,"data_freshness_secs":112441,"bull_case":"If price above the 200-day average (trend intact), RSI mid-range — room to extend, 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":["Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 completes share buyback tranche"],"key_risks":"No exceptional risk flags from stored data; normal market risk always applies","assumptions":["Realised volatility stays near its recent level (blended 16.8% 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 104.89 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 27% 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":9516,"security_id":194,"model_id":2,"horizon_code":"12M","generated_at":"2026-10-25 04:14:01","ref_price":106.4725,"bull_low_pct":10,"bull_high_pct":17.5,"base_low_pct":-5,"base_high_pct":7.5,"bear_low_pct":-15,"bear_high_pct":-7.5,"prob_up":0.54,"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":-15,"risk_range_high":7.5,"confidence":56,"confidence_basis":"760 bars, blended vol 17%, score 59, coverage 84%%","risk_level":"low","volatility_ann":16.8,"max_hist_drawdown":"-11.0000","sample_size":760,"data_freshness_secs":112441,"bull_case":"If price above the 200-day average (trend intact), RSI mid-range — room to extend, 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":["Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 cut to neutral on valuation","Demo synthetic: ZQH27 completes share buyback tranche"],"key_risks":"No exceptional risk flags from stored data; normal market risk always applies","assumptions":["Realised volatility stays near its recent level (blended 16.8% 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 104.89 support band or the strategy stop.","Earnings or regulatory headline that changes forward estimates by more than the modelled window σ.","Volatility expanding beyond 27% 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."}