Pro Momentum Cross 100 Multi Filter Signal MT5
- Indicators
- Version: 1.41
- Activations: 5
Momentum KU v1.41 Technical Documentation and Operational Manual
1. Overview and Purpose
Momentum KU v1.41 is an analytical technical indicator engineered natively for the MetaTrader 5 (MT5) platform. The primary objective of the software is to detect directional momentum transitions across financial assets and provide multi-layered signal validation through an integrated architecture of seventeen independent technical filter subsystems. Momentum KU executes as an on-chart visual utility, plotting directional arrow markers directly on price bars while maintaining dedicated calculation buffers for manual trading reference and automated Expert Advisor integration. Momentum analysis serves as a foundational pillar of modern quantitative and discretionary trading strategies. However, baseline momentum oscillators frequently experience false breakout signals and whipsaws during range-bound market consolidation. Momentum KU addresses this challenge by combining a core momentum cross engine with a comprehensive suite of multi-discipline technical filters. Traders can operate the indicator as a standalone momentum crossing system or configure multi-indicator confirmation templates incorporating statistical oscillators, moving average ribbons, cloud equilibrium models, dynamic horizontal support and resistance channels, algorithmic swing Fibonacci retracement zones, and synthetic candlestick price smoothing. The software functions across multiple asset classes, including Forex currency pairs, precious metals (Gold and Silver), energy commodities, equity indices, and cryptocurrency contracts. All calculations are executed natively in MQL5, ensuring high execution speed, minimal CPU overhead, and full compatibility with both Hedging and Netting account structures.
2. Technical Operating Principles and Algorithmic Logic
The core mathematical foundation of Momentum KU is built upon the classical Momentum oscillator formula, standardized around the 100.0 equilibrium baseline:
Momentum = (Current Price / Historical Price N Periods Ago) * 100.0
Where Current Price is determined by the evaluation bar (bar i) according to the user-defined AppliedPrice enumeration, and Historical Price is extracted exactly MomentumPeriod bars prior to the evaluation bar (bar i - MomentumPeriod). The resulting ratio is multiplied by 100.0 to generate an equilibrium baseline centered at 100.0.
The software accommodates seven standard applied price types:
- PRICE_CLOSE: Uses candle closing prices, reflecting final session valuation.
- PRICE_OPEN: Uses candle opening prices, prioritizing initial period sentiment.
- PRICE_HIGH: Uses candle extreme high prices, sensitive to peak buying pressure.
- PRICE_LOW: Uses candle extreme low prices, sensitive to peak selling pressure.
- PRICE_MEDIAN: Calculated as (High + Low) / 2.0, smoothing intra-candle extremes.
- PRICE_TYPICAL: Calculated as (High + Low + Close) / 3.0, providing balanced volume-weighted weighting.
- PRICE_WEIGHTED: Calculated as (High + Low + 2 * Close) / 4.0, emphasizing closing price significance.
Baseline Entry Trigger Logic:
- BUY Signal Trigger: A baseline bullish event occurs when the calculated momentum line crosses from below or equal to 100.0 to strictly above 100.0 across closed bars: (MomentumBuffer[i] > 100.0) AND (MomentumBuffer[i - 1] <= 100.0).
- SELL Signal Trigger: A baseline bearish event occurs when the calculated momentum line crosses from above or equal to 100.0 to strictly below 100.0 across closed bars: (MomentumBuffer[i] < 100.0) AND (MomentumBuffer[i - 1] >= 100.0).
Multi-Filter Validation Engine: A baseline crossing event initiates an internal boolean evaluation sequence across all seventeen secondary filter subsystems. The system maintains two internal boolean flags: fBuy and fSell. When any individual filter module is active, its mathematical condition is evaluated against closed candle data. If an active filter condition is not fulfilled, the respective direction flag is invalidated. An on-chart arrow signal and alert notification are generated if and only if all active filters return affirmative confirmation for the given signal direction.
3. Verified Non-Repainting Execution Architecture
Momentum KU v1.41 is engineered with a strict non-repainting execution framework. In live trading environments, indicators that compute on active unclosed bars frequently exhibit signal shifting, disappearance, or retrospective adjustment. Momentum KU prevents these issues through structural algorithmic isolation:
- Closed Bar Processing Boundary: Calculations in OnCalculate() evaluate price data strictly up to index rates_total - 2. In MetaTrader 5 open-ended arrays, index rates_total - 1 corresponds to the active, incomplete candle (Shift 0), while rates_total - 2 represents the most recently completed and closed candle (Shift 1). By terminating loop processing at rates_total - 2, signals are calculated exclusively on finalized price records.
- Live Candle Signal Suppression: The software explicitly assigns empty values to the active bar: BuySignal[rates_total - 1] = EMPTY_VALUE and SellSignal[rates_total - 1] = EMPTY_VALUE. This prevents real-time tick fluctuations from rendering premature arrows.
- Static Signal Permanence: Once a candle closes and an arrow is plotted, the corresponding buffer index remains static. Arrows will never reposition, recalculate, or disappear on historical chart data.
- Controlled Alert Dispatch: Alert handlers evaluate a static timestamp variable (lastAlertTime). Notifications are dispatched strictly once per closed bar event, eliminating repetitive alert triggers caused by intra-bar market ticks.
4. In-Depth Operational Architecture of the Seventeen Modular Filters
Momentum KU v1.41 incorporates seventeen independent analytical filter modules. Each filter can be individually activated, customized, or deactivated via user input parameters:
- RSI Cross Filter: Evaluates statistical boundary recovery. Enabled via Use_RSI_Cross_Filter. Parameters include RSI_Length (default 14), RSI_Price_Source (default PRICE_CLOSE), Oversold (default 30.0), and Overbought (default 70.0). A BUY signal requires RSI to cross upward from oversold territory: (rsi[idx] > Oversold) AND (rsi[idx + 1] <= Oversold). A SELL signal requires RSI to cross downward from overbought territory: (rsi[idx] < Overbought) AND (rsi[idx + 1] >= Overbought). This prevents entries during exhausted momentum phases.
- ADX Filter (Average Directional Movement Index): Acts as a directional strength gatekeeper. Enabled via Use_ADX_Filter. Parameters include ADX_Period (default 10) and ADX_Min_Level (default 20.0). Signals are authorized only when the main ADX line is greater than or equal to ADX_Min_Level: (adx[idx] >= ADX_Min_Level). Signals occurring during low-volatility consolidation are blocked.
- Single Moving Average Filter: Provides baseline trend regime alignment. Enabled via Use_MA_Filter. Parameters include MA_Period (default 50), MA_Method (default MODE_SMA), and MA_Shift (default 0). A BUY signal requires the closed candle price to reside above the moving average curve: (close[i] > ma[idx]). A SELL signal requires the closed candle price to reside below the moving average curve: (close[i] < ma[idx]).
- Ichimoku Senkou Span B Filter: Evaluates macro structural equilibrium using Senkou Span B. Enabled via Use_Ichimoku_Filter. Parameters include Ichimoku_SenkouB (default 52) and Ichimoku_Kijun (default 26). BUY signals require closing price above Senkou Span B: (close[i] > senkouB[idx]). SELL signals require closing price below Senkou Span B: (close[i] < senkouB[idx]).
- RSI 75 Macro Equilibrium Filter: Assesses long-term momentum polarity relative to the 50.0 median mark. Enabled via Use_RSI75_Filter. Parameter: RSI_Filter_Period (default 75). BUY signals require RSI(75) > 50.0. SELL signals require RSI(75) < 50.0.
- Double Moving Average Ribbon Filter: Evaluates moving average hierarchy alignment. Enabled via Use_DoubleMA_Filter. Parameters include Fast MA_A (MA_A_Period 30, MA_A_Method MODE_EMA, MA_A_Applied PRICE_CLOSE, MA_A_Shift 0) and Slow MA_B (MA_B_Period 140, MA_B_Method MODE_EMA, MA_B_Applied PRICE_CLOSE, MA_B_Shift 0). BUY signals require Fast MA_A to reside strictly above Slow MA_B: (ma_a[idx] > ma_b[idx]). SELL signals require Fast MA_A to reside strictly below Slow MA_B: (ma_a[idx] < ma_b[idx]).
- Awesome Oscillator (AO) Multi-State Filter: Analyzes momentum dynamics calculated from 5-period and 34-period median price moving averages. Enabled via Use_AO_Filter. Sub-modes include: AO Volume Mode (Use_AO_Volume_Filter, AO_Buy_Min 4.0, AO_Sell_Max -4.0); AO Color Slope Mode (Use_AO_Color_Filter, requiring green bar for buy, red bar for sell); and AO Zero Baseline Mode (Use_AO_Zero_Filter, requiring positive values for buy, negative values for sell).
- Parabolic SAR Filter: Evaluates trailing price stops. Enabled via Use_SAR_Filter. Parameters include SAR_Step (default 0.02) and SAR_Maximum (default 0.2). BUY signals require candle close above Parabolic SAR: (close[i] > sar[idx]). SELL signals require candle close below Parabolic SAR: (close[i] < sar[idx]).
- CCI Trend Direction Filter: Assesses statistical price deviation from historical mean. Enabled via Use_CCI_Filter. Parameters include CCI_Period (default 50) and CCI_Applied (default PRICE_CLOSE). BUY signals require positive deviation: (cci[idx] > 0.0). SELL signals require negative deviation: (cci[idx] < 0.0).
- CCI Overbought / Oversold Filter: Identifies high-velocity breakout conditions. Enabled via Use_CCI_OBOS_Filter. Parameters include CCI_OBOS_Period (default 14), CCI_OBOS_Applied (default PRICE_CLOSE), CCI_Overbought (default 100.0), and CCI_Oversold (default -100.0). BUY signals require (cci_obos[idx] > CCI_Overbought). SELL signals require (cci_obos[idx] < CCI_Oversold).
- RVI Trend Equilibrium Filter: Measures price conviction by analyzing close-to-open relationships. Enabled via Use_RVI_Filter. Parameter: RVI_Period (default 75). BUY signals require positive vigor: (rvi[idx] > 0.0). SELL signals require negative vigor: (rvi[idx] < 0.0).
- RVI Signal Line Cross Filter: Evaluates RVI main line positioning relative to its 4-period signal line. Enabled via Use_RVI_Signal_Filter. Parameter: RVI_Signal_Period (default 20). BUY signals require (rvi_main[idx] > rvi_sig[idx]). SELL signals require (rvi_main[idx] < rvi_sig[idx]).
- MACD Histogram Signal Filter: Measures divergence between MACD line and signal average: Histogram = MACD_Main - MACD_Signal. Enabled via Use_MACD_Filter. Parameters include MACD_FastEMA (default 12), MACD_SlowEMA (default 26), MACD_SignalSMA (default 9), and MACD_Applied (default PRICE_CLOSE). BUY signals require (hist > 0.0). SELL signals require (hist < 0.0).
- MACD Zero Level Filter: Evaluates MACD main line polarity. Enabled via Use_MACD_Zero_Filter. BUY signals require (macd_main[idx] > 0.0). SELL signals require (macd_main[idx] < 0.0).
- Support & Resistance Rolling Range Filter: Identifies local price extremes across SR_Period bars. Enabled via Use_SR_Filter. Parameters include SR_Period (default 50) and SR_Zone_Points (default 80.0 points). BUY signals require price interaction with the dynamic support boundary. SELL signals require price interaction with the dynamic resistance boundary.
- Algorithmic Swing Fibonacci Retracement Filter: Uses an internal swing-point discovery algorithm to locate structural highs and lows. Enabled via Use_Fib_Filter. Parameters include Fib_Level_1 (default 0.382), Fib_Level_2 (default 0.618), ZigZag_Depth (default 12), ZigZag_Deviation (default 5), and ZigZag_Backstep (default 3). Validates signals only when the candle actively interacts with or trades within this dynamic golden ratio corridor: (low[i] <= zone_high AND high[i] >= zone_low).
- Synthetic Heiken Ashi Filter: Computes internal Heiken Ashi candle vectors without modifying chart display. Enabled via Use_HeikenAshi_Filter. BUY signals require a bullish Heiken Ashi candle body: (ha_close[i] > ha_open[i]). SELL signals require a bearish Heiken Ashi candle body: (ha_close[i] < ha_open[i]).
5. Complete Input Parameters Catalog
Below is the exhaustive documentation of every input parameter available in the MetaTrader 5 properties tab:
Core Momentum Engine:
- MomentumPeriod (Default: 14, Data Type: int, Unit: bars): Number of historical bars utilized in the momentum calculation ratio.
- AppliedPrice (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Price source applied to momentum calculations (PRICE_CLOSE, PRICE_OPEN, PRICE_HIGH, PRICE_LOW, PRICE_MEDIAN, PRICE_TYPICAL, PRICE_WEIGHTED).
- SignalOffset (Default: 50.0, Data Type: double, Unit: points): Vertical visual distance between the candle extreme and the plotted signal arrow.
Notification Settings:
- Notification_Group (Default: "=== NOTIFICATION SETTINGS ===", Data Type: string): Visual section separator in the properties dialog.
- Use_Alert (Default: true, Data Type: bool): Enables or disables native terminal graphical pop-up dialogue alerts.
- Use_Sound (Default: true, Data Type: bool): Enables or disables terminal audible wave sound alerts upon signal generation.
- Use_Push (Default: false, Data Type: bool): Enables or disables instant push notifications to mobile devices via MetaQuotes ID.
- Use_Print (Default: false, Data Type: bool): Enables or disables signal text logging to the terminal Experts execution tab.
- Sound_Buy (Default: "alert.wav", Data Type: string): File path and name of the audio wave file played for bullish signals.
- Sound_Sell (Default: "alert2.wav", Data Type: string): File path and name of the audio wave file played for bearish signals.
Filter Master Group:
- Mode_Group (Default: "=== FILTER MODE ===", Data Type: string): Visual section header for filter modules.
RSI Cross Filter Settings:
- RSI_Group (Default: "=== RSI CROSS FILTER ===", Data Type: string): Visual section separator.
- Use_RSI_Cross_Filter (Default: false, Data Type: bool): Master toggle for the RSI boundary crossing filter.
- RSI_Length (Default: 14, Data Type: int, Unit: bars): Lookback period for Relative Strength Index calculation.
- RSI_Price_Source (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Applied price for the RSI calculation series.
- Oversold (Default: 30.0, Data Type: double, Unit: index value): Lower threshold boundary for oversold zone recovery.
- Overbought (Default: 70.0, Data Type: double, Unit: index value): Upper threshold boundary for overbought zone rejection.
ADX Filter Settings:
- ADX_Group (Default: "=== ADX FILTER ===", Data Type: string): Visual section separator.
- Use_ADX_Filter (Default: false, Data Type: bool): Master toggle for the Average Directional Movement Index filter.
- ADX_Period (Default: 10, Data Type: int, Unit: bars): Averaging period for directional index smoothing.
- ADX_Min_Level (Default: 20.0, Data Type: double, Unit: index value): Minimum required ADX baseline value to validate signals.
Single Moving Average Filter Settings:
- MA_Group (Default: "=== SINGLE MA FILTER ===", Data Type: string): Visual section separator.
- Use_MA_Filter (Default: false, Data Type: bool): Master toggle for single moving average price position filtering.
- MA_Period (Default: 50, Data Type: int, Unit: bars): Lookback period for moving average calculation.
- MA_Method (Default: MODE_SMA, Data Type: ENUM_MA_METHOD): Smoothing algorithm applied (MODE_SMA, MODE_EMA, MODE_SMMA, MODE_LWMA).
- MA_Shift (Default: 0, Data Type: int, Unit: bars): Horizontal bar shift applied to the moving average buffer.
Ichimoku Senkou Span B Filter Settings:
- Ichimoku_Group (Default: "=== ICHIMOKU SENKOU SPAN B FILTER ===", Data Type: string): Visual section separator.
- Use_Ichimoku_Filter (Default: false, Data Type: bool): Master toggle for Senkou Span B baseline filtering.
- Ichimoku_SenkouB (Default: 52, Data Type: int, Unit: bars): Calculation period for Senkou Span B cloud line.
- Ichimoku_Kijun (Default: 26, Data Type: int, Unit: bars): Calculation period for Kijun-sen reference line.
RSI 75 Filter Settings:
- RSI75_Group (Default: "=== RSI 75 FILTER ===", Data Type: string): Visual section separator.
- Use_RSI75_Filter (Default: false, Data Type: bool): Master toggle for long-period RSI 50-level macro filtering.
- RSI_Filter_Period (Default: 75, Data Type: int, Unit: bars): Lookback period for macro RSI calculation.
Double Moving Average Filter Settings:
- DoubleMA_Group (Default: "=== DOUBLE MA FILTER ===", Data Type: string): Visual section separator.
- Use_DoubleMA_Filter (Default: false, Data Type: bool): Master toggle for dual moving average hierarchy filtering.
- MA_A_Period (Default: 30, Data Type: int, Unit: bars): Lookback period for Fast Moving Average A.
- MA_A_Method (Default: MODE_EMA, Data Type: ENUM_MA_METHOD): Averaging method for Moving Average A.
- MA_A_Applied (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Applied price for Moving Average A.
- MA_A_Shift (Default: 0, Data Type: int, Unit: bars): Horizontal bar shift for Moving Average A.
- MA_B_Period (Default: 140, Data Type: int, Unit: bars): Lookback period for Slow Moving Average B.
- MA_B_Method (Default: MODE_EMA, Data Type: ENUM_MA_METHOD): Averaging method for Moving Average B.
- MA_B_Applied (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Applied price for Moving Average B.
- MA_B_Shift (Default: 0, Data Type: int, Unit: bars): Horizontal bar shift for Moving Average B.
Awesome Oscillator Filter Settings:
- AO_Group (Default: "=== AWESOME OSCILLATOR FILTER ===", Data Type: string): Visual section separator.
- Use_AO_Filter (Default: false, Data Type: bool): Master toggle for Awesome Oscillator analysis.
- Use_AO_Volume_Filter (Default: false, Data Type: bool): Enables minimum absolute amplitude threshold check.
- AO_Buy_Min (Default: 4.0, Data Type: double, Unit: oscillator points): Minimum positive value required for buy validation.
- AO_Sell_Max (Default: -4.0, Data Type: double, Unit: oscillator points): Maximum negative value required for sell validation.
- Use_AO_Color_Filter (Default: false, Data Type: bool): Requires histogram slope agreement (green for buy, red for sell).
- Use_AO_Zero_Filter (Default: false, Data Type: bool): Requires oscillator values to align with zero centerline polarity.
Parabolic SAR Filter Settings:
- SAR_Group (Default: "=== PARABOLIC SAR FILTER ===", Data Type: string): Visual section separator.
- Use_SAR_Filter (Default: false, Data Type: bool): Master toggle for Parabolic SAR price curve filtering.
- SAR_Step (Default: 0.02, Data Type: double, Unit: factor step): Acceleration factor increment per price step.
- SAR_Maximum (Default: 0.2, Data Type: double, Unit: factor ceiling): Maximum acceleration factor ceiling.
Heiken Ashi Filter Settings:
- HA_Group (Default: "=== HEIKEN ASHI FILTER ===", Data Type: string): Visual section separator.
- Use_HeikenAshi_Filter (Default: false, Data Type: bool): Master toggle for synthetic Heiken Ashi candle body filtering.
CCI Trend Filter Settings:
- CCI_Group (Default: "=== CCI TREND FILTER ===", Data Type: string): Visual section separator.
- Use_CCI_Filter (Default: false, Data Type: bool): Master toggle for Commodity Channel Index zero-line trend filtering.
- CCI_Period (Default: 50, Data Type: int, Unit: bars): Lookback period for trend CCI calculation.
- CCI_Applied (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Applied price for trend CCI calculation.
CCI Overbought / Oversold Filter Settings:
- CCI_OBOS_Group (Default: "=== CCI OB & OS FILTER ===", Data Type: string): Visual section separator.
- Use_CCI_OBOS_Filter (Default: false, Data Type: bool): Master toggle for CCI extreme boundary filtering.
- CCI_OBOS_Period (Default: 14, Data Type: int, Unit: bars): Lookback period for oscillatory CCI calculation.
- CCI_OBOS_Applied (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Applied price for oscillatory CCI.
- CCI_Overbought (Default: 100.0, Data Type: double, Unit: index value): Upper threshold boundary.
- CCI_Oversold (Default: -100.0, Data Type: double, Unit: index value): Lower threshold boundary.
RVI Trend Filter Settings:
- RVI_Group (Default: "=== RVI TREND FILTER ===", Data Type: string): Visual section separator.
- Use_RVI_Filter (Default: false, Data Type: bool): Master toggle for Relative Vigor Index zero-line filtering.
- RVI_Period (Default: 75, Data Type: int, Unit: bars): Lookback period for trend RVI calculation.
RVI Signal Line Filter Settings:
- RVI_Signal_Group (Default: "=== RVI SIGNAL FILTER ===", Data Type: string): Visual section separator.
- Use_RVI_Signal_Filter (Default: false, Data Type: bool): Master toggle for RVI main vs signal line relationship filtering.
- RVI_Signal_Period (Default: 20, Data Type: int, Unit: bars): Lookback period for oscillatory RVI signal calculation.
MACD Signal Filter Settings:
- MACD_Group (Default: "=== MACD SIGNAL FILTER ===", Data Type: string): Visual section separator.
- Use_MACD_Filter (Default: false, Data Type: bool): Master toggle for MACD histogram divergence filtering.
- MACD_FastEMA (Default: 12, Data Type: int, Unit: bars): Fast exponential moving average averaging period.
- MACD_SlowEMA (Default: 26, Data Type: int, Unit: bars): Slow exponential moving average averaging period.
- MACD_SignalSMA (Default: 9, Data Type: int, Unit: bars): Signal line simple moving average averaging period.
- MACD_Applied (Default: PRICE_CLOSE, Data Type: ENUM_APPLIED_PRICE): Applied price for MACD series.
MACD Zero Filter Settings:
- MACD_Zero_Group (Default: "=== MACD LEV 0 FILTER ===", Data Type: string): Visual section separator.
- Use_MACD_Zero_Filter (Default: false, Data Type: bool): Master toggle for MACD main line zero boundary filtering.
Support & Resistance Filter Settings:
- SR_Group (Default: "=== SUPPORT & RESISTANCE FILTER ===", Data Type: string): Visual section separator.
- Use_SR_Filter (Default: false, Data Type: bool): Master toggle for rolling range horizontal zone interaction filtering.
- SR_Period (Default: 50, Data Type: int, Unit: bars): Historical bar window examined for local high/low price discovery.
- SR_Zone_Points (Default: 80.0, Data Type: double, Unit: points): Width of the detection tolerance zone in points.
Fibonacci Filter Settings:
- Fib_Group (Default: "=== FIBONACCI FILTER ===", Data Type: string): Visual section separator.
- Use_Fib_Filter (Default: false, Data Type: bool): Master toggle for dynamic swing Fibonacci retracement filtering.
- Fib_Level_1 (Default: 0.382, Data Type: double, Unit: ratio): Lower percentage ratio boundary of retracement zone.
- Fib_Level_2 (Default: 0.618, Data Type: double, Unit: ratio): Upper percentage ratio boundary of retracement zone.
- ZigZag_Depth (Default: 12, Data Type: int, Unit: bars): Depth setting for algorithmic swing point identification.
- ZigZag_Deviation (Default: 5, Data Type: int, Unit: points): Minimum price deviation required to register swing reversals.
- ZigZag_Backstep (Default: 3, Data Type: int, Unit: bars): Minimum bar spacing between consecutive swing pivots.
6. Operational Setup and Trading Recommendations
- Supported Instruments: Momentum KU operates across all liquid assets available in MetaTrader 5. Optimal results are typically observed on major currency pairs (EURUSD, GBPUSD, USDJPY, AUDUSD, USDCAD), equity index CFDs (US30, SPX500, NAS100, GER40), and commodities (XAUUSD, USOIL) where continuous trading volume ensures orderly momentum progression.
- Recommended Timeframe Profiles:
* Short-Term Scalping (M5, M15): Recommended to configure fast Momentum periods (10 to 14) combined with ADX (to avoid low-volatility ranging) and Heiken Ashi filtering.
* Intraday Day Trading (M30, H1): Recommended to combine Momentum with Single MA (50 SMA) or Double MA ribbons and MACD Histogram divergence.
* Swing Trading (H4, D1): Recommended to combine Momentum with Ichimoku Senkou Span B, Rolling Support & Resistance, and Fibonacci retracement corridors.
- Account Type Compatibility: Compatible with both Hedging and Netting account configurations across standard, Raw Spread, and ECN broker environments.
7. Notification System Configuration Guide
Momentum KU includes four notification methods:
- Graphical Pop-up Alerts (Use_Alert): Displays a native alert dialog on the desktop interface containing trade direction, symbol, timeframe, and signal bar timestamp.
- Acoustic Signals (Use_Sound): Executes dedicated audio files (Sound_Buy or Sound_Sell located in the terminal /Sounds directory) when new arrows plot.
- Mobile Push Notifications (Use_Push): Forwards push messages to connected mobile devices. To configure: Obtain the 8-character MetaQuotes ID from mobile terminal settings (Settings > Messages > MQID), navigate to MT5 Desktop Tools > Options > Notifications, check "Enable Push Notifications", enter the MQID, and test.
- Terminal Log Output (Use_Print): Outputs diagnostic signal messages to the Experts tab for audit trails.
8. Computational Performance and Terminal Resource Management
- Native Handle Architecture: Technical filters utilize built-in MQL5 indicator handles instantiated strictly inside OnInit() and cleanly deallocated in OnDeinit().
- Dynamic Buffer Allocation: Filter calculation handles are created only when their respective boolean toggles are enabled. Disabled filters consume zero indicator buffers and produce zero calculation overhead.
- Series Data Optimization: Array copying operations use CopyBuffer directly into series-indexed arrays, maintaining minimal RAM allocation even on extended chart history.
9. Risk Disclaimer
Trading foreign exchange, commodities, indices, and financial derivatives carries substantial risk of loss and is not suitable for all investors. Leverage can magnify losses as well as gains. Past backtested or historical performance does not guarantee future operational outcomes. This indicator is an analytical technical tool designed to assist traders in objective chart evaluation; it does not constitute financial, investment, or trading advice. Always evaluate indicator configurations thoroughly on a demo simulation account prior to live deployment.
