Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Facebook !
Rejoignez notre page de fans
Accédez à la CodeBase depuis votre terminal MetaTrader 5
Vous n'avez pas trouvé le bon code ? Commandez-le dans la section Freelance
Comment rédiger un Expert Advisor ou un indicateur

Bibliothèque de code source MQL4 et MQL5

icon

Vous souhaitez apprendre le langage de programmation MQL5 ou MQL4, mais vous ne savez pas par où commencer ? Divers programmes pour votre terminal MetaTrader sont disponibles ici. Téléchargez et étudiez les exemples de code publiés, développez vos propres indicateurs et Expert Advisors. Publiez vos applications dans la plus grande bibliothèque de codes MQL5 et MQL4, et elles seront disponibles dans chaque terminal MetaTrader et MetaEditor.

Vos exemples de code dans MQL4 et MQL5 seront distribués dans le monde entier, et des milliers de traders entendront parler de vous !

Soumettre votre code

Writes the trading specification of every symbol to a CSV file: volume step, filling modes, stops level, tick value and more.

DailyLossGuard — Hard Daily Loss Protection (Prop-Firm Challenge Essential) The #1 reason funded challenges fail is breaking the daily loss rule. DailyLossGuard enforces it automatically: it tracks your daily P/L every tick against your limit (% of day-start balance or a fixed amount). On breach, it closes ALL positions instantly (optional), fires an Alert + push notification, and shows a red BREACHED panel till next day. Features: Magic Number filter (guard one EA or the whole account), live top-center dashboard (daily P/L, limit, ARMED/BREACHED status) that self-heals on timeframe changes and resizes. Built for: prop-firm challenge & funded accounts, multi-bot EA traders, and manual traders who want a hard, emotion-free daily stop. Honest note: no EA can force other EAs to stop opening trades (MetaTrader API limitation) — this guard closes positions and alerts you instantly so you stay in control. Free. No DLLs. No profit promises — it manages risk, it doesn't generate signals

Reads the server clock from the symbol's own H1 history. The forex and CME week closes at 17:00 New York, so the server time of every weekly close gives the server's UTC offset for that week. Over 60 weeks it flags irregular closes, dates every clock change and tests it against the US and European daylight saving calendars, cross-checks TimeTradeServer minus TimeGMT, and lists the server time of the London, New York, Tokyo and Sydney opens for the coming weeks. Writes every close to CSV. Read only: no trade function, no DLL, no network.

Ouvre une transaction virtuelle entre crochets sur chaque barre M1, la fait évoluer sur l'historique réel des ticks et indique, pour une série de distances de stop, à quelle fréquence la modélisation OHLC sur 1 minute aboutirait à un résultat inverse de celui escompté pour la transaction.

Il détecte le symbole « or », quel que soit le nom que lui donne le courtier, lit les spécifications du contrat à partir du terminal au lieu de les supposer, et convertit un risque exprimé dans la devise du compte en une taille de lot adaptée à ce courtier.

Exporte une ligne CSV par transaction clôturée, contenant les données qui ne figurent pas sur le relevé : le meilleur bénéfice non réalisé enregistré par la transaction (MFE), la pire perte non réalisée qu’elle a subie (MAE), la part du MFE effectivement réalisée, le nombre de barres couvertes par la transaction et la durée de détention. Il s’agit des mêmes mesures que celles de l’indicateur « Trade Excursion », mais elles sont enregistrées dans un fichier plutôt que représentées graphiquement, car les questions pertinentes à se poser à propos de ces données sont celles auxquelles un graphique ne peut pas répondre : le taux de capture dépend-il de l’heure d’entrée ? Les transactions que je clôture prématurément sont-elles celles que je conserve le plus longtemps ? Les transactions perdantes du lundi atteignent-elles un MAE différent de celles du vendredi ? Il suffit d’un tableau croisé dynamique pour obtenir ces réponses une fois le fichier CSV créé. La sortie est séparée par des points-virgules avec une ligne d’en-tête, au format MQL5\Files ; elle s’ouvre dans n’importe quel tableur. Limite de mesure : les excursions proviennent des plus hauts et des plus bas des barres sur la période choisie ; le tracé à l’intérieur d’une barre est inconnu. La colonne « barres » indique la résolution attribuée à chaque transaction, et le récapitulatif comptabilise séparément les transactions sur une seule barre au lieu de les intégrer dans une moyenne.

L'or fait l'objet d'une pause de maintenance quotidienne sur le CME. La première heure suivant cette pause, son cours augmente davantage que ne le laisserait supposer le hasard, et ce pour chaque année civile d'un échantillon couvrant 11 ans, alors que toutes les autres heures de la journée affichent une évolution stable. Une transaction par séance, un stop côté serveur ajusté en fonction de la volatilité, pas de moyenne ni de stratégie en grille. Puis mon modèle de coûts s’est avéré erroné. Un backtest sur des ticks réels a montré que le coût réel aller-retour à la réouverture est d’environ 60 points, et non les 19 que mes recherches avaient estimés : le champ « spread par barre M1 » est un résumé par barre et sous-estime ce coût d’environ trois fois. En relançant le backtest sur 11 ans avec le coût corrigé : +3,34 pb, t 7,40, 59,3 % de transactions gagnantes -> +1,60 pb, t 3,42, 50,8 % de transactions gagnantes L’avantage persiste, mais à moins de la moitié de sa force initiale. Ce deuxième chiffre est le bon. Ce qu’il ne représente pas : environ +3,3 % par an avec un drawdown de 4,6 %, soit environ une année sur neuf en perte. À raison de 0,01 lot, cela représente environ 130 par an – un chiffre qui mesure la taille de la position, et non la stratégie.

