{"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":"SERV","timeframe":"3D","as_of":"2026-08-14T00:00:00Z","bar_quality":"real_ohlc","signal_era":"gc_v2_wo2","signals":[{"ts":"2024-08-12","known_ts":"2024-08-12","bar_index":36,"type":"SELL","basis":"structure_stop","strength":0.588,"price":11.21,"stop_level":13.62,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2024-10-25","known_ts":"2024-10-29","bar_index":54,"type":"BUY","strength":0.725,"price":11.68,"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":30},{"ts":"2024-11-08","known_ts":"2024-11-08","bar_index":57,"type":"SELL","basis":"structure_stop","strength":0.725,"price":9.04,"stop_level":9.45,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2024-12-09","known_ts":"2024-12-11","bar_index":64,"type":"BUY","strength":0.725,"price":12.38,"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":30},{"ts":"2025-04-11","known_ts":"2025-04-15","bar_index":92,"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-04-11","trigger_known_ts":"2025-04-15","strength":0.45,"price":5.86,"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.744328,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":4.66,"atr14":0.795221,"stop_level":4.26239,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-04-30","known_ts":"2025-05-02","bar_index":96,"type":"BUY","strength":0.45,"price":7.05,"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":"Industrials"}},{"ts":"2025-04-30","known_ts":"2025-05-02","bar_index":96,"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-04-30","trigger_known_ts":"2025-05-02","strength":0.45,"price":7.05,"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.692408,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":5.181,"atr14":0.674536,"stop_level":4.843732,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-05-13","known_ts":"2025-05-15","bar_index":99,"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-05-13","trigger_known_ts":"2025-05-15","strength":0.45,"price":9.39,"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.590314,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":5.87,"atr14":0.819091,"stop_level":5.460455,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-05-21","known_ts":"2025-05-21","bar_index":101,"type":"RECLAIM","strength":0.588,"price":11.34,"scored":true,"quality":"block_repair","quality_reason":"bear-block legs repaired after the 2025-04-30 blocked entry","reasons":["bear_block_cleared","macd_cross_still_live"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false}},{"ts":"2025-06-13","known_ts":"2025-06-13","bar_index":106,"type":"SELL","basis":"structure_stop","strength":0.725,"price":10.91,"stop_level":11.46,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-06-16","known_ts":"2025-06-16","bar_index":106,"type":"RECLAIM","strength":0.725,"price":11.49,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-06-13 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-06-13","prior_stop_level":11.46,"sweep_low":10.85,"atr14":1.100655,"stop_level":10.299672,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-06-20","known_ts":"2025-06-20","bar_index":107,"type":"SELL","basis":"structure_stop","strength":0.725,"price":10.42,"stop_level":11.46,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":false,"monthlyBull":false}},{"ts":"2025-07-07","known_ts":"2025-07-07","bar_index":111,"type":"RECLAIM","strength":1.0,"price":10.7,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-06-20 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":true}},{"ts":"2025-07-15","known_ts":"2025-07-17","bar_index":113,"type":"REBUY","strength":0.863,"price":12.08,"reasons":["fast_reversal_up","sell_failed"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":true},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":30},{"ts":"2025-09-09","known_ts":"2025-09-11","bar_index":126,"type":"BUY","strength":0.725,"price":11.4,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":true,"monthlyBull":false},"quality":"block","quality_reason":"veto: bearish divergence","tier":"base","score":35},{"ts":"2025-09-26","known_ts":"2025-09-26","bar_index":130,"type":"SELL","basis":"structure_stop","strength":0.863,"price":11.68,"stop_level":11.73,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-10-01","known_ts":"2025-10-01","bar_index":131,"type":"RECLAIM","strength":0.863,"price":11.77,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2025-09-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":"2025-09-26","prior_stop_level":11.73,"sweep_low":11.23,"atr14":0.951502,"stop_level":10.754249,"risk_basis":"daily_ohlc_atr14"},{"ts":"2025-10-13","known_ts":"2025-10-13","bar_index":134,"type":"RECLAIM","strength":0.863,"price":17.51,"scored":true,"quality":"reclaim","quality_reason":"trend reclaimed the 2025-09-26 sell level","reasons":["close>sell_price","weekly_bull","above200","debounced"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-11-03","known_ts":"2025-11-03","bar_index":139,"type":"SELL","basis":"structure_stop","strength":0.863,"price":12.91,"stop_level":12.97,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":true,"above200":true,"monthlyBull":false}},{"ts":"2025-12-08","known_ts":"2025-12-10","bar_index":147,"type":"BUY","strength":0.863,"price":12.22,"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":"2025-12-30","known_ts":"2026-01-02","bar_index":152,"type":"BUY","strength":0.725,"price":11.83,"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":0},{"ts":"2026-02-05","known_ts":"2026-02-05","bar_index":160,"type":"SELL","basis":"structure_stop","strength":0.588,"price":9.19,"stop_level":9.81,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2026-02-06","known_ts":"2026-02-06","bar_index":160,"type":"RECLAIM","strength":0.588,"price":10.675,"scored":false,"quality":"stop_sweep_reclaim","quality_reason":"price reclaimed the 2026-02-05 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":"2026-02-05","prior_stop_level":9.81,"sweep_low":9.08,"atr14":1.085262,"stop_level":8.537369,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-02-23","known_ts":"2026-02-25","bar_index":164,"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":"2026-02-23","trigger_known_ts":"2026-02-25","strength":0.45,"price":10.36,"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.408338,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":8.93,"atr14":0.864215,"stop_level":8.497892,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-03-19","known_ts":"2026-03-23","bar_index":170,"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":"2026-03-19","trigger_known_ts":"2026-03-23","strength":0.45,"price":9.43,"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.461451,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":8.69,"atr14":0.758028,"stop_level":8.310986,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-04-10","known_ts":"2026-04-14","bar_index":175,"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":"2026-04-10","trigger_known_ts":"2026-04-14","strength":0.45,"price":8.95,"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.488864,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":7.8,"atr14":0.619973,"stop_level":7.490013,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-04-15","known_ts":"2026-04-17","bar_index":176,"type":"BUY","strength":0.45,"price":9.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":"2026-04-15","known_ts":"2026-04-17","bar_index":176,"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":"2026-04-15","trigger_known_ts":"2026-04-17","strength":0.45,"price":9.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.453455,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":7.8,"atr14":0.601207,"stop_level":7.499397,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-05-08","known_ts":"2026-05-08","bar_index":181,"type":"SELL","basis":"structure_stop","strength":0.45,"price":8.77,"stop_level":8.99,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2026-05-12","known_ts":"2026-05-12","bar_index":182,"type":"SELL","basis":"structure_stop","strength":0.45,"price":8.76,"stop_level":8.99,"reasons":["distribution_confirmed","structure_break"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false}},{"ts":"2026-05-22","known_ts":"2026-05-27","bar_index":185,"type":"REBUY","strength":0.45,"price":8.84,"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":"2026-06-29","known_ts":"2026-07-01","bar_index":193,"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":"2026-06-29","trigger_known_ts":"2026-07-01","strength":0.45,"price":6.53,"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.62707,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":5.775,"atr14":0.520368,"stop_level":5.514816,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-07-29","known_ts":"2026-07-31","bar_index":200,"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":"2026-07-29","trigger_known_ts":"2026-07-31","strength":0.45,"price":4.78,"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.727013,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":4.32,"atr14":0.38306,"stop_level":4.12847,"risk_basis":"daily_ohlc_atr14"},{"ts":"2026-08-03","known_ts":"2026-08-05","bar_index":201,"type":"BUY","strength":0.45,"price":5.66,"reasons":["macd_bull_cross","recent_b1","confirm_bull","rsi<65"],"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"quality":"regime_blocked","quality_reason":"bear_block: monthly-bear & below-200 & 2W-not-bull","tier":null,"score":null,"blocked":true},{"ts":"2026-08-03","known_ts":"2026-08-05","bar_index":201,"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":"2026-08-03","trigger_known_ts":"2026-08-05","strength":0.45,"price":5.66,"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.676756,"monthly_oversold_dwell":0,"recent_3d_oversold":true},"regime":{"weeklyBull":false,"above200":false,"monthlyBull":false},"sweep_low":4.32,"atr14":0.395464,"stop_level":4.122268,"risk_basis":"daily_ohlc_atr14"}],"state":{"position_hint":"flat","last_signal":"BOTTOM_WATCH","last_scored_signal":"SELL","last_scored_ts":"2026-05-12","last_scored_basis":"structure_stop","bars_since_signal":3,"extended":false,"strong_bull":false,"overbought":false,"weeklyBull":false,"above200":false},"early_dots":["2024-10-01","2024-11-25","2024-12-31","2025-03-10","2025-08-08","2025-08-21","2025-11-24","2025-12-19","2025-12-30"],"warnings":[{"ts":"2024-08-01","kind":"arm","px":17.26},{"ts":"2024-08-12","kind":"confirm","px":11.21,"level":13.62},{"ts":"2024-11-01","kind":"arm","px":10.04},{"ts":"2024-11-08","kind":"confirm","px":9.04,"level":9.45},{"ts":"2024-12-31","kind":"arm","px":13.5},{"ts":"2025-05-30","kind":"arm","px":11.7},{"ts":"2025-06-13","kind":"confirm","px":10.91,"level":11.46},{"ts":"2025-06-18","kind":"arm","px":10.9},{"ts":"2025-06-20","kind":"confirm","px":10.42,"level":11.46},{"ts":"2025-09-25","kind":"arm","px":12.0},{"ts":"2025-09-26","kind":"confirm","px":11.68,"level":11.73},{"ts":"2025-10-21","kind":"arm","px":14.22},{"ts":"2025-11-03","kind":"confirm","px":12.91,"level":12.97},{"ts":"2026-01-21","kind":"arm","px":13.235},{"ts":"2026-02-05","kind":"confirm","px":9.19,"level":9.81},{"ts":"2026-04-28","kind":"arm","px":9.43},{"ts":"2026-05-08","kind":"confirm","px":8.77,"level":8.99},{"ts":"2026-05-11","kind":"arm","px":8.85},{"ts":"2026-05-12","kind":"confirm","px":8.76,"level":8.99}],"meta":{"leakfree":true,"scored":false,"score_basis":"full","validated_against":"signal_layer/confluence.py","validation":{},"honest_read":"RSI-MACD × StochRSI MTF confluence on daily→3D. Risk/timing overlay.","warnings":[]}}}