CCI MultiFilter PRO MT5 Zero Cross Arrow Filters
- Göstergeler
- Sürüm: 3.1
- Etkinleştirmeler: 5
CCI Multi Filter Pro MT5 - Zero Cross Buy Sell Arrows with 17 Confirmation Filters and Instant Alerts
CCI Multifilter Pro is a MetaTrader 5 indicator that uses CCI zero-cross as the entry trigger, then confirms that trigger with optional filters. Buy is considered when CCI crosses above zero. Sell is considered when CCI crosses below zero. A signal is accepted only if every filter you enabled also agrees.
You can run a simple CCI-only setup, or combine trend, momentum, candle structure, support/resistance, and Fibonacci filters in one indicator. Filters do not create signals by themselves. They only approve or reject a CCI zero-cross.
================
PRODUCT TYPE
================
Type: Custom technical indicator
Platform: MetaTrader 5
Category: Oscillator, signal, and multi-confirmation system
Display: CCI line in a separate window plus arrows on the main chart
Markets: Forex, gold, indices, crypto, stocks, and commodities
Timeframes: All timeframes from M1 to MN
Live signal timing: Last closed bar
Version: 3.1
================
WHAT THE INDICATOR DOES
================
The core idea stays simple. The quality of the signal is controlled by the filters you switch on.
Step 1. Detect a CCI zero-cross on the last closed bar.
Step 2. Mark the candidate as buy if CCI is above zero, or sell if CCI is below zero.
Step 3. Check every enabled filter. If one enabled filter fails, the signal is rejected.
Step 4. If accepted, draw the arrow and send alerts according to your settings.
Disabled filters are ignored. Turning on many filters at the same time will reduce the number of arrows. That is normal. Use 2 to 5 filters for a balanced setup. Use more filters only when you want rare and highly confirmed events.
================
KEY FEATURES
================
- CCI zero-cross engine with adjustable period and price source
- Optional CCI line in a separate window
- Buy and sell arrows with custom color, size, and distance
- Historical arrows for visual review
- 17 independent confirmation modules
- Built-in Heiken Ashi calculation, no extra HA indicator needed
- Custom swing search for Fibonacci retracement zones
- Support and resistance zone touch filter
- Popup, sound, push, and email alerts
- Separate sound files for buy and sell
- Works on any MT5 symbol and timeframe
- Modular design: enable only the filters you need
================
ADVANTAGES
================
One workspace instead of many indicators
You do not need to stack CCI, RSI, ADX, MACD, Ichimoku, SAR, and moving averages as separate tools. The CCI pane and the arrows stay on the chart. The rest of the logic runs in the background.
Same entry idea, higher control
The trigger remains CCI zero-cross. Filters raise or lower the acceptance standard. This makes testing clearer because the entry definition does not change every time you add a condition.
Filters from different families
Trend filters: ADX, MA, Double MA, Ichimoku Senkou Span B, Parabolic SAR.
Momentum filters: RSI Cross, RSI 75, CCI Trend, CCI OB/OS, RVI, RVI Signal, MACD, Awesome Oscillator.
Structure filters: Heiken Ashi, Support and Resistance, Fibonacci.
Alert-ready workflow
You can watch the chart or receive popup, sound, push, and email messages when a filtered cross appears on a new closed bar.
Flexible signal frequency
Fast CCI with few filters produces more arrows.
Fast CCI with several filters produces fewer and more selective arrows.
Slower CCI with trend filters is more suitable for swing-style charts.
================
HOW EACH FILTER WORKS
================
1. RSI Cross Filter
Requires RSI to leave an extreme when CCI crosses zero.
Buy: RSI crosses up through the Oversold level.
Sell: RSI crosses down through the Overbought level.
Use this if you want a zero-cross after RSI exhaustion, not a random mid-range flip.
2. ADX Filter
Requires ADX to stay above your minimum level.
Use this to reduce signals in weak or sideways conditions.
3. Single MA Filter
Buy only if price is above the moving average.
Sell only if price is below the moving average.
Use this as a simple trend bias.
4. Ichimoku Senkou Span B Filter
Buy only if price is above Senkou Span B.
Sell only if price is below Senkou Span B.
Use this as a slower structure bias without drawing a full Ichimoku set.
5. RSI 75 Filter
Uses a slow RSI as a regime filter.
Buy if this RSI is above 50.
Sell if this RSI is below 50.
Use this to keep a fast CCI trigger aligned with a broader momentum side.
6. Double MA Filter
Buy if MA A is above MA B.
Sell if MA A is below MA B.
Use this as a classic dual moving-average trend check.
7. Awesome Oscillator Filter
Confirms with AO. You can enable one or more AO conditions:
- Level condition: AO must reach AO_Buy_Min for buys or AO_Sell_Max for sells
- Color/slope condition: AO must rise for buys and fall for sells
- Zero condition: AO must be above zero and rising for buys, below zero and falling for sells
AO raw values depend on the symbol price scale. Recalibrate on gold, crypto, and JPY pairs.
8. Parabolic SAR Filter
Buy if price is above SAR.
Sell if price is below SAR.
Use this as a tight trend-side veto.
9. Heiken Ashi Filter
Buy if HA Close is above HA Open.
Sell if HA Close is below HA Open.
Heiken Ashi is calculated internally from OHLC.
10. CCI Trend Filter
Uses a slower CCI as directional bias.
Buy if the slow CCI is above zero.
Sell if the slow CCI is below zero.
Use fast CCI for the trigger and slow CCI for the trend.
11. CCI OB and OS Filter
Uses a second CCI and requires it to already be in an extreme.
Buy if that CCI is above CCI_Overbought.
Sell if that CCI is below CCI_Oversold.
This is an expansion filter, not a mean-reversion filter.
12. RVI Trend Filter
Buy if RVI is above zero.
Sell if RVI is below zero.
Use this to confirm close-versus-open vigor.
13. RVI Signal Filter
Buy if RVI main is above RVI signal.
Sell if RVI main is below RVI signal.
14. MACD Signal Filter
Uses MACD histogram: Main minus Signal.
Buy if histogram is above zero.
Sell if histogram is below zero.
15. MACD Level 0 Filter
Buy if MACD main line is above zero.
Sell if MACD main line is below zero.
This checks the MACD side of zero, not only the histogram color.
16. Support and Resistance Filter
Scans the last SR_Period bars for the lowest low and highest high, then builds a zone with SR_Zone_Points.
Buy is accepted only near that support zone.
Sell is accepted only near that resistance zone.
A touch is valid if price is inside the zone or the candle crosses the level.
17. Fibonacci Filter
Finds two recent swing points with a ZigZag-style search, then builds a zone between Fib_Level_1 and Fib_Level_2. Default levels are 0.382 and 0.618.
The signal candle must overlap that zone.
If two valid swings are not found, the signal is rejected.
================
COMPLETE INPUT GUIDE
================
CCI SETTINGS
CCI_Period: bars used by the signal CCI. Default 8 is fast. Use 14 if you want fewer raw crosses.
CCI_Source: price used by CCI. Default is close.
ShowCCI: true draws the CCI line. false hides the line and keeps arrows and alerts.
SIGNAL SETTINGS
ShowArrows: true draws arrows on the chart.
EnableAlerts: master switch for all alert channels.
ALERT AND NOTIFICATION
EnablePopupAlert: standard MetaTrader popup.
EnableSoundAlert: plays a wav file.
BuySoundFile: buy sound. Default alert.wav.
SellSoundFile: sell sound. Default alert2.wav.
EnablePushNotify: push to the MetaTrader mobile app. Set MetaQuotes ID first in Tools > Options > Notifications.
EnableEmailAlert: email alert. Set SMTP first in Tools > Options > Email.
AlertOnNewBarOnly: intended to keep alerts on new-bar events. The live engine already evaluates the last closed bar and stores the last signal time, so the same candle time is not alerted twice.
ARROW SETTINGS
BuyColor: buy arrow color. Default lime.
SellColor: sell arrow color. Default red.
ArrowSize: font size of the arrow character. Default 15.
ArrowDistance: offset from the candle in points. Buy is placed below the low. Sell is placed above the high. On 5-digit forex, 30 points equals 3 pips. Use a larger value on gold and indices.
MaxHistoryBars: how far back historical arrows are drawn on first load. Default 10000. Lower this on slow computers.
RSI CROSS FILTER
Use_RSI_Cross_Filter: enable or disable.
RSI_Length: RSI period. Default 14.
RSI_Price_Source: price used by RSI. Default close.
Oversold: buy-side RSI cross level. Default 30.
Overbought: sell-side RSI cross level. Default 70.
ADX FILTER
Use_ADX_Filter: enable or disable.
ADX_Period: ADX lookback. Default 10.
ADX_Min_Level: minimum ADX value. Default 20. Raise to 25-30 for stronger trend conditions.
SINGLE MA FILTER
Use_MA_Filter: enable or disable.
MA_Period: moving average length. Default 50.
MA_Method: SMA, EMA, SMMA, or LWMA. Default SMA.
MA_Shift: bar shift. Keep 0 unless you use a displaced average.
ICHIMOKU SENKOU SPAN B FILTER
Use_Ichimoku_Filter: enable or disable.
Ichimoku_SenkouB: Senkou Span B period. Default 52.
Ichimoku_Kijun: Kijun period passed into Ichimoku. Default 26.
Tenkan is fixed at 9 in the code. Only Senkou Span B is used by the filter.
RSI 75 FILTER
Use_RSI75_Filter: enable or disable.
RSI_Filter_Period: slow RSI period. Default 75.
Buy needs this RSI above 50. Sell needs this RSI below 50.
DOUBLE MA FILTER
Use_DoubleMA_Filter: enable or disable.
MA_A_Period / MA_A_Method / MA_A_Applied / MA_A_Shift: fast average. Default 30 EMA on close, shift 0.
MA_B_Period / MA_B_Method / MA_B_Applied / MA_B_Shift: slow average. Default 140 EMA on close, shift 0.
AWESOME OSCILLATOR FILTER
Use_AO_Filter: master switch.
Use_AO_Volume_Filter: require AO to reach AO_Buy_Min or AO_Sell_Max.
AO_Buy_Min: default 4.0.
AO_Sell_Max: default -4.0.
Use_AO_Color_Filter: require AO rising for buys and falling for sells.
Use_AO_Zero_Filter: require AO on the correct side of zero and moving in the signal direction.
PARABOLIC SAR FILTER
Use_SAR_Filter: enable or disable.
SAR_Step: acceleration factor. Default 0.02.
SAR_Maximum: maximum acceleration. Default 0.2.
HEIKEN ASHI FILTER
Use_HeikenAshi_Filter: enable or disable. No extra inputs.
CCI TREND FILTER
Use_CCI_Filter: enable or disable.
CCI_Filter_Period: slow CCI period. Default 50.
CCI_Filter_Applied: price source. Default close.
CCI OB AND OS FILTER
Use_CCI_OBOS_Filter: enable or disable.
CCI_OBOS_Period: period. Default 14.
CCI_OBOS_Applied: price source. Default close.
CCI_Overbought: buy threshold. Default 100.
CCI_Oversold: sell threshold. Default -100.
RVI TREND FILTER
Use_RVI_Filter: enable or disable.
RVI_Period: default 75.
RVI SIGNAL FILTER
Use_RVI_Signal_Filter: enable or disable.
RVI_Signal_Period: default 20.
MACD SIGNAL FILTER
Use_MACD_Filter: enable or disable.
MACD_FastEMA: default 12.
MACD_SlowEMA: default 26.
MACD_SignalSMA: default 9.
MACD_Applied: price source. Default close.
MACD LEVEL 0 FILTER
Use_MACD_Zero_Filter: enable or disable.
Uses the same MACD settings as the histogram filter.
SUPPORT AND RESISTANCE FILTER
Use_SR_Filter: enable or disable.
SR_Period: lookback bars. Default 50.
SR_Zone_Points: zone thickness in points. Default 80. Increase on volatile symbols. Decrease if too many candles pass the zone.
FIBONACCI FILTER
Use_Fib_Filter: enable or disable.
Fib_Level_1: first retracement ratio. Default 0.382.
Fib_Level_2: second retracement ratio. Default 0.618.
ZigZag_Depth: bars required on each side of a swing. Default 12. Higher depth means fewer swings.
ZigZag_Deviation: minimum swing size in points. Default 5. Raise this on gold and indices.
ZigZag_Backstep: minimum bar distance between accepted swings. Default 3.
================
HOW TO USE
================
Installation
1. Open MetaTrader 5.
2. File > Open Data Folder > MQL5 > Indicators.
3. Copy the indicator file there.
4. Restart MetaTrader 5 or refresh the Navigator list.
5. Attach the indicator to a chart.
6. Set inputs, then click OK.
First-run checklist
- Set MaxHistoryBars according to your computer speed.
- Decide whether the CCI window should stay visible.
- Keep alerts off until the arrow behavior looks acceptable.
- Configure push and email inside MetaTrader options before enabling those channels.
- Adjust ArrowDistance per symbol so arrows do not cover the candles.
Starting combinations
Conservative trend setup:
Use_MA_Filter = true, period 50 SMA
Use_ADX_Filter = true, ADX minimum 20
Use_MACD_Zero_Filter = true
Leave the other filters off first.
Momentum confirmation setup:
Use_RSI75_Filter = true
Use_MACD_Filter = true
Use_RVI_Filter = true
Candle and structure setup:
Use_HeikenAshi_Filter = true
Use_SAR_Filter = true
Use_SR_Filter = true
Retracement setup:
Use_Fib_Filter = true
Use_MA_Filter or Use_DoubleMA_Filter = true
Optional ADX to reduce weak-market crosses
Lower-timeframe setup:
Keep CCI_Period at 8.
Use only 1 or 2 fast filters, for example Heiken Ashi and SAR, or Double MA.
Do not enable SR, Fibonacci, RSI75, and ADX together on M1 or M5 if you still want frequent arrows.
Higher-timeframe setup:
CCI_Period 14 or 20
ADX + Double MA + Ichimoku Senkou Span B
Enable push or email alerts
How to tune
1. Start with all filters off and review raw CCI arrows.
2. Enable one filter and see how many arrows remain.
3. Enable a second filter from a different family, for example one trend filter and one momentum filter.
4. Stop adding filters when the remaining arrows match the trades you actually want to take.
5. Turn on alerts only after that.
Common mistakes
- Enabling every filter at the same time
- Copying AO min/max values from EURUSD to XAUUSD without checking the AO scale
- Setting ArrowDistance too small
- Using the Fibonacci filter on a very short history where swings cannot be found
- Treating arrows as a complete strategy
This product is a signal and confirmation tool. Risk control, stop placement, spread, and session conditions remain the responsibility of the trader.
================
PRODUCT DETAILS
================
Short name on chart: CCI v3.1 Multi Filters
Arrow object names: BUY_CCI_timestamp and SELL_CCI_timestamp
Plotted buffer: 1 CCI line
Internal calculations: Heiken Ashi, swing points, support/resistance zone, MACD histogram
Standard handles used: iCCI, iRSI, iADX, iMA, iIchimoku, iAO, iSAR, iRVI, iMACD
Alert functions: popup, sound, push notification, email
Compatibility: MetaTrader 5, hedging or netting accounts, demo and live charts. Attach separately on each chart, symbol, and timeframe.
Performance note: a high MaxHistoryBars value plus Fibonacci and Support/Resistance filters uses more CPU. If the chart becomes slow, lower MaxHistoryBars or disable those two filters while testing.
This product is not an Expert Advisor and does not place trades automatically. It does not guarantee results. Past arrows are rebuilt from current input settings. If you change filters, reload the indicator to refresh historical marks.
================
IMPORTANT NOTES
================
- Live alerts are based on the last closed bar.
- If the Fibonacci filter cannot find two swings, it rejects the candidate.
- AO thresholds are raw oscillator units, not pips.
- The indicator can be attached to any instrument that MetaTrader 5 can chart.
- Always test on a demo chart first and record the exact input set you use.
Thank you for using CCI Multifilter Pro.