Shows how much of the daily loss limit of a prop firm account is already used, and how much is left. Read-only indicator.

Measures how far your PC clock is from the trade server's clock, from the server time stamped on live ticks, and tells you how to fix it.

Regular and hidden divergences between price and ten oscillators calculated inside the indicator: MACD, MACD histogram, RSI, Stochastic, CCI, Momentum, OBV, VWMACD, Chaikin Money Flow and MFI. Lines on price, a box naming every oscillator that agrees, and alerts.

Session Levels draws the reference levels intraday traders watch most: Asian range, London and New York sessions, previous day and week high/low, daily VWAP, swing points and round numbers. Hover any level to read what it is and why it matters. Optional alerts when price breaks the Asian range or the previous day high/low.

Real-time multi-timeframe side panel mini-chart with smart color matching, independent price scale, and candle countdown timer.

Ajoutez-le à un graphique, saisissez le nom d'un indicateur personnalisé de votre choix, et il vous alertera en fonction des seuils définis par cet indicateur : fenêtre contextuelle, son, notification push sur votre téléphone ou e-mail. Il lit l'indicateur via iCustom, donc aucun code source n'est nécessaire : un fichier .ex5 compilé que vous avez téléchargé suffit. Il peut également lire cet indicateur à partir d’une période plus longue, et il revérifie les barres fermées pour vous indiquer si l’indicateur se redessine ou s’il présente simplement un décalage. Il s’ouvre en mode EXPLORE, qui répertorie tous les tampons de l’indicateur et leur contenu, car « quel tampon contient le signal ? » est la question qui dissuade la plupart des utilisateurs d’utiliser iCustom.

Un Expert Advisor qui négocie l'indicateur SuperTrend TV via iCustom uniquement sur les barres clôturées, fourni avec un rapport d'audit prouvant que chaque transaction correspond à un signal et qu'aucun signal n'a été manqué

Look after open positions in an Expert Advisor: break-even, trailing stop, two partial closes, and a stop and target for positions that have none. It never opens a trade.

Checks the broker's session table against the M1 history. For every minute of the week it counts on how many of the last N days the symbol really has a bar, and sets that next to SymbolInfoSessionQuote and SymbolInfoSessionTrade: declared minutes that are usually empty (rollover holes), bars in minutes the table calls closed, trade and quote tables that disagree, and one-off outages such as an early holiday close. Prints the real sessions per weekday, writes every finding to CSV and prints its own arithmetic. Read only: no trade function, no DLL, no network.

A manual trading panel with a built-in prop-firm risk guard and a hidden Support/Resistance finder for MetaTrader 5.

A MetaTrader 5 utility that treats the bid and ask quote streams as two independent physical trajectories and fits a local quadratic to each, producing position, velocity, and acceleration with honest error bars and an out-of-sample forecast scoreboard.

Draws ICT structure on the chart (liquidity pools, sweeps, market structure shift, fair value gaps) from closed bars only, adds a trade plan for every confirmed setup and keeps an honest statistics panel of what those setups did on your symbol. Analysis only – it does not trade.

Tous ceux qui utilisent une stratégie de grid se posent la question suivante : mon compte est-il suffisamment approvisionné ? La réponse habituelle – à savoir la perte enregistrée au dernier niveau du grid – n’est pas le bon indicateur. Ce qui met fin au compte, c’est lorsque le niveau de marge atteint le seuil de stop-out fixé par le courtier, alors que la position est encore ouverte et semble encore récupérable. Cet EA calcule le chiffre réel, puis détermine combien de fois un mouvement d’une telle ampleur s’est déjà produit dans l’historique M1 du symbole concerné. Il corrige trois erreurs, toutes commises dans un excès de confiance : une chaîne de N positions flotte à l’étape x N(N-1)/2, et non à l’étape x N (pour 10 positions, 45 étapes de perte, et non 10) ; les positions ouvertes immobilisent également la marge tant qu’elles sont en cours ; et le stop-out est un pourcentage, et non zéro — à 50 %, perdre la moitié du capital suffit. « Il vous faut 86 dollars de marge disponible » est une abstraction. «« Un mouvement de cette ampleur s’est produit 71 fois en 100 jours, soit une fois toutes les 1,4 » est une décision. Définissez InpEquity à un montant dont vous ne disposez pas encore pour voir ce dont la configuration aurait réellement besoin. Strictement en lecture seule : cela n’ouvre, ne clôture ni ne modifie jamais une position.

