{"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":"CSTL","timeframe":"3D","as_of":"2026-08-12T00:00:00Z","bar_quality":"real_ohlc","signal_era":"gc_v2_wo2","signals":[{"ts":"2020-01-14","known_ts":"2020-01-14","bar_index":40,"type":"SELL","basis":"structure_stop","strength":0.588,"price":30.7,"stop_level":33.01,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2020-01-16","known_ts":"2020-01-16","bar_index":41,"type":"RECLAIM","strength":0.588,"price":34.18,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-01-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":"2020-01-14","prior_stop_level":33.01,"sweep_low":30.3,"atr14":2.58065,"stop_level":29.009675,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-04-22","known_ts":"2020-04-24","bar_index":63,"type":"BUY","strength":0.45,"price":29.45,"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":"2020-05-05","known_ts":"2020-05-07","bar_index":66,"type":"REBUY","strength":0.45,"price":31.39,"reasons":["fast_reversal_up","sell_failed"],"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":"2020-05-08","known_ts":"2020-05-08","bar_index":67,"type":"RECLAIM","strength":0.588,"price":36.88,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2020-05-05 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false}},{"ts":"2020-06-03","known_ts":"2020-06-03","bar_index":72,"type":"SELL","basis":"structure_stop","strength":0.863,"price":36.35,"stop_level":37.0,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-06-04","known_ts":"2020-06-04","bar_index":73,"type":"RECLAIM","strength":0.863,"price":37.5,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-06-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":"2020-06-03","prior_stop_level":37.0,"sweep_low":36.0,"atr14":2.701134,"stop_level":34.649433,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-06-17","known_ts":"2020-06-17","bar_index":76,"type":"RECLAIM","strength":0.863,"price":42.385,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-06-03 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-06-26","known_ts":"2020-06-26","bar_index":78,"type":"SELL","basis":"structure_stop","strength":0.863,"price":35.09,"stop_level":36.98,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-06-30","known_ts":"2020-06-30","bar_index":79,"type":"RECLAIM","strength":0.863,"price":37.69,"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":36.98,"sweep_low":34.72,"atr14":2.838926,"stop_level":33.300537,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-07-14","known_ts":"2020-07-16","bar_index":82,"type":"BUY","strength":0.863,"price":43.03,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":20},{"ts":"2020-07-21","known_ts":"2020-07-21","bar_index":83,"type":"SELL","basis":"structure_stop","strength":0.863,"price":40.82,"stop_level":41.5,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-08-20","known_ts":"2020-08-20","bar_index":91,"type":"RECLAIM","strength":0.863,"price":45.59,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-07-21 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-10-20","known_ts":"2020-10-20","bar_index":105,"type":"SELL","basis":"structure_stop","strength":0.863,"price":49.18,"stop_level":49.62,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2020-10-22","known_ts":"2020-10-22","bar_index":105,"type":"RECLAIM","strength":0.863,"price":51.34,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2020-10-20 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-10-20","prior_stop_level":49.62,"sweep_low":47.01,"atr14":2.001729,"stop_level":46.009136,"risk_basis":"daily_ohlc_atr14"},{"ts":"2020-12-18","known_ts":"2020-12-18","bar_index":119,"type":"RECLAIM","strength":0.725,"price":72.59,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2020-10-20 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2021-01-26","known_ts":"2021-01-26","bar_index":127,"type":"SELL","basis":"structure_stop","strength":0.863,"price":70.97,"stop_level":73.12,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2021-02-02","known_ts":"2021-02-02","bar_index":128,"type":"RECLAIM","strength":0.725,"price":81.31,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2021-01-26 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":"2021-01-26","prior_stop_level":73.12,"sweep_low":63.69,"atr14":5.580574,"stop_level":60.899713,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-02-03","known_ts":"2021-02-05","bar_index":129,"type":"REBUY","strength":0.725,"price":92.79,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":20},{"ts":"2021-06-01","known_ts":"2021-06-03","bar_index":156,"type":"BUY","strength":0.45,"price":59.42,"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":"2021-06-01","known_ts":"2021-06-03","bar_index":156,"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":"2021-06-01","trigger_known_ts":"2021-06-03","strength":0.45,"price":59.42,"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.362788,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":56.59,"atr14":3.563875,"stop_level":54.808063,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-06-04","known_ts":"2021-06-04","bar_index":157,"type":"RECLAIM","strength":0.588,"price":72.8,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2021-06-01 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false}},{"ts":"2021-07-14","known_ts":"2021-07-14","bar_index":166,"type":"SELL","basis":"structure_stop","strength":0.588,"price":66.8,"stop_level":69.83,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2021-07-30","known_ts":"2021-08-03","bar_index":170,"type":"REBUY","strength":0.725,"price":70.37,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":20},{"ts":"2021-08-20","known_ts":"2021-08-24","bar_index":175,"type":"BUY","strength":0.588,"price":73.34,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":35},{"ts":"2021-09-24","known_ts":"2021-09-24","bar_index":183,"type":"SELL","basis":"structure_stop","strength":0.588,"price":72.44,"stop_level":73.72,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2021-09-28","known_ts":"2021-09-28","bar_index":183,"type":"SELL","basis":"structure_stop","strength":0.588,"price":65.88,"stop_level":73.72,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2021-12-02","known_ts":"2021-12-06","bar_index":199,"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":"2021-12-02","trigger_known_ts":"2021-12-06","strength":0.45,"price":39.94,"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.571689,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":39.34,"atr14":3.041888,"stop_level":37.819056,"risk_basis":"daily_ohlc_atr14"},{"ts":"2021-12-23","known_ts":"2021-12-28","bar_index":204,"type":"BUY","strength":0.45,"price":41.2,"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":"2021-12-23","known_ts":"2021-12-28","bar_index":204,"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":"2021-12-23","trigger_known_ts":"2021-12-28","strength":0.45,"price":41.2,"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.558177,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":37.99,"atr14":2.671814,"stop_level":36.654093,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-03-14","known_ts":"2022-03-14","bar_index":222,"type":"SELL","basis":"structure_stop","strength":0.588,"price":37.02,"stop_level":41.3,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-03-16","known_ts":"2022-03-16","bar_index":222,"type":"RECLAIM","strength":0.588,"price":41.39,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2022-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":"2022-03-14","prior_stop_level":41.3,"sweep_low":36.0,"atr14":3.090492,"stop_level":34.454754,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-04-06","known_ts":"2022-04-06","bar_index":227,"type":"SELL","basis":"structure_stop","strength":0.725,"price":36.2,"stop_level":42.37,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-04-29","known_ts":"2022-05-03","bar_index":233,"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-04-29","trigger_known_ts":"2022-05-03","strength":0.45,"price":24.09,"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.686287,"monthly_oversold_dwell":2,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":21.73,"atr14":2.339994,"stop_level":20.560003,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-05-12","known_ts":"2022-05-16","bar_index":236,"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-05-12","trigger_known_ts":"2022-05-16","strength":0.45,"price":19.48,"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.746321,"monthly_oversold_dwell":2,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":17.01,"atr14":2.243295,"stop_level":15.888353,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-05-31","known_ts":"2022-06-02","bar_index":240,"type":"BUY","strength":0.45,"price":20.77,"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-05-31","known_ts":"2022-06-02","bar_index":240,"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-05-31","trigger_known_ts":"2022-06-02","strength":0.45,"price":20.77,"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.729522,"monthly_oversold_dwell":3,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":19.24,"atr14":1.819292,"stop_level":18.330354,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-06-22","known_ts":"2022-06-24","bar_index":245,"type":"BUY","strength":0.45,"price":23.83,"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-06-22","known_ts":"2022-06-24","bar_index":245,"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-06-22","trigger_known_ts":"2022-06-24","strength":0.45,"price":23.83,"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.689673,"monthly_oversold_dwell":3,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":15.58,"atr14":1.785921,"stop_level":14.68704,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-07-22","known_ts":"2022-07-22","bar_index":252,"type":"RECLAIM","strength":0.725,"price":27.32,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2022-06-22 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-09-01","known_ts":"2022-09-01","bar_index":261,"type":"SELL","basis":"structure_stop","strength":0.725,"price":28.42,"stop_level":28.48,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-09-09","known_ts":"2022-09-09","bar_index":263,"type":"RECLAIM","strength":0.725,"price":29.33,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2022-09-01 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-01","prior_stop_level":28.48,"sweep_low":26.16,"atr14":1.720697,"stop_level":25.299652,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-11-29","known_ts":"2022-12-01","bar_index":282,"type":"BUY","strength":0.588,"price":24.05,"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":25},{"ts":"2022-12-27","known_ts":"2022-12-27","bar_index":288,"type":"SELL","basis":"structure_stop","strength":0.725,"price":21.56,"stop_level":22.93,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-12-29","known_ts":"2022-12-29","bar_index":289,"type":"RECLAIM","strength":0.725,"price":23.2,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2022-12-27 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-12-27","prior_stop_level":22.93,"sweep_low":20.95,"atr14":1.722851,"stop_level":20.088574,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-01-12","known_ts":"2023-01-12","bar_index":292,"type":"RECLAIM","strength":0.863,"price":27.06,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2022-12-27 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-01-26","known_ts":"2023-01-26","bar_index":295,"type":"SELL","basis":"structure_stop","strength":0.863,"price":25.65,"stop_level":26.19,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-01-31","known_ts":"2023-01-31","bar_index":296,"type":"RECLAIM","strength":0.863,"price":27.08,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-01-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":"2023-01-26","prior_stop_level":26.19,"sweep_low":25.04,"atr14":1.426189,"stop_level":24.326905,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-02-13","known_ts":"2023-02-13","bar_index":299,"type":"RECLAIM","strength":0.863,"price":26.9,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2023-01-26 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-02-21","known_ts":"2023-02-21","bar_index":300,"type":"SELL","basis":"structure_stop","strength":0.725,"price":23.75,"stop_level":25.98,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2023-04-19","known_ts":"2023-04-21","bar_index":314,"type":"BUY","strength":0.725,"price":24.33,"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":"2023-05-04","known_ts":"2023-05-04","bar_index":317,"type":"SELL","basis":"structure_stop","strength":0.725,"price":22.01,"stop_level":22.15,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true}},{"ts":"2023-05-05","known_ts":"2023-05-05","bar_index":318,"type":"RECLAIM","strength":0.725,"price":22.25,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-05-04 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true},"anchor_ts":"2023-05-04","prior_stop_level":22.15,"sweep_low":20.56,"atr14":1.249361,"stop_level":19.93532,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-05-18","known_ts":"2023-05-18","bar_index":321,"type":"RECLAIM","strength":1.0,"price":25.0,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2023-05-04 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2023-06-01","known_ts":"2023-06-01","bar_index":324,"type":"SELL","basis":"structure_stop","strength":0.863,"price":21.05,"stop_level":22.66,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":true}},{"ts":"2023-06-02","known_ts":"2023-06-02","bar_index":324,"type":"RECLAIM","strength":0.863,"price":22.73,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-06-01 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":true},"anchor_ts":"2023-06-01","prior_stop_level":22.66,"sweep_low":18.32,"atr14":1.553776,"stop_level":17.543112,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-09-18","known_ts":"2023-09-18","bar_index":348,"type":"SELL","basis":"structure_stop","strength":0.863,"price":16.69,"stop_level":17.26,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":true}},{"ts":"2023-10-31","known_ts":"2023-11-02","bar_index":359,"type":"BUY","strength":0.725,"price":16.65,"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":55},{"ts":"2023-12-06","known_ts":"2023-12-06","bar_index":367,"type":"SELL","basis":"structure_stop","strength":1.0,"price":19.46,"stop_level":19.48,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2023-12-08","known_ts":"2023-12-08","bar_index":368,"type":"RECLAIM","strength":1.0,"price":20.17,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-12-06 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-12-06","prior_stop_level":19.48,"sweep_low":19.0,"atr14":0.809752,"stop_level":18.595124,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-12-21","known_ts":"2023-12-21","bar_index":371,"type":"RECLAIM","strength":1.0,"price":21.93,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2023-12-06 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-01-12","known_ts":"2024-01-12","bar_index":375,"type":"SELL","basis":"structure_stop","strength":1.0,"price":20.03,"stop_level":20.32,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-01-29","known_ts":"2024-01-31","bar_index":379,"type":"BUY","strength":1.0,"price":23.08,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":30},{"ts":"2024-02-29","known_ts":"2024-02-29","bar_index":386,"type":"SELL","basis":"structure_stop","strength":1.0,"price":18.06,"stop_level":23.865,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-05-02","known_ts":"2024-05-06","bar_index":401,"type":"BUY","strength":0.863,"price":24.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":40},{"ts":"2024-05-23","known_ts":"2024-05-23","bar_index":406,"type":"SELL","basis":"structure_stop","strength":1.0,"price":23.74,"stop_level":23.91,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-05-24","known_ts":"2024-05-24","bar_index":406,"type":"RECLAIM","strength":1.0,"price":24.37,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-05-23 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-05-23","prior_stop_level":23.91,"sweep_low":23.28,"atr14":1.053532,"stop_level":22.753234,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-05-31","known_ts":"2024-05-31","bar_index":407,"type":"SELL","basis":"structure_stop","strength":1.0,"price":23.26,"stop_level":23.74,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-06-06","known_ts":"2024-06-06","bar_index":409,"type":"SELL","basis":"structure_stop","strength":1.0,"price":23.03,"stop_level":23.26,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-06-12","known_ts":"2024-06-12","bar_index":410,"type":"RECLAIM","strength":1.0,"price":23.32,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-06-06 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-06-06","prior_stop_level":23.26,"sweep_low":21.45,"atr14":1.113288,"stop_level":20.893356,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-07-30","known_ts":"2024-08-01","bar_index":421,"type":"BUY","strength":0.725,"price":23.04,"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-09-24","known_ts":"2024-09-24","bar_index":434,"type":"SELL","basis":"structure_stop","strength":1.0,"price":29.25,"stop_level":29.3,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-09-26","known_ts":"2024-09-26","bar_index":434,"type":"SELL","basis":"structure_stop","strength":1.0,"price":28.0,"stop_level":29.3,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2024-10-10","known_ts":"2024-10-10","bar_index":438,"type":"RECLAIM","strength":1.0,"price":34.26,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2024-09-26 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2025-01-30","known_ts":"2025-02-03","bar_index":463,"type":"BUY","strength":0.725,"price":28.75,"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":15},{"ts":"2025-04-14","known_ts":"2025-04-16","bar_index":480,"type":"BUY","strength":0.588,"price":21.26,"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":60},{"ts":"2025-05-06","known_ts":"2025-05-06","bar_index":485,"type":"SELL","basis":"structure_stop","strength":0.588,"price":16.62,"stop_level":18.57,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true}},{"ts":"2025-06-02","known_ts":"2025-06-04","bar_index":491,"type":"BUY","strength":0.45,"price":17.02,"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-02","known_ts":"2025-06-04","bar_index":491,"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-06-02","trigger_known_ts":"2025-06-04","strength":0.45,"price":17.02,"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.507238,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":15.45,"atr14":0.779545,"stop_level":15.060228,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-07-15","known_ts":"2025-07-15","bar_index":500,"type":"SELL","basis":"structure_stop","strength":0.588,"price":18.87,"stop_level":19.46,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-07-17","known_ts":"2025-07-17","bar_index":501,"type":"SELL","basis":"structure_stop","strength":0.588,"price":17.39,"stop_level":19.46,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-08-01","known_ts":"2025-08-05","bar_index":505,"type":"REBUY","strength":0.45,"price":20.35,"reasons":["fast_reversal_up","sell_failed"],"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-08-27","known_ts":"2025-08-27","bar_index":511,"type":"RECLAIM","strength":0.725,"price":24.01,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2025-08-01 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-09-10","known_ts":"2025-09-10","bar_index":514,"type":"SELL","basis":"structure_stop","strength":0.588,"price":22.94,"stop_level":23.09,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-09-15","known_ts":"2025-09-15","bar_index":515,"type":"SELL","basis":"structure_stop","strength":0.725,"price":21.62,"stop_level":23.09,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-09-18","known_ts":"2025-09-18","bar_index":516,"type":"RECLAIM","strength":0.725,"price":23.46,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-09-15 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-09-15","prior_stop_level":23.09,"sweep_low":21.28,"atr14":1.079337,"stop_level":20.740331,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-10-01","known_ts":"2025-10-01","bar_index":519,"type":"RECLAIM","strength":1.0,"price":22.72,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-09-15 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2025-10-22","known_ts":"2025-10-24","bar_index":524,"type":"REBUY","strength":1.0,"price":24.51,"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":"2025-10-30","known_ts":"2025-11-03","bar_index":526,"type":"BUY","strength":1.0,"price":25.99,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":40},{"ts":"2026-04-24","known_ts":"2026-04-28","bar_index":566,"type":"BUY","strength":0.588,"price":24.69,"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":"2026-05-12","known_ts":"2026-05-12","bar_index":570,"type":"SELL","basis":"structure_stop","strength":0.588,"price":18.63,"stop_level":24.24,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true}},{"ts":"2026-05-26","known_ts":"2026-05-28","bar_index":573,"type":"BUY","strength":0.588,"price":22.11,"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":35},{"ts":"2026-07-28","known_ts":"2026-07-28","bar_index":587,"type":"SELL","basis":"structure_stop","strength":0.588,"price":23.89,"stop_level":23.895,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2026-07-29","known_ts":"2026-07-29","bar_index":587,"type":"RECLAIM","strength":0.588,"price":24.46,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2026-07-28 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-07-28","prior_stop_level":23.895,"sweep_low":23.73,"atr14":1.082226,"stop_level":23.188887,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-08-12","known_ts":"2026-08-12","bar_index":591,"type":"RECLAIM","strength":0.725,"price":30.55,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2026-07-28 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-08-12","last_scored_basis":null,"bars_since_signal":0,"extended":false,"strong_bull":false,"overbought":true,"weeklyBull":true,"above200":true},"early_dots":["2020-02-04","2020-03-05","2020-03-23","2020-08-04","2020-11-02","2020-11-10","2020-11-27","2021-03-15","2021-03-31","2021-04-22","2021-05-18","2021-08-20","2021-10-12","2022-06-22","2022-09-29","2022-10-25","2022-11-18","2023-03-23","2023-10-13","2024-01-24","2024-03-20","2024-04-24","2024-07-09","2024-10-10","2024-11-26","2025-01-02","2025-01-27","2025-03-14","2025-04-09","2025-06-02","2026-01-20","2026-02-13","2026-03-30","2026-05-26"],"warnings":[{"ts":"2023-02-09","kind":"arm","px":26.28},{"ts":"2023-02-21","kind":"confirm","px":23.75,"level":25.98},{"ts":"2023-05-02","kind":"arm","px":22.06},{"ts":"2023-05-04","kind":"confirm","px":22.01,"level":22.15},{"ts":"2023-05-31","kind":"arm","px":24.43},{"ts":"2023-06-01","kind":"confirm","px":21.05,"level":22.66},{"ts":"2023-09-05","kind":"arm","px":19.12},{"ts":"2023-09-18","kind":"confirm","px":16.69,"level":17.26},{"ts":"2023-11-28","kind":"arm","px":19.48},{"ts":"2023-12-06","kind":"confirm","px":19.46,"level":19.48},{"ts":"2023-12-29","kind":"arm","px":21.58},{"ts":"2024-01-12","kind":"confirm","px":20.03,"level":20.32},{"ts":"2024-02-23","kind":"arm","px":23.865},{"ts":"2024-02-29","kind":"confirm","px":18.06,"level":23.865},{"ts":"2024-05-17","kind":"arm","px":24.24},{"ts":"2024-05-23","kind":"confirm","px":23.74,"level":23.91},{"ts":"2024-05-30","kind":"arm","px":24.21},{"ts":"2024-05-31","kind":"confirm","px":23.26,"level":23.74},{"ts":"2024-06-05","kind":"arm","px":23.27},{"ts":"2024-06-06","kind":"confirm","px":23.03,"level":23.26},{"ts":"2024-08-22","kind":"arm","px":27.53},{"ts":"2024-09-24","kind":"confirm","px":29.25,"level":29.3},{"ts":"2024-09-25","kind":"arm","px":28.6},{"ts":"2024-09-26","kind":"confirm","px":28.0,"level":29.3},{"ts":"2025-05-01","kind":"arm","px":19.31},{"ts":"2025-05-06","kind":"confirm","px":16.62,"level":18.57},{"ts":"2025-06-25","kind":"arm","px":19.47},{"ts":"2025-07-15","kind":"confirm","px":18.87,"level":19.46},{"ts":"2025-07-16","kind":"arm","px":18.68},{"ts":"2025-07-17","kind":"confirm","px":17.39,"level":19.46},{"ts":"2025-09-04","kind":"arm","px":23.09},{"ts":"2025-09-10","kind":"confirm","px":22.94,"level":23.09},{"ts":"2025-09-12","kind":"arm","px":21.42},{"ts":"2025-09-15","kind":"confirm","px":21.62,"level":23.09},{"ts":"2025-11-19","kind":"arm","px":34.65},{"ts":"2026-05-11","kind":"arm","px":19.04},{"ts":"2026-05-12","kind":"confirm","px":18.63,"level":24.24},{"ts":"2026-06-17","kind":"arm","px":20.25},{"ts":"2026-07-28","kind":"confirm","px":23.89,"level":23.895},{"ts":"2026-08-03","kind":"arm","px":30.39}],"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":[]}}}