EnglishNederlandsPortuguesEspanolDeutschFrancais

MT5 Expert Advisors on GitHub: A Pinned Repository Review

By 5 min read trading Published: Last updated: Sources checked:
Editorial review. Published under the JPTC editorial policy. Method: JPTC research methodology. Material corrections are recorded through the corrections policy.

Material update: Removed leaked brief/example, unsupported history/audit and safety claims. Corrected compilation and demo-test limits. Added a pinned repository source review with explicitly unperformed execution tests. 15 October 2026: pinned source references rechecked; remaining summary/FAQ and own-product compliance wording corrected while retaining the earlier repository review and explicit unperformed tests.

Part of Prop Firm EA Guide, our complete pillar guide on this topic.
MT5 Expert Advisors on GitHub: A Pinned Repository Review

An MT5 Expert Advisor on GitHub is source code you can inspect, not a trading result you can download. If you want an actual repository rather than a list of strategy names, start with the pinned EA31337 example below. This guide shows the files, dependencies and build questions to check before running anything.

Source references checked on 15 October 2026. The review covers the repository metadata, README, licence, submodule manifest, build file and MT5 entry point. No MetaEditor compilation, Strategy Tester run or forward demo test was performed for this article.

One MT5 repository, with an exact version

EA31337/EA31337 publishes a project for MT4 and MT5. The reviewed source is commit 9b9bd38c4e49dd6916f4fe3936e50e97fca7a692, dated 19 September 2024. This was also the master commit returned when we checked. A fixed reference lets you inspect the same source later; it does not establish current terminal compatibility, security, profitability or support.

ItemWhere to inspectWhat the check tells you
Project scopeREADME at the pinned commitThe maintainer describes MT4/MT5 support and its own installation workflow.
LicenceLICENSEThe repository includes the GNU GPL version 3 text. Read the licence and dependency licences for your intended use.
External source.gitmodulesFramework, indicators and strategies live in separate repositories. The main ZIP alone is not a complete build checkout.
MT5 entry pointsrc/EA31337.mq5It includes other files and delegates tick processing. This file is not the complete trading system.
Build processMakefileThe supplied workflow has mode, toolchain and resource requirements. A generic “copy the mq5” instruction is insufficient.

Download a reproducible source tree

The following Git commands select that commit and initialise its recorded submodules. Review the repository and submodule origins before running them in a working directory you control. They acquire source; they do not compile, test or activate an EA.

git clone --no-checkout https://github.com/EA31337/EA31337.git
cd EA31337
git checkout --detach 9b9bd38c4e49dd6916f4fe3936e50e97fca7a692
git submodule update --init --recursive
git rev-parse HEAD
git submodule status --recursive

Save the output of both version commands with your review. A leading minus sign in git submodule status means a submodule is not initialised; a leading plus means its checked-out commit differs from the parent repository’s recorded commit. Do not use git submodule update --remote when trying to reproduce this source snapshot. See the official Git submodule documentation for these status markers and update options.

Which dependencies are actually recorded?

The parent tree pins the following four code submodules. The separate documentation wiki is also a submodule. These recorded hashes identify source, not an audit of every file.

PathRepositoryRecorded commit
src/include/classesEA31337-classes35a2814b2543987e3dc33b6ede70e864160df3c1
src/indicatorsEA31337-indicatorsf707f99f2b29a23d90a62b646fb5de67adbb3121
src/strategiesEA31337-strategies3da76f4bd8d5e8a53a348c525486fd1430de82f2
src/strategies-metaEA31337-strategies-meta3ddd3ea23c652679349c3264bedd18bc19670747

Follow execution beyond the entry file

In the pinned MT5 file, OnInit() constructs the EA object, applies parameters and initialises strategies. OnTick() passes the symbol tick to ea.OnTick(...). Follow those included components to find the actual signal, order and position logic. The presence of a risk-related parameter does not prove that an account-wide loss limit is implemented correctly.

  1. Map included files, DLL imports, network requests and file writes.
  2. Identify which symbols, positions and magic numbers the code may manage.
  3. Check order responses and the behaviour after rejection, disconnection or restart.
  4. Check the account’s netting or hedging mode and symbol volume constraints.
  5. Review loss calculations, reset times and other EAs or manual positions on the same account.

For the API details, use our separate MT5 source-code guide. GitHub stars and forks are popularity signals, not evidence that these checks passed.

From a source review to a test record

Read the pinned project’s build instructions, compile the required files in MetaEditor and keep the compiler log. A produced .ex5 establishes a build artifact, not a profitable or safe strategy. Resolve warnings rather than treating “zero errors” as a full review.

For an authorised demo test, record the terminal build, source and dependency hashes, account mode, symbol specification, input file, interval, data mode, costs and execution settings. Keep the tester report and journal. Reserve an unseen interval before tuning, and document failures as well as favourable runs. MetaQuotes explains the available options in its Strategy Tester documentation. A historical test and a demo run remain different forms of evidence from execution on another account.

Prop firm rules and the separate JPTC service

If a particular programme is involved, check that programme’s current automation permissions, loss formula, reset time and trading restrictions before any use. A source review cannot establish compliance, a challenge pass or a payout. Closing logic can still be affected by gaps, latency and execution failures.

The JPTC Algo is a separate hosted service. JPTC hosts it; customers install nothing, run nothing and need no VPS. This GitHub workflow does not describe that service. JPTC’s broker-statement results are not tests of EA31337.

FAQ

Where can I find an actual MT5 EA repository on GitHub?

The EA31337 repository linked above contains an MT5 entry point and a recorded dependency tree. It is an inspectable example, not a recommendation or a comparison winner.

Does downloading the GitHub ZIP include the dependencies?

The main archive does not supply the contents of the separate Git submodules. Use the recorded submodule workflow and verify their commits.

Is a public GitHub repository automatically open source?

Public visibility and licensing are different. Check the actual licence and the rights covering dependencies; do not infer reuse permission from visibility alone.

Was this EA compiled or backtested for this guide?

No. The work described here is a source-reference review. No compile result, tester performance, forward result or prop-firm compatibility result is reported.

The JPTradingCapital Team develops automated trading software. Our research methodology explains the limits of source reviews and software checks.

Continue with the right technical guide

Forex & Gold Signals, No Monthly Fee

Entry, stop loss and targets on every trade we take. It costs you nothing: open an account through one of our partner brokers and they cover it for you. You place every trade on your own account.

Join the signals channel
or open the channel directly on Telegram →

Related Articles

trading
11 Proven Fixes: MT5 Expert Advisor Not Working (Prop Firm Guide)
10 min read
trading
MT5 Expert Advisor Source Code: Events and Trade Requests
5 min read
trading
MT5 Expert Advisors: Prop Firm Success & Automation
10 min read
Forex and gold signals
Join free →
Risk Disclaimer

Trading forex and CFDs involves significant risk and is not suitable for all investors. Past performance does not guarantee future results. You should not invest money you cannot afford to lose. The content on this page is for informational purposes only and does not constitute financial advice. JPTradingCapital does not accept liability for any loss or damage arising from reliance on the information provided. Always conduct your own research before making trading decisions.