Overview
An alert has two halves: a trigger — a price pattern the EA watches — and one or more channels it is delivered through. When a watched pattern fires, the EA builds one short message and fans it out to every channel you have switched on.
Everything defaults OFF. Nothing is sent until you enable at least one channel
and at least one trigger. You control both from the EA's Alerts panel (dashboard page 2),
which is split into a CHANNELS row and a WATCH row, or by the InpAlert… inputs so a
deployment's defaults survive a restart.
Channels — how an alert reaches you
Two fire straight from the terminal; two are handed to the web bridge, which fans them out. Each channel no-ops silently until its own configuration is in place, so turning one on without its setup simply sends nothing rather than erroring.
| Button | Channel | Delivered by | Needs | Notes |
|---|---|---|---|---|
| MQ | MetaQuotes push | TERMINAL | A MetaQuotes ID in Tools › Options › Notifications (per terminal), and the MetaTrader app installed. | Native phone push. Most reliable, and works even when the bridge/site is down. |
| DISC | Discord | TERMINAL | A webhook URL in InpDiscordWebhook. |
Posts to a Discord channel, spoken via TTS. Phone push can be throttled by Discord. |
| WEB | Web Push (website) | BRIDGE | InpBridgeURL set, and a device subscribed on the dashboard (iOS: add to the home screen
first, then tap 🔔 Alerts). |
Pushes to the 7r4d3 app on every subscribed device. |
| TG | Telegram | BRIDGE | InpBridgeURL set, and RM_TG_TOKEN / RM_TG_CHAT set on the server. |
Relays to a Telegram chat. Reliable phone push, shareable channel. |
TERMINAL channels are independent of the site — the EA sends them directly. BRIDGE channels ride one POST to the bridge, which the EA tags with the channels this deployment wants, so one machine can run Web-Push-only while another adds Telegram.
WATCH — what triggers an alert
The patterns the EA monitors. Each is de-duplicated so it fires once per event, not once per tick.
| Button | Trigger | Fires when | Limit |
|---|---|---|---|
| S.BRK | Structure break | A candle breaks a daily level (D.LVL) — the active up-close low (support) or down-close high (resistance). | One per level. |
| CHCH | Change of character | Price breaks a swing low in an uptrend (bearish) or a swing high in a downtrend (bullish). | One per swing pivot. Needs the thrust engine running. |
| DSTK | Daily stalk zone | A candle enters a stalk zone for the first time that day. Zones: 100–125 / 25–33 (bull) or 75–66 / 0 to −25 (bear). | Max 2 per day (upper + lower). |
| 150 | 150 / −50 level | Price reaches the 150% or −50% daily level for the first time that day. | Max 2 per day. |
| H4FC | H4 flow change | The H4 flow direction flips (computed from H1 bars). | One per flow change. |
| CTR | M5 close-trend (CTREND ×5) | The 5-minute close-trend flips up ↔ down. Read directly from M5 on any chart timeframe. | One per flip. |
The TEST button sits with the triggers and fires a sample alert through your enabled channels — a quick way to confirm delivery end-to-end.
Message format
Every alert reads the same way, deliberately short and free of raw price levels so a spoken (TTS) alert stays clean:
🔴 S.BRK | EURUSD | broke above daily level
Turning alerts on
- Recompile the EA on each machine so it has the channel system.
- Enable a channel — flip one or more in the Alerts-panel CHANNELS row (or set
InpAlertMetaQuotes/InpAlertDiscord/InpAlertWebPush/InpAlertTelegram, all false by default), and give it the config from the Channels table above. - Enable the triggers you want in the WATCH row.
- Hit TEST to verify the plumbing.
.mq4 build has not been synced yet.