Personnalisez votre assistant IA MetaTrader 5 en choisissant la langue, la personnalité, le menu et le comportement à l'aide d'un simple fichier de commande.

One panel for the rules of a prop firm challenge: daily loss, maximum loss (static or trailing), profit target, minimum trading days and the best-day (consistency) rule. For each one it shows how much is used and how much room is left, in money. "One more trade" tells you the largest lot size that still keeps a stop-out inside the room left today and in the max-loss room. Read-only: it never opens, changes or closes a trade. The presets hold typical values; firms change their rules, so check yours and use the Custom preset. Built on the ATS Risk Library (ATS_RiskLib.mqh, included).

A small include file for Expert Advisors and trade managers. It turns your risk rules into yes/no answers: how many lots does this stop allow, is the daily loss limit reached, is the maximum drawdown (static or trailing) reached, how much is at risk across all open positions, and are spread and session acceptable. The lot is never rounded up: if the broker minimum lot would risk more than allowed, the trade is skipped and the reason is returned. Limits survive a terminal restart. The library only measures: it sends no order. Includes a demo account guard (no trading by default) and a self-test with 78 checks.

The Trend BOSS Indicator identifies regimes such as trending, ranging or volatile using a Bag-of-SFA-Symbols (BOSS) classifier. Gate your strategies behind specific regimes or use the indicator to identify various market conditions.

Measures market activity from the waits between quotes. An ACD model with the daily rhythm removed gives one ratio per tick: 1 is normal, 2 twice as busy.

Extrapolator fits a sum of sinusoidal harmonics to the recent price history and extends the fitted curve to the right of the last bar as a forecast.The forecast is a mathematical extrapolation of past cyclical behaviour, not a guarantee of future price movement. The last part of the line is redrawn while the current model bar is forming, and the fitted curve changes with each refit.

A free, fully open JPN225 (Nikkei 225) EA for M15. Buys when price leans up, momentum isn't stretched and volume is quiet. Backtest 2022 to 2026: profit factor 1.68, +18.5% a year, passed 15 stress tests. Flat by 17:00.

EA de breakout sur une plage de séance avec filtrage ATR, calcul de la distance du stop, option de clôture à seuil de rentabilité ou clôture partielle, et un tableau de bord partagé. Comptes de couverture ; ressource pédagogique avec documentation sur les limites d'exécution et de coordination.

Enregistre l'amplitude maximale favorable et défavorable de chaque position en multiples de R et génère une ligne CSV par transaction clôturée.

Audits the tick history that 'Every tick based on real ticks' backtests replay. Five checks per symbol over the last N days: impossible and crossed quotes, timestamps that run backwards or repeat, one-tick price reversals sized in multiples of the symbol's own median spread, silences inside the broker's declared quote sessions, and minutes where the ticks and the M1 bars disagree. Every finding goes to CSV with its millisecond timestamp, and the tool prints its own arithmetic so the report can be recounted. Read only: no trade function, no DLL, no network.

A specified moment in time can be analyzed through multiple synced timeframes from 1 host chart for a symbol.

Opening Range Breakout EA template with built-in account protection. Marks the high and low of the first N minutes after the session open and places OCO stop orders above and below the range. Includes risk-based position sizing, daily loss limit, maximum drawdown limit, ATR range filter, trade direction filter, and protection against positions carried overnight. All session times are configurable inputs. Educational template, not a profit-guaranteed system. Test on demo before any live use.

Détecte les blocs d'ordre — la dernière bougie opposée précédant un mouvement impulsif qui rompt la structure du marché — et les représente sous forme de zones qui s'étendent en temps réel jusqu'à ce que le cours revienne et les neutralise. Les ruptures de structure et leur neutralisation sont toutes deux évaluées uniquement sur les barres clôturées ; ainsi, aucun tracé n'est modifié a posteriori.

Affiche les propriétés qui font qu'un même EA se comporte différemment chez un autre courtier : horaires de trading, taille du contrat, valeur du tick, statistiques sur les spreads, coût des swaps et couverture des sessions en temps réel. En lecture seule, n'effectue aucune opération de trading.

Exports closed trades to CSV with Maximum Adverse Excursion (MAE) and Maximum Favorable Excursion (MFE) in points and money, calculated from M1 history, plus the percentage of the available move each trade captured.

Opens charts for all Market Watch symbols or a custom symbol list in one click, on any timeframe, with an optional template applied to each chart. Skips charts that are already open and limits how many are opened at once.

Shades the chart background by volatility regime (Compression, Normal, Expansion) based on the percentile rank of the current ATR. Shows the current regime on the chart, alerts on regime changes and exposes buffers for Expert Advisors.

Shades the chart background by volatility regime (Compression, Normal, Expansion) based on the percentile rank of the current ATR. Shows the current regime on the chart, alerts on regime changes and exposes buffers for Expert Advisors.

Draws Asian, London and New York session range boxes and marks liquidity sweeps: a closed bar that wicks beyond a completed session's high or low and closes back inside. Non-repainting arrows, extended session levels, alerts and iCustom-ready buffers.

Writes a CSV journal of every trade with the exit reason, and a report that shows how far each trade ran, in R. It never trades.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209