{"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":"WEST","timeframe":"3D","as_of":"2026-08-10T00:00:00Z","bar_quality":"real_ohlc","signal_era":"gc_v2_wo2","signals":[{"ts":"2022-05-09","known_ts":"2022-05-09","bar_index":46,"type":"SELL","basis":"structure_stop","strength":0.588,"price":9.85,"stop_level":9.91,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2022-06-06","known_ts":"2022-06-08","bar_index":53,"type":"BUY","strength":0.45,"price":9.945,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2022-07-20","known_ts":"2022-07-20","bar_index":63,"type":"SELL","basis":"structure_stop","strength":0.45,"price":9.92,"stop_level":9.93,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2022-07-26","known_ts":"2022-07-26","bar_index":64,"type":"RECLAIM","strength":0.45,"price":9.94,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2022-07-20 structure-stop level within five sessions","reasons":["close_reclaimed_stop_level","within_5_sessions","failed_breakdown"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"anchor_ts":"2022-07-20","prior_stop_level":9.93,"sweep_low":9.9,"atr14":0.045152,"stop_level":9.877424,"risk_basis":"daily_ohlc_atr14"},{"ts":"2022-08-05","known_ts":"2022-08-05","bar_index":67,"type":"RECLAIM","strength":0.725,"price":10.0,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2022-07-20 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2022-09-09","known_ts":"2022-09-09","bar_index":75,"type":"SELL","basis":"structure_stop","strength":0.863,"price":10.79,"stop_level":10.85,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2022-10-26","known_ts":"2022-10-28","bar_index":86,"type":"BUY","strength":0.588,"price":10.93,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":60},{"ts":"2022-12-19","known_ts":"2022-12-19","bar_index":98,"type":"SELL","basis":"structure_stop","strength":0.863,"price":12.64,"stop_level":13.75,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-03-21","known_ts":"2023-03-23","bar_index":119,"type":"BUY","strength":0.588,"price":12.0,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"quality","score":65},{"ts":"2023-04-25","known_ts":"2023-04-25","bar_index":127,"type":"SELL","basis":"structure_stop","strength":0.725,"price":11.99,"stop_level":12.04,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2023-04-26","known_ts":"2023-04-26","bar_index":127,"type":"RECLAIM","strength":0.725,"price":12.33,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2023-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":"2023-04-25","prior_stop_level":12.04,"sweep_low":11.8,"atr14":0.450972,"stop_level":11.574514,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-05-03","known_ts":"2023-05-03","bar_index":129,"type":"SELL","basis":"structure_stop","strength":0.45,"price":11.83,"stop_level":11.99,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2023-06-12","known_ts":"2023-06-14","bar_index":138,"type":"BUY","strength":0.45,"price":11.43,"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":"2023-08-11","known_ts":"2023-08-15","bar_index":152,"type":"BUY","strength":0.588,"price":10.64,"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},{"ts":"2023-09-28","known_ts":"2023-10-02","bar_index":163,"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":"2023-09-28","trigger_known_ts":"2023-10-02","strength":0.45,"price":8.83,"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.392292,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":8.58,"atr14":0.26989,"stop_level":8.445055,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-10-16","known_ts":"2023-10-18","bar_index":167,"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":"2023-10-16","trigger_known_ts":"2023-10-18","strength":0.45,"price":8.695,"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.401583,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":8.02,"atr14":0.291035,"stop_level":7.874483,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-11-01","known_ts":"2023-11-03","bar_index":171,"type":"BUY","strength":0.45,"price":8.41,"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":"2023-11-01","known_ts":"2023-11-03","bar_index":171,"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":"2023-11-01","trigger_known_ts":"2023-11-03","strength":0.45,"price":8.41,"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.421198,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":7.93,"atr14":0.310901,"stop_level":7.774549,"risk_basis":"daily_ohlc_atr14"},{"ts":"2023-11-06","known_ts":"2023-11-08","bar_index":172,"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":"2023-11-06","trigger_known_ts":"2023-11-08","strength":0.45,"price":8.67,"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.403304,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":7.93,"atr14":0.294803,"stop_level":7.782598,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-02-22","known_ts":"2024-02-22","bar_index":196,"type":"SELL","basis":"structure_stop","strength":0.725,"price":10.06,"stop_level":10.09,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2024-02-29","known_ts":"2024-02-29","bar_index":198,"type":"RECLAIM","strength":0.725,"price":10.12,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2024-02-22 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":"2024-02-22","prior_stop_level":10.09,"sweep_low":9.47,"atr14":0.387247,"stop_level":9.276377,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-04-01","known_ts":"2024-04-03","bar_index":205,"type":"BUY","strength":0.863,"price":10.21,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":35},{"ts":"2024-04-30","known_ts":"2024-05-02","bar_index":212,"type":"BUY","strength":0.863,"price":10.48,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false},"quality":"take","quality_reason":"held confirmation","tier":"base","score":20},{"ts":"2024-05-28","known_ts":"2024-05-28","bar_index":218,"type":"SELL","basis":"structure_stop","strength":0.863,"price":10.46,"stop_level":10.5,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2024-10-11","known_ts":"2024-10-15","bar_index":250,"type":"BUY","strength":0.45,"price":6.57,"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":"2024-10-11","known_ts":"2024-10-15","bar_index":250,"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":"2024-10-11","trigger_known_ts":"2024-10-15","strength":0.45,"price":6.57,"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.390538,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":5.28,"atr14":0.441474,"stop_level":5.059263,"risk_basis":"daily_ohlc_atr14"},{"ts":"2024-12-18","known_ts":"2024-12-18","bar_index":265,"type":"SELL","basis":"structure_stop","strength":0.725,"price":6.44,"stop_level":6.92,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-01-23","known_ts":"2025-01-27","bar_index":273,"type":"BUY","strength":0.725,"price":7.02,"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":45},{"ts":"2025-03-04","known_ts":"2025-03-06","bar_index":282,"type":"BUY","strength":0.725,"price":6.71,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false},"quality":"block","quality_reason":"failed reclaim-and-hold","tier":"base","score":50},{"ts":"2025-04-07","known_ts":"2025-04-07","bar_index":290,"type":"SELL","basis":"structure_stop","strength":0.725,"price":6.12,"stop_level":6.52,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-05-07","known_ts":"2025-05-09","bar_index":297,"type":"BUY","strength":0.863,"price":7.26,"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":"2025-06-13","known_ts":"2025-06-13","bar_index":305,"type":"SELL","basis":"structure_stop","strength":0.863,"price":6.6,"stop_level":6.65,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":true}},{"ts":"2025-07-17","known_ts":"2025-07-21","bar_index":313,"type":"BUY","strength":0.863,"price":6.77,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"take","quality_reason":"held confirmation","tier":"base","score":30},{"ts":"2025-08-13","known_ts":"2025-08-13","bar_index":319,"type":"SELL","basis":"structure_stop","strength":0.863,"price":6.5,"stop_level":6.54,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":true}},{"ts":"2025-10-20","known_ts":"2025-10-22","bar_index":335,"type":"BUY","strength":0.588,"price":5.02,"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":15},{"ts":"2025-11-03","known_ts":"2025-11-03","bar_index":338,"type":"SELL","basis":"structure_stop","strength":0.588,"price":4.45,"stop_level":4.99,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":true}},{"ts":"2025-11-18","known_ts":"2025-11-20","bar_index":342,"type":"BUY","strength":0.588,"price":4.18,"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":65},{"ts":"2026-02-26","known_ts":"2026-02-26","bar_index":364,"type":"SELL","basis":"structure_stop","strength":0.863,"price":4.68,"stop_level":4.86,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":true}},{"ts":"2026-04-06","known_ts":"2026-04-08","bar_index":373,"type":"BUY","strength":0.863,"price":5.0,"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":45},{"ts":"2026-05-26","known_ts":"2026-05-26","bar_index":384,"type":"SELL","basis":"structure_stop","strength":1.0,"price":7.93,"stop_level":8.07,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2026-05-29","known_ts":"2026-05-29","bar_index":385,"type":"SELL","basis":"structure_stop","strength":1.0,"price":8.03,"stop_level":8.07,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2026-06-01","known_ts":"2026-06-01","bar_index":386,"type":"RECLAIM","strength":1.0,"price":8.5,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2026-05-26 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":"2026-05-26","prior_stop_level":8.07,"sweep_low":7.73,"atr14":0.468688,"stop_level":7.495656,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-06-01","known_ts":"2026-06-01","bar_index":386,"type":"RECLAIM","strength":1.0,"price":8.5,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2026-05-29 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":"2026-05-29","prior_stop_level":8.07,"sweep_low":7.869,"atr14":0.468688,"stop_level":7.634656,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-06-12","known_ts":"2026-06-12","bar_index":389,"type":"RECLAIM","strength":1.0,"price":9.19,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2026-05-29 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}}],"state":{"position_hint":"long","last_signal":"RECLAIM","last_scored_signal":"RECLAIM","last_scored_ts":"2026-06-12","last_scored_basis":null,"bars_since_signal":7,"extended":false,"strong_bull":false,"overbought":false,"weeklyBull":false,"above200":true},"early_dots":["2022-03-31","2022-05-18","2022-06-23","2022-09-27","2022-10-18","2023-02-01","2023-02-23","2023-05-19","2023-09-07","2024-03-13","2024-06-21","2024-07-15","2024-09-17","2024-10-11","2025-01-17","2025-04-24","2025-07-03","2025-09-11","2025-10-02","2025-10-15","2025-11-13","2025-12-10","2026-03-13","2026-03-31","2026-08-05"],"warnings":[{"ts":"2022-04-21","kind":"arm","px":9.97},{"ts":"2022-05-09","kind":"confirm","px":9.85,"level":9.91},{"ts":"2022-07-14","kind":"arm","px":9.94},{"ts":"2022-07-20","kind":"confirm","px":9.92,"level":9.93},{"ts":"2022-09-02","kind":"arm","px":10.92},{"ts":"2022-09-09","kind":"confirm","px":10.79,"level":10.85},{"ts":"2022-11-30","kind":"arm","px":12.49},{"ts":"2022-12-19","kind":"confirm","px":12.64,"level":13.75},{"ts":"2023-04-21","kind":"arm","px":12.56},{"ts":"2023-04-25","kind":"confirm","px":11.99,"level":12.04},{"ts":"2023-05-02","kind":"arm","px":11.82},{"ts":"2023-05-03","kind":"confirm","px":11.83,"level":11.99},{"ts":"2023-12-05","kind":"arm","px":9.04},{"ts":"2024-01-31","kind":"arm","px":10.36},{"ts":"2024-02-22","kind":"confirm","px":10.06,"level":10.09},{"ts":"2024-05-21","kind":"arm","px":10.65},{"ts":"2024-05-28","kind":"confirm","px":10.46,"level":10.5},{"ts":"2024-10-31","kind":"arm","px":6.64},{"ts":"2024-12-18","kind":"confirm","px":6.44,"level":6.92},{"ts":"2025-04-04","kind":"arm","px":6.34},{"ts":"2025-04-07","kind":"confirm","px":6.12,"level":6.52},{"ts":"2025-05-23","kind":"arm","px":7.0},{"ts":"2025-06-13","kind":"confirm","px":6.6,"level":6.65},{"ts":"2025-08-05","kind":"arm","px":6.76},{"ts":"2025-08-13","kind":"confirm","px":6.5,"level":6.54},{"ts":"2025-10-31","kind":"arm","px":4.41},{"ts":"2025-11-03","kind":"confirm","px":4.45,"level":4.99},{"ts":"2026-01-28","kind":"arm","px":4.61},{"ts":"2026-02-26","kind":"confirm","px":4.68,"level":4.86},{"ts":"2026-04-27","kind":"arm","px":5.61},{"ts":"2026-05-26","kind":"confirm","px":7.93,"level":8.07},{"ts":"2026-05-28","kind":"arm","px":8.01},{"ts":"2026-05-29","kind":"confirm","px":8.03,"level":8.07}],"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":[]}}}