Loading…

Feed Item Signal Consumer

Some signal providers publish over a feed rather than a webhook or a file drop - this EA is the consumer end of that arrangement. It fetches a configured feed URL on a timer, splits the response into individual RSS <item> or Atom <entry> chunks with a small hand-rolled scanner, and looks at each item's title for a strict "BUY SYMBOL" / "SELL SYMBOL" grammar, with optional "SL=NN TP=NN" pip values in the description. Anything that does not match that grammar exactly is logged and skipped rather than guessed at. Every item is identified by its <guid> (falling back to <link>, then to the title itself) and remembered across restarts, so the same feed item is never acted on twice even if the provider republishes it or a poll overlaps a previous one. The EA ships armed off: InpArmed defaults to false, so a new install fetches, parses, and writes exactly what it WOULD have traded to the activity log without ever sending a real order, until the user reviews that log and deliberately arms it. Notes and limitations The XML parsing is a small hand-rolled tag scanner adequate for a well-formed RSS/Atom feed, not a full XML parser - CDATA sections and the common named entities (&amp; &lt; &gt; &quot; &apos;) are handled, but a feed using unusual XML features may not parse cleanly. A malformed chunk simply fails to match the trade grammar and is skipped, never silently misread as something else. This tool assumes the feed itself is already a trusted, private source (the account holder's own provider) - it adds no authentication of its own beyond WebRequest's normal HTTPS transport and the strict item grammar. It is not a substitute for a provider that requires a signed payload; see HardenedRemoteFlatten or a signed-command-file style project in this catalogue for that pattern. The seen-item ring buffer is capped at 500 identifiers; a feed publishing faster than the EA polls, well beyond that cap between polls, could in principle let an old identifier roll out of the ring and be reprocessed. In practice this requires polling far less often than the feed publishes, which InpPollIntervalSeconds is meant to prevent.

Expert advisor · MT4 · v1.0 · Free

About Feed Item Signal Consumer

Feed Item Signal Consumer is an expert advisor (trading robot) for MetaTrader 4. It has 11 settings, such as Feed url, Poll interval seconds and Web request timeout ms. MQL source code included.

Files in the download: FeedItemSignalConsumer.ex4, FeedItemSignalConsumer.mq4, FeedItemSignalConsumer.txt.

Trading robots can lose money. Check every setting and test on a demo account before using real funds.

Settings

SettingDefaultWhat it does
Feed urlhttps://example.com/private-feed.xmlFull URL of the private feed - must be pre-approved under Tools->Options->Expert Advisors
Poll interval seconds60How often the feed is fetched
Web request timeout ms5000WebRequest timeout
Armedfalsefalse = fetch, parse and log only, never trades (safe default)
Fixed lots0.10Lot size used for every item-driven trade, before broker normalisation
Default sl pips20Used when an item has no SL= field
Default tp pips40Used when an item has no TP= field
Magic number44400Magic number that tells this EA's orders apart
Max items per poll10Safety cap - ignore a feed dump beyond this many new items in one fetch
Max retries5
Retry wait ms500

How to install

  1. Download the ZIP from your PolyMaria library and unzip it.
  2. In MetaTrader 4 open File → Open Data Folder, then go to MQL4 → Experts.
  3. Copy the .mq4 file(s) there. Put any .mqh files in MQL4 → Include.
  4. Open the .mq4 file in MetaEditor and press Compile (F7) if MetaTrader does not show it.
  5. Drag the expert advisor from the Navigator onto a chart, check the settings, allow Algo/Auto Trading and press OK.
  6. Test it first on a demo account or in the Strategy Tester.

Download the PDF guide

Tags: Dashboards & Scanners · Buy/Sell Arrows · MT4 Expert Advisor · MQL4 Source Code

Expert advisors (EA) for MT4 & MT5 · PolyMaria