Ultimate Ichimoku Senkou Span B Signal MultiFilter
- Indicatori
- Versione: 1.7
- Attivazioni: 5
Senkou Span B Dynamic Rejection and Multi-Filter Confluence Framework for MetaTrader 5
Overview
The Senkou Span B Dynamic Rejection Indicator is a modular technical analysis system designed for the MetaTrader 5 platform. It identifies institutional price interactions around the Senkou Span B equilibrium line of the Ichimoku Kinko Hyo model. Senkou Span B represents the 52-period midpoint value projected into the market structure, serving as a primary indicator of medium-to-long term support, resistance, and market balance.
This analytical tool identifies structural interactions where price touches the Senkou Span B boundary and closes on the confirming side of the level. Rather than generating raw breakout or bounce signals in isolation, the software integrates a comprehensive engine of 15 secondary technical filters. Traders can evaluate confluence across momentum oscillators, directional trend filters, volatility metrics, volume indicators, dynamic support and resistance zones, and algorithmic swing Fibonacci retracements. Every analytical condition is calculated deterministically on completed bar data to ensure consistent execution.
Operating Principles and Calculation Mechanics
The core calculation relies on the classic Ichimoku Kinko Hyo Senkou Span B formula calculated as:
Senkou Span B = (Highest High of 52 periods + Lowest Low of 52 periods) / 2
In standard chart displays, Senkou Span B is projected 26 bars forward into the future. This indicator provides direct alignment control via the InpCloudShift parameter, allowing the user to map the historical Span B line directly onto current price bars. This configuration transforms the forward-shifted equilibrium line into an active support and resistance level that interacts with current market candles.
Candle Interaction Engine:
The detection cycle monitors closed price action on each finished bar (Bar Index 1). A valid structural touch event occurs when the range between the bar high and bar low enters an 8-point tolerance threshold around the Senkou Span B value:
Condition for Touch: (Low <= Senkou Span B + 8 * Point) AND (High >= Senkou Span B - 8 * Point)
Signal Directional Logic:
Once a physical touch is confirmed, the system evaluates the candle close relative to the Senkou Span B value and processes active filter rules.
1. Bullish Signal (BUY Arrow):
- The price touches the Senkou Span B zone during the bar formation.
- The bar close settles strictly above the Senkou Span B value: Close[1] > Senkou Span B[1].
- If FilterJenisCandle is active, the bar must be bullish: Close[1] > Open[1].
- All activated auxiliary filters (RSI, ADX, MA, AO, SAR, CCI, RVI, MACD, S/R, Fibonacci, Heiken Ashi) must validate bullish conditions simultaneously.
- When all criteria are satisfied, an upward arrow (character code 233) is anchored below the candle low, and configured notification alerts are dispatched once on Bar 1.
2. Bearish Signal (SELL Arrow):
- The price touches the Senkou Span B zone during the bar formation.
- The bar close settles strictly below the Senkou Span B value: Close[1] < Senkou Span B[1].
- If FilterJenisCandle is active, the bar must be bearish: Close[1] < Open[1].
- All activated auxiliary filters must validate bearish conditions simultaneously.
- When all criteria are satisfied, a downward arrow (character code 234) is anchored above the candle high, and configured notification alerts are dispatched once on Bar 1.
Repainting Status and Execution Transparency:
This indicator is strictly non-repainting on historical bars. The calculation evaluates completed bars (Bar 1 to Bar N). Once Bar 1 completes and transitions to Bar 2, the plotted signal arrow and buffer points remain locked to that specific price and timestamp. The indicator does not alter, shift, recalculate, or erase historical signal markers. Active alerts are sent strictly upon candle close (at the open of Bar 0 for completed Bar 1) to eliminate false triggers generated by mid-candle price fluctuations.
Integrated Multi-Filter Confluence Architecture
The software includes 15 secondary filtering algorithms that operate independently or in combinations to validate signal quality:
1. Directional Candle Type Filter:
When enabled via FilterJenisCandle, the system enforces strict candlestick polarity. BUY signals are rejected on bearish or neutral doji bars; SELL signals are rejected on bullish or neutral doji bars.
2. RSI Crossover Boundary Filter:
Applies a standard Relative Strength Index to identify directional oversold/overbought transitions. A BUY requires the RSI line to cross above the Oversold boundary (RSI[1] > Oversold AND RSI[2] <= Oversold). A SELL requires the RSI line to cross below the Overbought boundary (RSI[1] < Overbought AND RSI[2] >= Overbought).
3. ADX Minimum Strength Filter:
Utilizes the Average Directional Movement Index to confirm sufficient trend expansion. Signals are only validated if the main ADX value equals or exceeds ADX_Min_Level (adx >= ADX_Min_Level), preventing execution in dead or flat market environments.
4. Single Moving Average Baseline Filter:
Filters signals based on macro trend direction using an adjustable Moving Average. BUY signals require Close[1] > MA[1]; SELL signals require Close[1] < MA[1].
5. Secondary Ichimoku Cloud Filter:
Introduces an independent secondary Senkou Span B calculation using user-defined Kijun shift parameters. BUY signals require Close[1] to reside above the secondary Span B line; SELL signals require Close[1] to reside below it.
6. Long-Cycle RSI Baseline Filter:
Calculates a 75-period RSI to evaluate secular market sentiment. BUY signals are filtered to require RSI 75 > 50.0; SELL signals require RSI 75 < 50.0.
7. Dual Moving Average Ribbon Filter:
Evaluates alignment between two independent Moving Averages (Fast MA A and Slow MA B). Bullish alignment requires Fast MA > Slow MA; Bearish alignment requires Fast MA < Slow MA.
8. Awesome Oscillator Multi-Mode Filter:
Analyzes the 34-period and 5-period median price momentum differential. Supports three selectable verification modes:
- Volume Threshold: Enforces minimum numerical absolute thresholds (AO >= AO_Buy_Min for BUY; AO <= AO_Sell_Max for SELL).
- Color / Delta Mode: Enforces directional bar momentum (AO[1] > AO[2] for BUY; AO[1] < AO[2] for SELL).
- Zero-Line Directional Mode: Enforces positive expansion for BUY (AO[1] > AO[2] AND AO[1] > 0) and negative expansion for SELL (AO[1] < AO[2] AND AO[1] < 0).
9. Parabolic SAR Directional Boundary Filter:
Aligns execution with trailing acceleration stops. Signals are permitted only when price closes above the Parabolic SAR point for BUY signals, or below the Parabolic SAR point for SELL signals.
10. Heiken Ashi Structural Filter:
Calculates synthetic Heiken Ashi open and close pricing. BUY signals require a green Heiken Ashi bar (HA Close > HA Open); SELL signals require a red Heiken Ashi bar (HA Close < HA Open).
11. CCI Trend Zero-Crossing Filter:
Evaluates cyclical deviation from the statistical mean via the Commodity Channel Index. BUY signals require CCI > 0; SELL signals require CCI < 0.
12. CCI Extreme Overbought and Oversold Reversal Filter:
Evaluates statistical expansion into extreme bands. Validates BUY signals when CCI exceeds CCI_Overbought, and SELL signals when CCI drops below CCI_Oversold.
13. Relative Vigor Index Trend Filter:
Applies the 75-period RVI oscillator to measure closing conviction relative to bar ranges. BUY signals require RVI Main > 0; SELL signals require RVI Main < 0.
14. RVI Signal Line Crossover Filter:
Evaluates convergence between the RVI main line and its 4-period symmetrically weighted signal line. BUY signals require RVI Main > RVI Signal; SELL signals require RVI Main < RVI Signal.
15. MACD Histogram and Zero-Line Confluence Engine:
Contains two independent MACD validation algorithms:
- MACD Signal Filter: Checks the histogram differential (MACD Main minus MACD Signal). BUY requires Histogram > 0; SELL requires Histogram < 0.
- MACD Zero Filter: Evaluates absolute oscillator position relative to the zero baseline. BUY requires MACD Main > 0; SELL requires MACD Main < 0.
16. Dynamic Support and Resistance Structural Zone Filter:
Calculates recent swing peaks and valleys over an adjustable lookback period (SR_Period). Builds a dynamic volatility threshold defined in points (SR_Zone_Points). Validates signals only when current price touches or intersects these historical support and resistance zones.
17. Algorithmic ZigZag Fibonacci Retracement Filter:
Extracts cyclical swing highs and swing lows using an integrated high-low search engine parameterized by Depth, Deviation, and Backstep. Calculates dynamic Fibonacci retracement levels (default 38.2% and 61.8%) across the active swing leg. Signals are confirmed only if the current bar low and high test the calculated Fibonacci golden pocket zone.
Technical Specifications and Recommended Operating Setup
- Supported Platform: MetaTrader 5 (Desktop Terminal).
- Operating Asset Classes: Liquid Forex currency pairs (EURUSD, GBPUSD, USDJPY, AUDUSD, NZDUSD, USDCAD, USDCHF), precious metals (XAUUSD, XAGUSD), global equity indices, and liquid CFDs.
- Supported Timeframes: Fully compatible with all native timeframes from M1 to MN1. Optimal operational efficiency is observed on M15, M30, H1, and H4 charts.
- Account Type Compatibility: Operates identically on both Hedging and Netting account structures across standard, raw spread, and ECN broker environments.
- Execution Latency: Calculations occur natively within the MT5 client terminal cache. Low latency VPS environments are recommended when deploying high-frequency scanning or instant push notification routing.
Input Parameters Documentation
Ichimoku Base Settings:
- InpTenkan (Default: 9) -> Lookback period for the Tenkan-sen conversion line calculation.
- InpKijun (Default: 26) -> Lookback period for the Kijun-sen baseline calculation.
- InpSenkou (Default: 52) -> Lookback period for the Senkou Span B primary calculation.
- InpCloudShift (Default: 0) -> Bar shift applied to the Senkou Span B buffer. Set to 0 to align historical Span B directly with current price action, or 26 to match standard forward cloud projection.
Signal and Visual Customization:
- WarnaPanahBUY (Default: clrAqua) -> Chart color for the bullish BUY signal arrow.
- WarnaPanahSELL (Default: clrRed) -> Chart color for the bearish SELL signal arrow.
- KetebalanPanah (Default: 2) -> Display thickness (width) of plotted signal arrow markers on the chart.
- JarakCandle (Default: 50) -> Vertical offset distance in points between the candle extreme (High/Low) and the plotted arrow marker.
- NotifAlert (Default: true) -> Enables or disables pop-up dialog box alerts within the MetaTrader 5 desktop client terminal.
- NotifPush (Default: true) -> Enables or disables instant mobile push notifications sent to Android and iOS MetaTrader 5 apps via MetaQuotes ID.
- NotifSound (Default: true) -> Enables or disables local audio playback when a verified signal occurs.
- SoundFile (Default: "alert.wav") -> Specifies the audio sound filename located within the MT5 Sounds directory for audio alerts.
Candle Type Filter:
- FilterJenisCandle (Default: true) -> Enforces directional candlestick confirmation. When true, BUY requires Close > Open (bullish candle), and SELL requires Close < Open (bearish candle).
Filter Mode Master Switch:
- Mode_Group (Default: "=== FILTER MODE ===") -> Section divider string separating signal visual parameters from analytical filter configurations.
RSI Cross Filter Settings:
- Use_RSI_Cross_Filter (Default: false) -> Enables or disables the RSI boundary breakout crossover filter.
- RSI_Length (Default: 14) -> Calculation period (number of bars) for the RSI oscillator.
- RSI_Price_Source (Default: PRICE_CLOSE) -> Applied price constant used in RSI calculation (e.g., Close, Open, High, Low, Median).
- Oversold (Default: 30.0) -> Numerical boundary for oversold conditions required for bullish signal crossover.
- Overbought (Default: 70.0) -> Numerical boundary for overbought conditions required for bearish signal crossover.
ADX Trend Filter Settings:
- Use_ADX_Filter (Default: false) -> Enables or disables the Average Directional Movement Index volatility and trend filter.
- ADX_Period (Default: 10) -> Calculation period (number of bars) for the ADX indicator.
- ADX_Min_Level (Default: 20.0) -> Minimum threshold value of the main ADX line required to confirm sufficient trend velocity.
Single Moving Average Filter Settings:
- Use_MA_Filter (Default: false) -> Enables or disables the single Moving Average trend direction filter.
- MA_Period (Default: 50) -> Averaging period (number of bars) for the Moving Average line.
- MA_Method (Default: MODE_SMA) -> Mathematical smoothing method applied to the Moving Average (Simple, Exponential, Smoothed, or Linear Weighted).
- MA_Shift (Default: 0) -> Horizontal bar offset displacement for the Moving Average line.
Ichimoku Senkou Span B Secondary Filter:
- Use_Ichimoku_Filter (Default: false) -> Enables or disables the auxiliary Ichimoku Senkou Span B baseline filter.
- Ichimoku_SenkouB (Default: 52) -> Lookback period for calculating the auxiliary Senkou Span B line.
- Ichimoku_Kijun (Default: 26) -> Shift displacement applied to the auxiliary Ichimoku Span B buffer.
RSI 75 Sentiment Filter Settings:
- Use_RSI75_Filter (Default: false) -> Enables or disables the long-cycle 75-period RSI baseline sentiment filter.
- RSI_Filter_Period (Default: 75) -> Calculation lookback period for the long-cycle RSI filter.
Double Moving Average Filter Settings:
- Use_DoubleMA_Filter (Default: false) -> Enables or disables the dual Moving Average ribbon trend alignment filter.
- MA_A_Period (Default: 30) -> Averaging period for Fast Moving Average A.
- MA_A_Method (Default: MODE_EMA) -> Smoothing method applied to Fast Moving Average A (default: Exponential).
- MA_A_Applied (Default: PRICE_CLOSE) -> Price constant applied to Fast Moving Average A.
- MA_A_Shift (Default: 0) -> Horizontal bar shift displacement for Fast Moving Average A.
- MA_B_Period (Default: 140) -> Averaging period for Slow Moving Average B.
- MA_B_Method (Default: MODE_EMA) -> Smoothing method applied to Slow Moving Average B (default: Exponential).
- MA_B_Applied (Default: PRICE_CLOSE) -> Price constant applied to Slow Moving Average B.
- MA_B_Shift (Default: 0) -> Horizontal bar shift displacement for Slow Moving Average B.
Awesome Oscillator Filter Settings:
- Use_AO_Filter (Default: false) -> Master switch enabling or disabling Awesome Oscillator evaluations.
- Use_AO_Volume_Filter (Default: false) -> Enables absolute momentum threshold validation on the AO oscillator.
- AO_Buy_Min (Default: 4.0) -> Minimum positive AO numerical threshold required to confirm BUY signals.
- AO_Sell_Max (Default: -4.0) -> Maximum negative AO numerical threshold required to confirm SELL signals.
- Use_AO_Color_Filter (Default: false) -> Enforces rising AO bars for BUY and falling AO bars for SELL.
- Use_AO_Zero_Filter (Default: false) -> Enforces positive rising AO values for BUY and negative falling AO values for SELL.
Parabolic SAR Filter Settings:
- Use_SAR_Filter (Default: false) -> Enables or disables the Parabolic Stop and Reverse directional trailing filter.
- SAR_Step (Default: 0.02) -> Acceleration factor step increment for the Parabolic SAR calculation.
- SAR_Maximum (Default: 0.2) -> Maximum acceleration factor ceiling for the Parabolic SAR calculation.
Heiken Ashi Filter Settings:
- Use_HeikenAshi_Filter (Default: false) -> Enables or disables candlestick color validation via Heiken Ashi synthetic open and close pricing.
CCI Trend Filter Settings:
- Use_CCI_Filter (Default: false) -> Enables or disables the Commodity Channel Index zero-line directional trend filter.
- CCI_Period (Default: 50) -> Calculation lookback period (number of bars) for the trend CCI indicator.
- CCI_Applied (Default: PRICE_CLOSE) -> Applied price constant used for calculating the trend CCI.
CCI Overbought & Oversold Filter Settings:
- Use_CCI_OBOS_Filter (Default: false) -> Enables or disables the short-period CCI extreme reversal filter.
- CCI_OBOS_Period (Default: 14) -> Calculation lookback period for the extreme-level CCI oscillator.
- CCI_OBOS_Applied (Default: PRICE_CLOSE) -> Applied price constant used for the extreme-level CCI oscillator.
- CCI_Overbought (Default: 100.0) -> Upper extreme threshold level required for oversold/overbought validation.
- CCI_Oversold (Default: -100.0) -> Lower extreme threshold level required for oversold/overbought validation.
RVI Trend Filter Settings:
- Use_RVI_Filter (Default: false) -> Enables or disables the Relative Vigor Index zero-line trend filter.
- RVI_Period (Default: 75) -> Calculation lookback period for the long-cycle RVI indicator.
RVI Signal Line Filter Settings:
- Use_RVI_Signal_Filter (Default: false) -> Enables or disables the RVI main line versus signal line crossover filter.
- RVI_Signal_Period (Default: 20) -> Calculation lookback period for the responsive RVI crossover oscillator.
MACD Signal Filter Settings:
- Use_MACD_Filter (Default: false) -> Enables or disables the MACD histogram differential filter.
- MACD_FastEMA (Default: 12) -> Fast Exponential Moving Average period for MACD calculation.
- MACD_SlowEMA (Default: 26) -> Slow Exponential Moving Average period for MACD calculation.
- MACD_SignalSMA (Default: 9) -> Signal line Simple Moving Average period for MACD calculation.
- MACD_Applied (Default: PRICE_CLOSE) -> Applied price constant used in the MACD calculation.
MACD Level 0 Filter Settings:
- Use_MACD_Zero_Filter (Default: false) -> Enables or disables the absolute MACD baseline zero-crossing filter.
Support & Resistance Structural Filter Settings:
- Use_SR_Filter (Default: false) -> Enables or disables the algorithmic dynamic Support and Resistance zone filter.
- SR_Period (Default: 50) -> Lookback period (number of bars) scanned to identify absolute swing highs and swing lows.
- SR_Zone_Points (Default: 80) -> Proximity boundary tolerance in points around identified support and resistance price extremes.
Fibonacci Retracement Filter Settings:
- Use_Fib_Filter (Default: false) -> Enables or disables the dynamic swing Fibonacci retracement confluence filter.
- Fib_Level_1 (Default: 0.382) -> Primary Fibonacci retracement ratio boundary (default: 38.2%).
- Fib_Level_2 (Default: 0.618) -> Secondary Fibonacci retracement ratio boundary (default: 61.8%).
- ZigZag_Depth (Default: 12) -> Minimum bar interval required to identify localized structural swing peaks and troughs.
- ZigZag_Deviation (Default: 5) -> Minimum price deviation in points required to validate a new swing point.
- ZigZag_Backstep (Default: 3) -> Minimum number of bars separating consecutive swing high and swing low points.
Operational Workflow and Setup Instructions
1. Indicator Attachment:
Attach the indicator to any MetaTrader 5 chart. The primary Senkou Span B buffer plots directly in the chart window as a sky blue line (customizable in the Colors tab).
2. Choosing Filter Combinations:
By default, all auxiliary filters are set to false, allowing traders to observe pure Senkou Span B rejection signals confirmed by the candle direction filter (FilterJenisCandle = true). To refine signal selectivity, enable specific filter modules corresponding to your trading strategy (such as trend following, momentum confirmation, or volatility breakout).
3. Confluence Optimization:
Activating multiple correlated filters simultaneously (such as Single MA, Double MA, and MACD Zero) provides high-stringency filtering, which narrows signal frequency while focusing strictly on established structural trends. For range-bound environments, pairing Senkou Span B touches with Support & Resistance and Fibonacci filters focuses analysis around structural rejection boundaries.
4. Alerts and Notifications:
Configure NotifAlert, NotifPush, and NotifSound according to operational requirements. Ensure mobile push notifications are configured in the MT5 desktop client (Tools -> Options -> Notifications) using your personal MetaQuotes ID.
Risk Disclaimer
Trading foreign exchange, precious metals, indices, and financial derivatives carries substantial risk of capital loss and may not be suitable for all market participants. Technical indicators and analytical software tools do not guarantee financial returns, predictive market certainty, or specific performance metrics. Historical chart behavior and backtest evaluations do not represent reliable guarantees of future performance. Users should conduct comprehensive testing on demo simulation accounts to evaluate risk parameters, software logic, and execution suitability before deploying any technical system on live accounts.
