Multi Currency MA Cross Scanner
- Индикаторы
-
Shin Kojima
MT4 indicator developer with 10+ years of live trading experience.
Specializing in alert tools and scanners for ICT-based traders.
Zero complaints. Reliable tools. Real support. - Версия: 1.0
- Активации: 5
1. Overview
MACrossSearch is an indicator for MetaTrader 4 that monitors moving average crossovers across multiple currency pairs simultaneously and displays the results on a single chart.
It checks two moving averages (MA1 and MA2) on each selected symbol and timeframe. When the shorter MA crosses above or below the longer MA, the indicator changes the color of the corresponding cell in the panel.
Alerts can be triggered when a new cross is detected or when an existing cross ends.
2. Installation
- Copy MACrossSearch_en.mq4 to your MT4 MQL4/Indicators/ folder.
- Copy AllSearch_en.mqh to your MT4 MQL4/Include/ folder.
- Restart MetaTrader 4, or press F5 in MetaEditor to refresh the file list.
- Attach the indicator to any chart. The timeframe of the host chart does not affect the scan results.
3. Parameters
MA Settings
| Parameter | Default | Description |
|---|---|---|
| MAPeriod1 | 20 | Period of the first moving average. |
| MAPeriod2 | 75 | Period of the second moving average. |
| MAKind1 | 1 | MA type for MA1. 0=SMA, 1=EMA, 2=SMMA, 3=LWMA. |
| MAKind2 | 1 | MA type for MA2. Same values as MAKind1. |
| MAShift1 | 0 | Horizontal shift of MA1 (in bars). |
| MAShift2 | 0 | Horizontal shift of MA2 (in bars). |
| MAPrice1 | PRICE_CLOSE | Applied price for MA1. |
| MAPrice2 | PRICE_CLOSE | Applied price for MA2. |
Timeframe Selection
| Parameter | Default | Description |
|---|---|---|
| bUseM1 | false | Include M1 in the scan. |
| bUseM5 | false | Include M5 in the scan. |
| bUseM15 | true | Include M15 in the scan. |
| bUseM30 | true | Include M30 in the scan. |
| bUseH1 | true | Include H1 in the scan. |
| bUseH4 | true | Include H4 in the scan. |
| bUseD1 | true | Include D1 in the scan. |
| bUseW1 | true | Include W1 in the scan. |
Alert Settings
| Parameter | Default | Description |
|---|---|---|
| bAlertOnce | true | true: Log to Experts tab only. false: Show pop-up alert dialog. |
| bFindAlert | true | Alert when a new cross is detected. |
| bLostAlert | false | Alert when an existing cross ends. |
| bAlertM1–W1 | true | Enable/disable alerts per timeframe. |
| bUseSpread | true | Show current spread next to each symbol. |
| MaxSpread | 6.0 | Skip a symbol's scan if its spread exceeds this value (in pips). |
| bMail | false | Send an email when an alert fires. Requires MT4 email settings configured. |
Symbol Settings
| Parameter | Default | Description |
|---|---|---|
| UseSymbols | XAUUSD USD EUR JPY GBP CAD AUD NZD CHF SGD | Space-separated list of symbols or currency codes to scan. Full symbol names (e.g. XAUUSD ) are added directly. 3-letter currency codes (e.g. USD EUR ) are automatically combined into pairs (EURUSD, GBPUSD, etc.) based on what is available in your broker's Market Watch. |
| AddSymbol | (empty) | Suffix appended to all symbols. Use if your broker adds a suffix such as m or .pro . |
| SelfRifresh | false | If true, the indicator does not overwrite colors set by other indicators sharing the same panel. |
Display Settings
| Parameter | Default | Description |
|---|---|---|
| LineMax | 30 | Maximum number of rows per column in the panel. |
| FontSize | 10 | Font size of the panel text. |
| TxtXPos | 5 | Horizontal spacing between timeframe columns. |
| TxtXSpace | 5 | Additional horizontal padding. |
| TxtYPos | 5 | Vertical spacing between rows. |
| TxtXBase | 0 | Horizontal offset of the entire panel from the corner. |
| ATRCorner | 1 | Corner where the panel is anchored. 0=Bottom-Left, 1=Bottom-Right, 2=Top-Left, 3=Top-Right. |
| AddText | (empty) | Text prefix added to all chart object names. Use to avoid conflicts when multiple instances run on the same chart. |
| SymOnOff | false | If true, clicking a symbol name in the panel toggles it on/off (highlighted in yellow = excluded from scan). |
4. Panel Color Reference
Each cell in the panel represents one symbol × timeframe combination.
| Color | Meaning |
|---|---|
| Cyan | MA1 is currently above MA2. An upward cross has occurred. |
| Red | MA1 is currently below MA2. A downward cross has occurred. |
| White/Gray | No cross has occurred on this timeframe. MAs have not crossed during the current bar. |
| Dodger Blue | A new upward cross was just detected on this bar. Reverts to Cyan on the next bar. |
| Magenta | A new downward cross was just detected on this bar. Reverts to Red on the next bar. |
| Yellow | The symbol name is highlighted yellow. The symbol is excluded from the scan (SymOnOff feature). |
The spread value shown in small text next to the symbol name turns Red when the spread exceeds MaxSpread , and the symbol is skipped for that cycle.
5. Notes
- The indicator uses MT4's internal price history. Symbols that have not been loaded in Market Watch may not return accurate data until history is downloaded.
- Setting too many timeframes active at once increases CPU load, especially when many symbols are in the list.
- The cross detection uses the completed bar (shift 1) to avoid repainting. The current open bar is not used for signal generation.
- If your broker uses suffixes (e.g. EURUSDm ), enter the suffix in AddSymbol and use only the base currency codes in UseSymbols .
- Clicking a cell that shows a timeframe label (e.g. H1) opens a new chart for that symbol and timeframe.
- To run multiple instances of MACrossSearch on the same chart with different settings, set a unique value for AddText on each instance.

