{"indicator":{"schema":"mastermind.indicator/v1","indicator":{"id":"confluence_rsimacd_stochrsi_mtf","title":"RSI-MACD × StochRSI MTF Confluence","engine":"python:signal_layer.confluence_v2@v2","source_lang":"python","source_hash":"sha256:f27a407bea861a2217477beb98c398abc62845d2bcc38d331d4963c06471986d","macd_kind":"rsi_based","params":{"confW":8,"rsiLen":14,"useMTF":true,"confirmTF":"1W","macd_on":"rsi","macd_fast":14,"macd_slow":60,"macd_signal":5,"buy_rsi_max":65,"ext_rsi":70,"rev_bars":3,"no_cut_exits":true,"reclaim_lane":true}},"symbol":"LEGH","timeframe":"3D","as_of":"2026-08-10T00:00:00Z","bar_quality":"real_ohlc","signal_era":"gc_v2_wo2","signals":[{"ts":"2020-01-16","known_ts":"2020-01-16","bar_index":91,"type":"SELL","basis":"structure_stop","strength":0.725,"price":14.74,"stop_level":14.77,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false}},{"ts":"2020-01-17","known_ts":"2020-01-17","bar_index":92,"type":"RECLAIM","strength":0.725,"price":14.96,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-01-16 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"anchor_ts":"2020-01-16","prior_stop_level":14.77,"sweep_low":14.55,"atr14":0.564536,"stop_level":14.267732,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-03-24","known_ts":"2020-03-26","bar_index":107,"type":"BOTTOM_WATCH","scored":false,"subtype":"early_dot","quality":"washout_early_watch","quality_reason":"early momentum turn inside a point-in-time own-name washout","trigger_ts":"2020-03-24","trigger_known_ts":"2020-03-26","strength":0.45,"price":10.68,"reasons":["bear_block","own_name_washout","early_momentum_turn"],"washout_ctx":{"rule":"bear_block & (dd252<=-35% | monthly_os_dwell>=3) & recent_3d_os","drawdown_252":-0.375804,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":9.26,"atr14":1.015968,"stop_level":8.752016,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-04-23","known_ts":"2020-04-27","bar_index":114,"type":"BUY","strength":0.588,"price":10.35,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true},"quality":"block","quality_reason":"counter-trend, no 200-reclaim/hold","tier":"base","score":40},{"ts":"2020-07-07","known_ts":"2020-07-07","bar_index":131,"type":"SELL","basis":"structure_stop","strength":0.588,"price":12.65,"stop_level":13.0,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2020-07-10","known_ts":"2020-07-10","bar_index":132,"type":"RECLAIM","strength":0.588,"price":13.75,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-07-07 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"anchor_ts":"2020-07-07","prior_stop_level":13.0,"sweep_low":12.0,"atr14":0.793251,"stop_level":11.603375,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-07-23","known_ts":"2020-07-23","bar_index":135,"type":"RECLAIM","strength":0.863,"price":13.67,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-07-07 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-07-31","known_ts":"2020-08-04","bar_index":137,"type":"REBUY","strength":0.863,"price":14.11,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":45},{"ts":"2020-09-11","known_ts":"2020-09-11","bar_index":146,"type":"SELL","basis":"structure_stop","strength":0.863,"price":14.63,"stop_level":14.73,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-09-14","known_ts":"2020-09-14","bar_index":147,"type":"RECLAIM","strength":0.863,"price":14.89,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-09-11 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2020-09-11","prior_stop_level":14.73,"sweep_low":14.63,"atr14":0.79654,"stop_level":14.23173,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-10-16","known_ts":"2020-10-16","bar_index":155,"type":"RECLAIM","strength":1.0,"price":14.77,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-09-11 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-01-04","known_ts":"2021-01-04","bar_index":172,"type":"SELL","basis":"structure_stop","strength":0.863,"price":14.66,"stop_level":14.81,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2021-01-05","known_ts":"2021-01-05","bar_index":173,"type":"RECLAIM","strength":0.863,"price":14.9,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-01-04 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2021-01-04","prior_stop_level":14.81,"sweep_low":14.57,"atr14":0.411994,"stop_level":14.364003,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-01-22","known_ts":"2021-01-22","bar_index":177,"type":"RECLAIM","strength":1.0,"price":15.07,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2021-01-04 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-01-27","known_ts":"2021-01-27","bar_index":178,"type":"SELL","basis":"structure_stop","strength":1.0,"price":14.26,"stop_level":14.87,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-02-02","known_ts":"2021-02-02","bar_index":179,"type":"RECLAIM","strength":1.0,"price":15.01,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-01-27 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"anchor_ts":"2021-01-27","prior_stop_level":14.87,"sweep_low":13.95,"atr14":0.492326,"stop_level":13.703837,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-02-04","known_ts":"2021-02-08","bar_index":180,"type":"BUY","strength":1.0,"price":16.77,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":30},{"ts":"2021-03-02","known_ts":"2021-03-02","bar_index":185,"type":"SELL","basis":"structure_stop","strength":1.0,"price":15.61,"stop_level":15.65,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-03-09","known_ts":"2021-03-09","bar_index":187,"type":"RECLAIM","strength":1.0,"price":15.96,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-03-02 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"anchor_ts":"2021-03-02","prior_stop_level":15.65,"sweep_low":14.97,"atr14":0.637905,"stop_level":14.651048,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-03-16","known_ts":"2021-03-16","bar_index":189,"type":"RECLAIM","strength":1.0,"price":16.35,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2021-03-02 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-04-19","known_ts":"2021-04-19","bar_index":196,"type":"SELL","basis":"structure_stop","strength":1.0,"price":18.25,"stop_level":18.48,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-05-06","known_ts":"2021-05-06","bar_index":201,"type":"RECLAIM","strength":1.0,"price":18.94,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2021-04-19 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-05-19","known_ts":"2021-05-21","bar_index":204,"type":"BUY","strength":1.0,"price":19.25,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":20},{"ts":"2021-08-02","known_ts":"2021-08-04","bar_index":221,"type":"BUY","strength":0.725,"price":17.76,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":55},{"ts":"2021-09-17","known_ts":"2021-09-17","bar_index":232,"type":"SELL","basis":"structure_stop","strength":0.725,"price":17.48,"stop_level":17.91,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2021-09-23","known_ts":"2021-09-23","bar_index":233,"type":"RECLAIM","strength":0.725,"price":18.02,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-09-17 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"anchor_ts":"2021-09-17","prior_stop_level":17.91,"sweep_low":17.02,"atr14":0.642712,"stop_level":16.698644,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-10-26","known_ts":"2021-10-28","bar_index":241,"type":"BUY","strength":0.725,"price":17.77,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":60},{"ts":"2021-11-30","known_ts":"2021-11-30","bar_index":249,"type":"SELL","basis":"structure_stop","strength":1.0,"price":24.97,"stop_level":25.04,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-12-01","known_ts":"2021-12-01","bar_index":249,"type":"RECLAIM","strength":0.863,"price":25.17,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-11-30 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"anchor_ts":"2021-11-30","prior_stop_level":25.04,"sweep_low":24.54,"atr14":1.312386,"stop_level":23.883807,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-12-14","known_ts":"2021-12-14","bar_index":252,"type":"SELL","basis":"structure_stop","strength":1.0,"price":24.75,"stop_level":25.04,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-12-21","known_ts":"2021-12-21","bar_index":254,"type":"RECLAIM","strength":1.0,"price":25.15,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-12-14 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"anchor_ts":"2021-12-14","prior_stop_level":25.04,"sweep_low":23.355,"atr14":1.358475,"stop_level":22.675763,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-12-30","known_ts":"2021-12-30","bar_index":256,"type":"RECLAIM","strength":1.0,"price":25.69,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2021-12-14 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2022-02-16","known_ts":"2022-02-18","bar_index":267,"type":"BUY","strength":0.863,"price":27.17,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":55},{"ts":"2022-06-23","known_ts":"2022-06-27","bar_index":296,"type":"BOTTOM_WATCH","scored":false,"subtype":"early_dot","quality":"washout_early_watch","quality_reason":"early momentum turn inside a point-in-time own-name washout","trigger_ts":"2022-06-23","trigger_known_ts":"2022-06-27","strength":0.45,"price":13.64,"reasons":["bear_block","own_name_washout","early_momentum_turn"],"washout_ctx":{"rule":"bear_block & (dd252<=-35% | monthly_os_dwell>=3) & recent_3d_os","drawdown_252":-0.497976,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":12.17,"atr14":0.86971,"stop_level":11.735145,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-07-12","known_ts":"2022-07-14","bar_index":300,"type":"BUY","strength":0.45,"price":12.54,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2022-07-12","known_ts":"2022-07-14","bar_index":300,"type":"BOTTOM_WATCH","scored":false,"subtype":"blocked_trigger","quality":"washout_trigger_watch","quality_reason":"blocked Oracle turn inside a point-in-time own-name washout","trigger_ts":"2022-07-12","trigger_known_ts":"2022-07-14","strength":0.45,"price":12.54,"reasons":["bear_block","own_name_washout","raw_buy_trigger"],"washout_ctx":{"rule":"bear_block & (dd252<=-35% | monthly_os_dwell>=3) & recent_3d_os","drawdown_252":-0.538462,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":11.96,"atr14":0.676421,"stop_level":11.621789,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-07-15","known_ts":"2022-07-19","bar_index":301,"type":"BOTTOM_WATCH","scored":false,"subtype":"early_dot","quality":"washout_early_watch","quality_reason":"early momentum turn inside a point-in-time own-name washout","trigger_ts":"2022-07-15","trigger_known_ts":"2022-07-19","strength":0.45,"price":13.2,"reasons":["bear_block","own_name_washout","early_momentum_turn"],"washout_ctx":{"rule":"bear_block & (dd252<=-35% | monthly_os_dwell>=3) & recent_3d_os","drawdown_252":-0.51417,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":11.96,"atr14":0.617036,"stop_level":11.651482,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-08-26","known_ts":"2022-08-26","bar_index":311,"type":"SELL","basis":"structure_stop","strength":0.588,"price":17.24,"stop_level":17.47,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-09-06","known_ts":"2022-09-06","bar_index":313,"type":"SELL","basis":"structure_stop","strength":0.588,"price":16.33,"stop_level":16.88,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-09-12","known_ts":"2022-09-12","bar_index":314,"type":"RECLAIM","strength":0.588,"price":17.35,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2022-09-06 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"anchor_ts":"2022-09-06","prior_stop_level":16.88,"sweep_low":15.92,"atr14":0.825587,"stop_level":15.507206,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-10-26","known_ts":"2022-10-28","bar_index":325,"type":"BUY","strength":0.725,"price":18.46,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":70},{"ts":"2022-11-30","known_ts":"2022-12-02","bar_index":333,"type":"BUY","strength":0.725,"price":17.8,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":65},{"ts":"2022-12-23","known_ts":"2022-12-23","bar_index":338,"type":"SELL","basis":"structure_stop","strength":0.863,"price":17.84,"stop_level":18.02,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2022-12-27","known_ts":"2022-12-27","bar_index":339,"type":"RECLAIM","strength":0.863,"price":18.19,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2022-12-23 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2022-12-23","prior_stop_level":18.02,"sweep_low":17.71,"atr14":0.587047,"stop_level":17.416476,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-01-10","known_ts":"2023-01-10","bar_index":342,"type":"RECLAIM","strength":0.863,"price":20.45,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2022-12-23 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-03-24","known_ts":"2023-03-28","bar_index":359,"type":"BUY","strength":0.863,"price":22.15,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":55},{"ts":"2023-05-08","known_ts":"2023-05-10","bar_index":369,"type":"BUY","strength":1.0,"price":23.0,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":40},{"ts":"2023-06-21","known_ts":"2023-06-23","bar_index":379,"type":"BUY","strength":0.863,"price":22.27,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":30},{"ts":"2023-08-03","known_ts":"2023-08-03","bar_index":389,"type":"SELL","basis":"structure_stop","strength":1.0,"price":22.48,"stop_level":23.47,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2023-11-01","known_ts":"2023-11-03","bar_index":410,"type":"BUY","strength":0.588,"price":19.51,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true},"quality":"block","quality_reason":"counter-trend, no 200-reclaim/hold","tier":"aplus","score":80},{"ts":"2023-12-28","known_ts":"2023-12-28","bar_index":423,"type":"SELL","basis":"structure_stop","strength":0.863,"price":24.18,"stop_level":24.22,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-12-29","known_ts":"2023-12-29","bar_index":423,"type":"RECLAIM","strength":0.863,"price":25.22,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-12-28 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2023-12-28","prior_stop_level":24.22,"sweep_low":23.79,"atr14":0.902881,"stop_level":23.338559,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-01-03","known_ts":"2024-01-03","bar_index":424,"type":"SELL","basis":"structure_stop","strength":0.863,"price":23.89,"stop_level":24.22,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-01-05","known_ts":"2024-01-05","bar_index":424,"type":"SELL","basis":"structure_stop","strength":0.863,"price":24.13,"stop_level":24.22,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-01-04","known_ts":"2024-01-04","bar_index":424,"type":"RECLAIM","strength":0.863,"price":24.27,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-01-03 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2024-01-03","prior_stop_level":24.22,"sweep_low":23.778,"atr14":0.928328,"stop_level":23.313836,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-01-30","known_ts":"2024-01-30","bar_index":430,"type":"RECLAIM","strength":0.863,"price":24.19,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2024-01-05 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-05-08","known_ts":"2024-05-10","bar_index":453,"type":"BUY","strength":0.725,"price":23.41,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":45},{"ts":"2024-06-07","known_ts":"2024-06-07","bar_index":460,"type":"SELL","basis":"structure_stop","strength":0.725,"price":22.72,"stop_level":22.9,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-06-10","known_ts":"2024-06-10","bar_index":460,"type":"RECLAIM","strength":0.725,"price":23.09,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-06-07 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2024-06-07","prior_stop_level":22.9,"sweep_low":22.57,"atr14":0.619386,"stop_level":22.260307,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-06-25","known_ts":"2024-06-25","bar_index":463,"type":"SELL","basis":"structure_stop","strength":0.725,"price":22.41,"stop_level":22.72,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-06-28","known_ts":"2024-06-28","bar_index":464,"type":"RECLAIM","strength":0.725,"price":22.94,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-06-25 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2024-06-25","prior_stop_level":22.72,"sweep_low":21.67,"atr14":0.571217,"stop_level":21.384392,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-07-10","known_ts":"2024-07-12","bar_index":467,"type":"BUY","strength":0.725,"price":24.62,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":45},{"ts":"2024-08-12","known_ts":"2024-08-12","bar_index":474,"type":"SELL","basis":"structure_stop","strength":0.863,"price":25.01,"stop_level":25.75,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-08-13","known_ts":"2024-08-13","bar_index":475,"type":"RECLAIM","strength":0.863,"price":25.79,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-08-12 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2024-08-12","prior_stop_level":25.75,"sweep_low":24.89,"atr14":1.114581,"stop_level":24.332709,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-08-26","known_ts":"2024-08-26","bar_index":478,"type":"RECLAIM","strength":0.863,"price":26.7,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2024-08-12 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-09-17","known_ts":"2024-09-19","bar_index":483,"type":"BUY","strength":1.0,"price":28.86,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":40},{"ts":"2025-01-17","known_ts":"2025-01-22","bar_index":511,"type":"BUY","strength":0.725,"price":24.98,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":35},{"ts":"2025-02-24","known_ts":"2025-02-24","bar_index":519,"type":"SELL","basis":"structure_stop","strength":0.588,"price":25.13,"stop_level":25.22,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-02-26","known_ts":"2025-02-26","bar_index":519,"type":"SELL","basis":"structure_stop","strength":0.588,"price":25.07,"stop_level":25.22,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-02-25","known_ts":"2025-02-25","bar_index":519,"type":"RECLAIM","strength":0.725,"price":25.72,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-02-24 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2025-02-24","prior_stop_level":25.22,"sweep_low":25.05,"atr14":1.066081,"stop_level":24.516959,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-03-12","known_ts":"2025-03-14","bar_index":523,"type":"REBUY","strength":0.725,"price":25.96,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":30},{"ts":"2025-05-02","known_ts":"2025-05-06","bar_index":535,"type":"BUY","strength":0.45,"price":24.91,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2025-06-25","known_ts":"2025-06-27","bar_index":547,"type":"BUY","strength":0.45,"price":22.48,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2025-07-17","known_ts":"2025-07-17","bar_index":552,"type":"SELL","basis":"structure_stop","strength":0.588,"price":22.49,"stop_level":23.3,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-08-07","known_ts":"2025-08-07","bar_index":557,"type":"RECLAIM","strength":0.725,"price":25.08,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-07-17 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-09-10","known_ts":"2025-09-10","bar_index":564,"type":"SELL","basis":"structure_stop","strength":0.863,"price":27.08,"stop_level":27.53,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-09-12","known_ts":"2025-09-12","bar_index":565,"type":"SELL","basis":"structure_stop","strength":0.863,"price":27.51,"stop_level":27.53,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-09-11","known_ts":"2025-09-11","bar_index":565,"type":"RECLAIM","strength":0.863,"price":27.71,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-09-10 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2025-09-10","prior_stop_level":27.53,"sweep_low":26.91,"atr14":0.85752,"stop_level":26.48124,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-09-16","known_ts":"2025-09-16","bar_index":566,"type":"RECLAIM","strength":0.863,"price":27.67,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-09-12 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"anchor_ts":"2025-09-12","prior_stop_level":27.53,"sweep_low":26.955,"atr14":0.824753,"stop_level":26.542624,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-09-29","known_ts":"2025-09-29","bar_index":569,"type":"RECLAIM","strength":0.863,"price":27.42,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-09-12 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-12-15","known_ts":"2025-12-17","bar_index":587,"type":"BUY","strength":0.45,"price":20.46,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2026-01-27","known_ts":"2026-01-27","bar_index":596,"type":"SELL","basis":"structure_stop","strength":0.588,"price":21.09,"stop_level":21.74,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2026-03-03","known_ts":"2026-03-03","bar_index":604,"type":"SELL","basis":"structure_stop","strength":0.725,"price":21.19,"stop_level":21.32,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2026-03-05","known_ts":"2026-03-05","bar_index":605,"type":"SELL","basis":"structure_stop","strength":0.725,"price":20.65,"stop_level":21.32,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2026-03-31","known_ts":"2026-04-02","bar_index":611,"type":"BUY","strength":0.45,"price":20.56,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2026-04-27","known_ts":"2026-04-27","bar_index":617,"type":"RECLAIM","strength":0.725,"price":20.93,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2026-03-31 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2026-05-04","known_ts":"2026-05-04","bar_index":618,"type":"SELL","basis":"structure_stop","strength":0.725,"price":20.51,"stop_level":20.58,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2026-05-05","known_ts":"2026-05-05","bar_index":619,"type":"RECLAIM","strength":0.725,"price":21.06,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2026-05-04 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"anchor_ts":"2026-05-04","prior_stop_level":20.58,"sweep_low":20.37,"atr14":0.806742,"stop_level":19.966629,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-05-18","known_ts":"2026-05-18","bar_index":622,"type":"RECLAIM","strength":0.863,"price":22.975,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2026-05-04 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}}],"state":{"position_hint":"long","last_signal":"RECLAIM","last_scored_signal":"RECLAIM","last_scored_ts":"2026-05-18","last_scored_basis":null,"bars_since_signal":17,"extended":true,"strong_bull":true,"overbought":true,"weeklyBull":true,"above200":true},"early_dots":["2019-11-12","2019-12-04","2020-01-23","2020-02-10","2020-04-09","2020-09-25","2021-07-01","2021-07-20","2021-10-18","2022-01-21","2022-03-15","2022-04-08","2022-05-02","2022-10-21","2022-11-16","2023-03-16","2023-06-02","2023-08-24","2023-10-06","2023-11-01","2024-01-25","2024-04-01","2024-04-25","2024-09-12","2024-10-16","2024-11-01","2024-11-27","2025-01-14","2025-02-10","2025-04-15","2025-06-03","2025-06-20","2025-10-15","2025-11-21","2026-03-23"],"warnings":[{"ts":"2022-08-23","kind":"arm","px":17.75},{"ts":"2022-08-26","kind":"confirm","px":17.24,"level":17.47},{"ts":"2022-09-02","kind":"arm","px":16.8},{"ts":"2022-09-06","kind":"confirm","px":16.33,"level":16.88},{"ts":"2022-12-22","kind":"arm","px":17.78},{"ts":"2022-12-23","kind":"confirm","px":17.84,"level":18.02},{"ts":"2023-01-17","kind":"arm","px":19.97},{"ts":"2023-07-07","kind":"arm","px":22.67},{"ts":"2023-08-03","kind":"confirm","px":22.48,"level":23.47},{"ts":"2023-11-22","kind":"arm","px":22.84},{"ts":"2023-12-28","kind":"confirm","px":24.18,"level":24.22},{"ts":"2023-12-29","kind":"arm","px":25.22},{"ts":"2024-01-03","kind":"confirm","px":23.89,"level":24.22},{"ts":"2024-01-04","kind":"arm","px":24.27},{"ts":"2024-01-05","kind":"confirm","px":24.13,"level":24.22},{"ts":"2024-05-30","kind":"arm","px":23.18},{"ts":"2024-06-07","kind":"confirm","px":22.72,"level":22.9},{"ts":"2024-06-18","kind":"arm","px":22.84},{"ts":"2024-06-25","kind":"confirm","px":22.41,"level":22.72},{"ts":"2024-07-29","kind":"arm","px":27.49},{"ts":"2024-08-12","kind":"confirm","px":25.01,"level":25.75},{"ts":"2025-02-06","kind":"arm","px":26.36},{"ts":"2025-02-24","kind":"confirm","px":25.13,"level":25.22},{"ts":"2025-02-25","kind":"arm","px":25.72},{"ts":"2025-02-26","kind":"confirm","px":25.07,"level":25.22},{"ts":"2025-07-16","kind":"arm","px":22.62},{"ts":"2025-07-17","kind":"confirm","px":22.49,"level":23.3},{"ts":"2025-09-09","kind":"arm","px":27.38},{"ts":"2025-09-10","kind":"confirm","px":27.08,"level":27.53},{"ts":"2025-09-11","kind":"arm","px":27.71},{"ts":"2025-09-12","kind":"confirm","px":27.51,"level":27.53},{"ts":"2026-01-26","kind":"arm","px":21.49},{"ts":"2026-01-27","kind":"confirm","px":21.09,"level":21.74},{"ts":"2026-02-27","kind":"arm","px":21.92},{"ts":"2026-03-03","kind":"confirm","px":21.19,"level":21.32},{"ts":"2026-03-04","kind":"arm","px":21.29},{"ts":"2026-03-05","kind":"confirm","px":20.65,"level":21.32},{"ts":"2026-05-01","kind":"arm","px":21.62},{"ts":"2026-05-04","kind":"confirm","px":20.51,"level":20.58},{"ts":"2026-05-22","kind":"arm","px":22.99}],"meta":{"leakfree":true,"scored":false,"score_basis":"full","validated_against":"signal_layer/confluence.py","validation":{},"honest_read":"RSI-MACD × StochRSI MTF confluence on daily→3D. Risk/timing overlay.","warnings":[]}}}