{"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":"IBP","timeframe":"3D","as_of":"2026-08-13T00:00:00Z","bar_quality":"real_ohlc","signal_era":"gc_v2_wo2","signals":[{"ts":"2014-08-15","known_ts":"2014-08-19","bar_index":43,"type":"BUY","strength":0.45,"price":11.6331,"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":"2014-09-16","known_ts":"2014-09-16","bar_index":50,"type":"RECLAIM","strength":0.725,"price":13.0929,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2014-08-15 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2014-09-24","known_ts":"2014-09-24","bar_index":52,"type":"SELL","basis":"structure_stop","strength":0.725,"price":12.7006,"stop_level":12.7918,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2014-09-26","known_ts":"2014-09-26","bar_index":52,"type":"RECLAIM","strength":0.725,"price":13.0564,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2014-09-24 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":"2014-09-24","prior_stop_level":12.7918,"sweep_low":12.5455,"atr14":0.351649,"stop_level":12.369675,"risk_basis":"daily_ohlc_atr14"},{"ts":"2014-10-20","known_ts":"2014-10-22","bar_index":58,"type":"REBUY","strength":0.725,"price":13.4579,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":30},{"ts":"2014-12-31","known_ts":"2014-12-31","bar_index":74,"type":"SELL","basis":"structure_stop","strength":0.863,"price":16.2589,"stop_level":16.2681,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2015-01-08","known_ts":"2015-01-08","bar_index":76,"type":"RECLAIM","strength":0.863,"price":17.071,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2014-12-31 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":"2014-12-31","prior_stop_level":16.2681,"sweep_low":15.6476,"atr14":0.600339,"stop_level":15.34743,"risk_basis":"daily_ohlc_atr14"},{"ts":"2015-03-23","known_ts":"2015-03-23","bar_index":93,"type":"RECLAIM","strength":0.863,"price":19.1877,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2014-12-31 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2015-04-29","known_ts":"2015-04-29","bar_index":101,"type":"SELL","basis":"structure_stop","strength":0.863,"price":18.9231,"stop_level":19.1877,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2015-05-01","known_ts":"2015-05-01","bar_index":102,"type":"RECLAIM","strength":0.863,"price":19.6622,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2015-04-29 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":"2015-04-29","prior_stop_level":19.1877,"sweep_low":17.7553,"atr14":0.846074,"stop_level":17.332263,"risk_basis":"daily_ohlc_atr14"},{"ts":"2015-05-14","known_ts":"2015-05-14","bar_index":105,"type":"SELL","basis":"structure_stop","strength":0.725,"price":18.8319,"stop_level":18.9231,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false}},{"ts":"2015-05-19","known_ts":"2015-05-19","bar_index":106,"type":"RECLAIM","strength":0.725,"price":19.1421,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2015-05-14 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":"2015-05-14","prior_stop_level":18.9231,"sweep_low":18.4305,"atr14":0.759423,"stop_level":18.050789,"risk_basis":"daily_ohlc_atr14"},{"ts":"2015-07-06","known_ts":"2015-07-06","bar_index":117,"type":"RECLAIM","strength":1.0,"price":21.9432,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2015-05-14 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2015-08-07","known_ts":"2015-08-11","bar_index":125,"type":"REBUY","strength":1.0,"price":27.0344,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":30},{"ts":"2015-11-23","known_ts":"2015-11-25","bar_index":150,"type":"BUY","strength":0.725,"price":22.4176,"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":"2015-12-15","known_ts":"2015-12-17","bar_index":155,"type":"REBUY","strength":0.588,"price":22.7096,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":55},{"ts":"2016-01-07","known_ts":"2016-01-07","bar_index":160,"type":"SELL","basis":"structure_stop","strength":0.45,"price":19.9724,"stop_level":21.0308,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2016-02-11","known_ts":"2016-02-16","bar_index":168,"type":"BUY","strength":0.45,"price":19.0874,"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,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2016-03-01","known_ts":"2016-03-01","bar_index":172,"type":"RECLAIM","strength":0.725,"price":22.1804,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2016-02-11 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2016-04-28","known_ts":"2016-04-28","bar_index":185,"type":"SELL","basis":"structure_stop","strength":0.863,"price":24.5527,"stop_level":24.9267,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2016-05-02","known_ts":"2016-05-02","bar_index":186,"type":"RECLAIM","strength":0.863,"price":24.945,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2016-04-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":"2016-04-28","prior_stop_level":24.9267,"sweep_low":23.9322,"atr14":0.65716,"stop_level":23.60362,"risk_basis":"daily_ohlc_atr14"},{"ts":"2016-05-12","known_ts":"2016-05-12","bar_index":189,"type":"RECLAIM","strength":0.863,"price":29.4705,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2016-04-28 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2016-06-27","known_ts":"2016-06-27","bar_index":199,"type":"SELL","basis":"structure_stop","strength":0.863,"price":30.3829,"stop_level":30.8482,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2016-06-28","known_ts":"2016-06-28","bar_index":199,"type":"RECLAIM","strength":0.863,"price":31.3044,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2016-06-27 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":"2016-06-27","prior_stop_level":30.8482,"sweep_low":30.2551,"atr14":0.899734,"stop_level":29.805233,"risk_basis":"daily_ohlc_atr14"},{"ts":"2016-06-29","known_ts":"2016-07-01","bar_index":200,"type":"REBUY","strength":0.863,"price":33.2387,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":15},{"ts":"2016-09-15","known_ts":"2016-09-19","bar_index":218,"type":"BUY","strength":0.725,"price":31.8883,"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":"2016-10-11","known_ts":"2016-10-11","bar_index":224,"type":"SELL","basis":"structure_stop","strength":0.725,"price":32.1164,"stop_level":32.2989,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2016-10-12","known_ts":"2016-10-12","bar_index":224,"type":"RECLAIM","strength":0.725,"price":32.7551,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2016-10-11 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":"2016-10-11","prior_stop_level":32.2989,"sweep_low":31.8427,"atr14":0.796848,"stop_level":31.444276,"risk_basis":"daily_ohlc_atr14"},{"ts":"2016-10-14","known_ts":"2016-10-14","bar_index":225,"type":"SELL","basis":"structure_stop","strength":0.725,"price":31.1128,"stop_level":32.2989,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2016-11-09","known_ts":"2016-11-11","bar_index":231,"type":"BUY","strength":0.725,"price":34.7168,"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":"2016-12-15","known_ts":"2016-12-15","bar_index":239,"type":"SELL","basis":"structure_stop","strength":0.863,"price":37.2259,"stop_level":37.3627,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2016-12-19","known_ts":"2016-12-19","bar_index":240,"type":"RECLAIM","strength":0.863,"price":37.4996,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2016-12-15 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":"2016-12-15","prior_stop_level":37.3627,"sweep_low":36.4503,"atr14":1.118041,"stop_level":35.891279,"risk_basis":"daily_ohlc_atr14"},{"ts":"2017-01-03","known_ts":"2017-01-03","bar_index":243,"type":"RECLAIM","strength":1.0,"price":38.9594,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2016-12-15 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2017-08-22","known_ts":"2017-08-22","bar_index":296,"type":"SELL","basis":"structure_stop","strength":0.863,"price":51.6874,"stop_level":52.7367,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2017-08-24","known_ts":"2017-08-24","bar_index":297,"type":"SELL","basis":"structure_stop","strength":0.725,"price":50.0451,"stop_level":52.7367,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2017-09-25","known_ts":"2017-09-25","bar_index":304,"type":"RECLAIM","strength":0.863,"price":58.3935,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2017-08-24 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2017-10-25","known_ts":"2017-10-25","bar_index":311,"type":"SELL","basis":"structure_stop","strength":1.0,"price":58.941,"stop_level":59.0778,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2017-10-26","known_ts":"2017-10-26","bar_index":311,"type":"RECLAIM","strength":1.0,"price":60.3095,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2017-10-25 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":"2017-10-25","prior_stop_level":59.0778,"sweep_low":58.211,"atr14":1.243153,"stop_level":57.589423,"risk_basis":"daily_ohlc_atr14"},{"ts":"2017-11-07","known_ts":"2017-11-07","bar_index":314,"type":"SELL","basis":"structure_stop","strength":1.0,"price":56.2494,"stop_level":58.941,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2017-11-14","known_ts":"2017-11-14","bar_index":316,"type":"RECLAIM","strength":0.863,"price":61.4044,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2017-11-07 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":"2017-11-07","prior_stop_level":58.941,"sweep_low":54.5979,"atr14":1.98084,"stop_level":53.60748,"risk_basis":"daily_ohlc_atr14"},{"ts":"2017-11-22","known_ts":"2017-11-22","bar_index":318,"type":"RECLAIM","strength":1.0,"price":67.4263,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2017-11-07 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2018-06-18","known_ts":"2018-06-18","bar_index":365,"type":"SELL","basis":"structure_stop","strength":0.588,"price":54.5614,"stop_level":55.1545,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2018-06-19","known_ts":"2018-06-19","bar_index":365,"type":"RECLAIM","strength":0.588,"price":55.3826,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2018-06-18 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":"2018-06-18","prior_stop_level":55.1545,"sweep_low":53.9228,"atr14":1.730632,"stop_level":53.057484,"risk_basis":"daily_ohlc_atr14"},{"ts":"2018-06-21","known_ts":"2018-06-21","bar_index":366,"type":"SELL","basis":"structure_stop","strength":0.588,"price":54.4702,"stop_level":55.1545,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2018-07-18","known_ts":"2018-07-20","bar_index":372,"type":"BUY","strength":0.45,"price":53.2385,"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":"2018-08-21","known_ts":"2018-08-23","bar_index":380,"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":"2018-08-21","trigger_known_ts":"2018-08-23","strength":0.45,"price":42.609,"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.3939,"monthly_oversold_dwell":3,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":41.0944,"atr14":1.764683,"stop_level":40.212058,"risk_basis":"daily_ohlc_atr14"},{"ts":"2018-09-07","known_ts":"2018-09-11","bar_index":384,"type":"BUY","strength":0.45,"price":44.5251,"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,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2018-09-07","known_ts":"2018-09-11","bar_index":384,"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":"2018-09-07","trigger_known_ts":"2018-09-11","strength":0.45,"price":44.5251,"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.366644,"monthly_oversold_dwell":4,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":41.6419,"atr14":1.45482,"stop_level":40.91449,"risk_basis":"daily_ohlc_atr14"},{"ts":"2018-10-29","known_ts":"2018-10-31","bar_index":396,"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":"2018-10-29","trigger_known_ts":"2018-10-31","strength":0.45,"price":27.7917,"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.604672,"monthly_oversold_dwell":6,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":26.6785,"atr14":1.632272,"stop_level":25.862364,"risk_basis":"daily_ohlc_atr14"},{"ts":"2018-11-01","known_ts":"2018-11-05","bar_index":397,"type":"BUY","strength":0.45,"price":32.673,"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,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2018-11-01","known_ts":"2018-11-05","bar_index":397,"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":"2018-11-01","trigger_known_ts":"2018-11-05","strength":0.45,"price":32.673,"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.535237,"monthly_oversold_dwell":6,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":26.6785,"atr14":2.037846,"stop_level":25.659577,"risk_basis":"daily_ohlc_atr14"},{"ts":"2018-12-11","known_ts":"2018-12-11","bar_index":405,"type":"SELL","basis":"structure_stop","strength":0.588,"price":30.5562,"stop_level":31.0033,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2018-12-12","known_ts":"2018-12-12","bar_index":406,"type":"RECLAIM","strength":0.588,"price":31.7606,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2018-12-11 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":"2018-12-11","prior_stop_level":31.0033,"sweep_low":30.2916,"atr14":1.845461,"stop_level":29.36887,"risk_basis":"daily_ohlc_atr14"},{"ts":"2018-12-17","known_ts":"2018-12-17","bar_index":407,"type":"SELL","basis":"structure_stop","strength":0.588,"price":29.9449,"stop_level":31.0033,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2019-02-19","known_ts":"2019-02-19","bar_index":421,"type":"RECLAIM","strength":0.863,"price":41.9977,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2018-12-17 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2019-03-14","known_ts":"2019-03-14","bar_index":426,"type":"SELL","basis":"structure_stop","strength":0.725,"price":39.4339,"stop_level":39.7988,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2019-03-15","known_ts":"2019-03-15","bar_index":427,"type":"RECLAIM","strength":0.725,"price":40.4558,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2019-03-14 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":"2019-03-14","prior_stop_level":39.7988,"sweep_low":39.1602,"atr14":1.62866,"stop_level":38.34587,"risk_basis":"daily_ohlc_atr14"},{"ts":"2019-03-25","known_ts":"2019-03-27","bar_index":429,"type":"REBUY","strength":0.863,"price":44.0597,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":40},{"ts":"2019-04-25","known_ts":"2019-04-25","bar_index":436,"type":"SELL","basis":"structure_stop","strength":0.863,"price":43.567,"stop_level":46.0944,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2019-05-02","known_ts":"2019-05-02","bar_index":438,"type":"RECLAIM","strength":0.863,"price":48.4666,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2019-04-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":"2019-04-25","prior_stop_level":46.0944,"sweep_low":42.7276,"atr14":1.738738,"stop_level":41.858231,"risk_basis":"daily_ohlc_atr14"},{"ts":"2019-05-10","known_ts":"2019-05-10","bar_index":440,"type":"RECLAIM","strength":0.863,"price":50.3005,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2019-04-25 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2019-07-17","known_ts":"2019-07-17","bar_index":455,"type":"SELL","basis":"structure_stop","strength":1.0,"price":49.7257,"stop_level":51.067,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2019-08-19","known_ts":"2019-08-21","bar_index":463,"type":"BUY","strength":0.863,"price":53.9319,"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":30},{"ts":"2019-10-14","known_ts":"2019-10-16","bar_index":476,"type":"REBUY","strength":0.863,"price":57.2986,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":40},{"ts":"2019-12-02","known_ts":"2019-12-02","bar_index":487,"type":"SELL","basis":"structure_stop","strength":1.0,"price":63.3205,"stop_level":63.6581,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2019-12-03","known_ts":"2019-12-03","bar_index":487,"type":"RECLAIM","strength":1.0,"price":64.1599,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2019-12-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":"2019-12-02","prior_stop_level":63.6581,"sweep_low":62.7,"atr14":1.845173,"stop_level":61.777414,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-01-23","known_ts":"2020-01-23","bar_index":499,"type":"RECLAIM","strength":1.0,"price":69.6799,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2019-12-02 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2020-02-19","known_ts":"2020-02-21","bar_index":505,"type":"REBUY","strength":0.863,"price":72.2072,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":20},{"ts":"2020-04-20","known_ts":"2020-04-22","bar_index":519,"type":"BUY","strength":0.588,"price":34.0598,"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":25,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2020-06-26","known_ts":"2020-06-26","bar_index":535,"type":"SELL","basis":"structure_stop","strength":0.725,"price":58.3935,"stop_level":59.5523,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-06-29","known_ts":"2020-06-29","bar_index":535,"type":"RECLAIM","strength":0.725,"price":61.4318,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-06-26 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-06-26","prior_stop_level":59.5523,"sweep_low":58.2932,"atr14":3.688927,"stop_level":56.448737,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-07-15","known_ts":"2020-07-15","bar_index":539,"type":"RECLAIM","strength":0.725,"price":70.2365,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-06-26 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-08-31","known_ts":"2020-08-31","bar_index":550,"type":"SELL","basis":"structure_stop","strength":1.0,"price":79.2145,"stop_level":79.6068,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2020-09-01","known_ts":"2020-09-01","bar_index":550,"type":"RECLAIM","strength":1.0,"price":85.6742,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-08-31 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":"2020-08-31","prior_stop_level":79.6068,"sweep_low":78.6123,"atr14":2.744477,"stop_level":77.240061,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-09-17","known_ts":"2020-09-17","bar_index":554,"type":"RECLAIM","strength":1.0,"price":86.3585,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-08-31 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2020-09-25","known_ts":"2020-09-29","bar_index":556,"type":"REBUY","strength":1.0,"price":91.5318,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":30},{"ts":"2020-10-29","known_ts":"2020-10-29","bar_index":564,"type":"SELL","basis":"structure_stop","strength":0.863,"price":84.9991,"stop_level":86.3585,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2020-11-02","known_ts":"2020-11-02","bar_index":564,"type":"RECLAIM","strength":0.863,"price":86.9151,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-10-29 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":"2020-10-29","prior_stop_level":86.3585,"sweep_low":81.5411,"atr14":4.028244,"stop_level":79.526978,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-12-21","known_ts":"2020-12-23","bar_index":576,"type":"BUY","strength":0.863,"price":97.499,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":30},{"ts":"2021-01-05","known_ts":"2021-01-07","bar_index":579,"type":"BUY","strength":0.725,"price":103.0007,"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":40},{"ts":"2021-02-04","known_ts":"2021-02-08","bar_index":586,"type":"REBUY","strength":0.725,"price":111.3947,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":20},{"ts":"2021-02-24","known_ts":"2021-02-24","bar_index":590,"type":"SELL","basis":"structure_stop","strength":1.0,"price":102.4624,"stop_level":109.1138,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-04-07","known_ts":"2021-04-09","bar_index":600,"type":"BUY","strength":0.725,"price":110.9452,"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":15},{"ts":"2021-05-19","known_ts":"2021-05-19","bar_index":610,"type":"SELL","basis":"structure_stop","strength":0.863,"price":105.0539,"stop_level":106.0145,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2021-05-20","known_ts":"2021-05-20","bar_index":610,"type":"RECLAIM","strength":0.863,"price":106.545,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-05-19 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-05-19","prior_stop_level":106.0145,"sweep_low":101.6966,"atr14":4.7314,"stop_level":99.3309,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-07-01","known_ts":"2021-07-06","bar_index":620,"type":"BUY","strength":0.725,"price":107.9,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":35},{"ts":"2021-07-23","known_ts":"2021-07-27","bar_index":625,"type":"BUY","strength":0.725,"price":107.8266,"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":55},{"ts":"2021-09-14","known_ts":"2021-09-14","bar_index":637,"type":"SELL","basis":"structure_stop","strength":0.863,"price":108.4449,"stop_level":109.4866,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2021-09-15","known_ts":"2021-09-15","bar_index":637,"type":"RECLAIM","strength":0.863,"price":109.6769,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-09-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-09-14","prior_stop_level":109.4866,"sweep_low":107.268,"atr14":3.252246,"stop_level":105.641877,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-10-21","known_ts":"2021-10-25","bar_index":646,"type":"BUY","strength":0.725,"price":112.5823,"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":"2021-11-30","known_ts":"2021-11-30","bar_index":655,"type":"SELL","basis":"structure_stop","strength":0.725,"price":118.6872,"stop_level":120.7007,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2021-12-02","known_ts":"2021-12-02","bar_index":655,"type":"RECLAIM","strength":0.725,"price":121.712,"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":false},"anchor_ts":"2021-11-30","prior_stop_level":120.7007,"sweep_low":114.228,"atr14":4.354381,"stop_level":112.05081,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-12-21","known_ts":"2021-12-21","bar_index":660,"type":"RECLAIM","strength":0.863,"price":128.0963,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2021-11-30 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2022-03-15","known_ts":"2022-03-17","bar_index":679,"type":"BUY","strength":0.45,"price":96.7892,"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,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2022-03-24","known_ts":"2022-03-24","bar_index":681,"type":"SELL","basis":"structure_stop","strength":0.45,"price":82.5078,"stop_level":89.8864,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2022-04-19","known_ts":"2022-04-21","bar_index":687,"type":"BUY","strength":0.45,"price":78.3194,"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,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2022-04-19","known_ts":"2022-04-21","bar_index":687,"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-04-19","trigger_known_ts":"2022-04-21","strength":0.45,"price":78.3194,"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.39447,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":71.3979,"atr14":3.572183,"stop_level":69.611809,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-06-13","known_ts":"2022-06-13","bar_index":699,"type":"SELL","basis":"structure_stop","strength":0.588,"price":78.6179,"stop_level":80.922,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-06-15","known_ts":"2022-06-15","bar_index":700,"type":"SELL","basis":"structure_stop","strength":0.588,"price":79.3061,"stop_level":80.922,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-06-28","known_ts":"2022-06-30","bar_index":703,"type":"REBUY","strength":0.588,"price":77.8642,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2022-08-02","known_ts":"2022-08-02","bar_index":711,"type":"RECLAIM","strength":0.725,"price":97.864,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2022-06-28 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2022-08-26","known_ts":"2022-08-26","bar_index":717,"type":"SELL","basis":"structure_stop","strength":0.725,"price":86.8248,"stop_level":91.9464,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-10-26","known_ts":"2022-10-28","bar_index":731,"type":"BUY","strength":0.588,"price":81.7911,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"block","quality_reason":"counter-trend, no 200-reclaim/hold","tier":"base","score":55},{"ts":"2022-11-25","known_ts":"2022-11-29","bar_index":738,"type":"BUY","strength":0.725,"price":77.6658,"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":60},{"ts":"2023-02-21","known_ts":"2023-02-21","bar_index":757,"type":"SELL","basis":"structure_stop","strength":0.863,"price":98.2429,"stop_level":101.3545,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-02-22","known_ts":"2023-02-22","bar_index":757,"type":"RECLAIM","strength":0.863,"price":105.4468,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-02-21 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-02-21","prior_stop_level":101.3545,"sweep_low":97.4603,"atr14":4.156033,"stop_level":95.382284,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-04-28","known_ts":"2023-04-28","bar_index":773,"type":"RECLAIM","strength":1.0,"price":115.8766,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2023-02-21 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2023-08-17","known_ts":"2023-08-17","bar_index":798,"type":"SELL","basis":"structure_stop","strength":1.0,"price":137.547,"stop_level":137.7669,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2023-08-18","known_ts":"2023-08-18","bar_index":798,"type":"RECLAIM","strength":1.0,"price":138.006,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-08-17 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":"2023-08-17","prior_stop_level":137.7669,"sweep_low":135.6154,"atr14":4.366371,"stop_level":133.432215,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-11-06","known_ts":"2023-11-08","bar_index":817,"type":"BUY","strength":0.588,"price":116.4085,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true},"quality":"take","quality_reason":"reclaimed 200 & held","tier":"base","score":60},{"ts":"2024-01-24","known_ts":"2024-01-24","bar_index":834,"type":"SELL","basis":"structure_stop","strength":1.0,"price":175.6926,"stop_level":176.1922,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-01-25","known_ts":"2024-01-25","bar_index":835,"type":"RECLAIM","strength":1.0,"price":179.2851,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-01-24 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":"2024-01-24","prior_stop_level":176.1922,"sweep_low":174.4439,"atr14":5.5841,"stop_level":171.65185,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-01-30","known_ts":"2024-02-01","bar_index":836,"type":"REBUY","strength":1.0,"price":192.8191,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":30},{"ts":"2024-02-12","known_ts":"2024-02-14","bar_index":839,"type":"REBUY","strength":1.0,"price":203.8462,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":10},{"ts":"2024-04-02","known_ts":"2024-04-02","bar_index":850,"type":"SELL","basis":"structure_stop","strength":1.0,"price":245.1357,"stop_level":247.2563,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-04-03","known_ts":"2024-04-03","bar_index":850,"type":"RECLAIM","strength":1.0,"price":251.2459,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-04-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":"2024-04-02","prior_stop_level":247.2563,"sweep_low":239.6936,"atr14":6.975012,"stop_level":236.206094,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-04-10","known_ts":"2024-04-10","bar_index":852,"type":"SELL","basis":"structure_stop","strength":1.0,"price":232.7119,"stop_level":243.4798,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-07-10","known_ts":"2024-07-12","bar_index":873,"type":"BUY","strength":0.725,"price":223.8366,"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":"2024-08-06","known_ts":"2024-08-06","bar_index":879,"type":"SELL","basis":"structure_stop","strength":0.863,"price":217.3481,"stop_level":233.2928,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-08-09","known_ts":"2024-08-09","bar_index":880,"type":"SELL","basis":"structure_stop","strength":0.725,"price":206.6505,"stop_level":233.2928,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2024-09-12","known_ts":"2024-09-16","bar_index":888,"type":"BUY","strength":0.725,"price":219.7886,"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":15},{"ts":"2024-10-23","known_ts":"2024-10-23","bar_index":897,"type":"SELL","basis":"structure_stop","strength":0.725,"price":220.6046,"stop_level":227.2496,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-10-28","known_ts":"2024-10-28","bar_index":898,"type":"RECLAIM","strength":0.725,"price":228.0171,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-10-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":"2024-10-23","prior_stop_level":227.2496,"sweep_low":220.148,"atr14":8.121324,"stop_level":216.087338,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-01-03","known_ts":"2025-01-07","bar_index":914,"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":"2025-01-03","trigger_known_ts":"2025-01-07","strength":0.45,"price":169.1608,"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.353033,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":165.4629,"atr14":6.148969,"stop_level":162.388415,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-01-14","known_ts":"2025-01-16","bar_index":916,"type":"BUY","strength":0.45,"price":193.6937,"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-02-07","known_ts":"2025-02-07","bar_index":921,"type":"SELL","basis":"structure_stop","strength":0.588,"price":177.1017,"stop_level":182.5804,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-02-13","known_ts":"2025-02-13","bar_index":923,"type":"SELL","basis":"structure_stop","strength":0.588,"price":173.5108,"stop_level":182.5804,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-03-04","known_ts":"2025-03-06","bar_index":927,"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":"2025-03-04","trigger_known_ts":"2025-03-06","strength":0.45,"price":169.2874,"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.352549,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":155.4687,"atr14":7.419227,"stop_level":151.759087,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-03-07","known_ts":"2025-03-11","bar_index":928,"type":"BUY","strength":0.45,"price":166.582,"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,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2025-03-07","known_ts":"2025-03-11","bar_index":928,"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":"2025-03-07","trigger_known_ts":"2025-03-11","strength":0.45,"price":166.582,"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.362896,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":155.4687,"atr14":7.869471,"stop_level":151.533964,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-04-24","known_ts":"2025-04-28","bar_index":939,"type":"BUY","strength":0.588,"price":165.3616,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2025-06-03","known_ts":"2025-06-05","bar_index":948,"type":"BUY","strength":0.588,"price":167.2434,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true,"retro_override":true,"retro_ctx":{"group_id":"housing"}},{"ts":"2025-06-30","known_ts":"2025-06-30","bar_index":954,"type":"RECLAIM","strength":0.725,"price":193.0316,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2025-06-03 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-07-16","known_ts":"2025-07-16","bar_index":957,"type":"SELL","basis":"structure_stop","strength":0.725,"price":188.6871,"stop_level":189.2993,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-07-21","known_ts":"2025-07-21","bar_index":958,"type":"SELL","basis":"structure_stop","strength":0.588,"price":183.385,"stop_level":189.2993,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-07-17","known_ts":"2025-07-17","bar_index":958,"type":"RECLAIM","strength":0.725,"price":189.3487,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-07-16 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-07-16","prior_stop_level":189.2993,"sweep_low":185.3696,"atr14":6.695483,"stop_level":182.021858,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-07-22","known_ts":"2025-07-22","bar_index":959,"type":"RECLAIM","strength":0.588,"price":198.63,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-07-21 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":"2025-07-21","prior_stop_level":189.2993,"sweep_low":182.4173,"atr14":7.612026,"stop_level":178.611287,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-08-04","known_ts":"2025-08-04","bar_index":962,"type":"RECLAIM","strength":0.863,"price":209.1456,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-07-21 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-08-29","known_ts":"2025-08-29","bar_index":968,"type":"SELL","basis":"structure_stop","strength":0.863,"price":258.5143,"stop_level":259.9459,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-09-03","known_ts":"2025-09-03","bar_index":969,"type":"RECLAIM","strength":0.863,"price":261.4073,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-08-29 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-08-29","prior_stop_level":259.9459,"sweep_low":248.3542,"atr14":9.127701,"stop_level":243.790349,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-09-16","known_ts":"2025-09-16","bar_index":972,"type":"RECLAIM","strength":0.863,"price":260.7404,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-08-29 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2026-03-09","known_ts":"2026-03-09","bar_index":1011,"type":"SELL","basis":"structure_stop","strength":0.863,"price":296.3122,"stop_level":297.7577,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true}},{"ts":"2026-04-17","known_ts":"2026-04-21","bar_index":1021,"type":"BUY","strength":0.725,"price":313.7979,"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":70},{"ts":"2026-06-17","known_ts":"2026-06-22","bar_index":1035,"type":"BUY","strength":0.588,"price":211.92,"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":80,"retro_override":true,"retro_ctx":{"group_id":"housing"}}],"state":{"position_hint":"long","last_signal":"BUY","last_scored_signal":"BUY","last_scored_ts":"2026-06-22","last_scored_basis":null,"bars_since_signal":13,"extended":false,"strong_bull":false,"overbought":true,"weeklyBull":true,"above200":false},"early_dots":["2017-09-01","2017-11-14","2018-01-25","2018-02-15","2018-03-09","2018-03-27","2018-07-10","2019-12-31","2020-03-24","2020-11-03","2020-12-11","2021-01-08","2021-03-11","2021-03-29","2021-05-27","2021-06-23","2021-07-23","2021-10-05","2022-01-31","2022-03-02","2022-04-19","2022-09-27","2022-10-21","2023-03-24","2023-04-17","2023-06-02","2023-09-28","2023-10-27","2024-04-25","2024-05-30","2024-07-01","2024-09-12","2024-10-16","2024-11-22","2025-10-07","2025-11-10","2026-03-23","2026-03-31","2026-05-18","2026-06-12"],"warnings":[{"ts":"2021-11-30","kind":"confirm","px":118.6872,"level":120.7007},{"ts":"2022-03-23","kind":"arm","px":86.407},{"ts":"2022-03-24","kind":"confirm","px":82.5078,"level":89.8864},{"ts":"2022-06-10","kind":"arm","px":85.8473},{"ts":"2022-06-13","kind":"confirm","px":78.6179,"level":80.922},{"ts":"2022-06-14","kind":"arm","px":79.2031},{"ts":"2022-06-15","kind":"confirm","px":79.3061,"level":80.922},{"ts":"2022-08-09","kind":"arm","px":91.806},{"ts":"2022-08-26","kind":"confirm","px":86.8248,"level":91.9464},{"ts":"2022-12-21","kind":"arm","px":83.2693},{"ts":"2023-02-21","kind":"confirm","px":98.2429,"level":101.3545},{"ts":"2023-07-06","kind":"arm","px":128.6539},{"ts":"2023-08-17","kind":"confirm","px":137.547,"level":137.7669},{"ts":"2023-12-29","kind":"arm","px":175.6062},{"ts":"2024-01-24","kind":"confirm","px":175.6926,"level":176.1922},{"ts":"2024-03-11","kind":"arm","px":227.293},{"ts":"2024-04-02","kind":"confirm","px":245.1357,"level":247.2563},{"ts":"2024-04-04","kind":"arm","px":243.4798},{"ts":"2024-04-10","kind":"confirm","px":232.7119,"level":243.4798},{"ts":"2024-08-05","kind":"arm","px":216.291},{"ts":"2024-08-06","kind":"confirm","px":217.3481,"level":233.2928},{"ts":"2024-08-08","kind":"arm","px":208.2896},{"ts":"2024-08-09","kind":"confirm","px":206.6505,"level":233.2928},{"ts":"2024-10-10","kind":"arm","px":227.2496},{"ts":"2024-10-23","kind":"confirm","px":220.6046,"level":227.2496},{"ts":"2025-02-05","kind":"arm","px":186.6676},{"ts":"2025-02-07","kind":"confirm","px":177.1017,"level":182.5804},{"ts":"2025-02-12","kind":"arm","px":173.3453},{"ts":"2025-02-13","kind":"confirm","px":173.5108,"level":182.5804},{"ts":"2025-06-18","kind":"arm","px":161.5739},{"ts":"2025-07-15","kind":"arm","px":188.2428},{"ts":"2025-07-16","kind":"confirm","px":188.6871,"level":189.2993},{"ts":"2025-07-18","kind":"arm","px":181.7657},{"ts":"2025-07-21","kind":"confirm","px":183.385,"level":189.2993},{"ts":"2025-08-21","kind":"arm","px":260.8444},{"ts":"2025-08-29","kind":"confirm","px":258.5143,"level":259.9459},{"ts":"2026-01-23","kind":"arm","px":294.3123},{"ts":"2026-02-23","kind":"arm","px":316.8565},{"ts":"2026-03-09","kind":"confirm","px":296.3122,"level":297.7577},{"ts":"2026-07-23","kind":"arm","px":222.88}],"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":[]}}}