Bienvenue sur notre blog dédié aux traders ! Aujourd'hui, nous allons plonger dans le monde de Smart Trend Follower, un expert qui facilite le trading sur MetaTrader 5. Cet EA (Expert Advisor) est conçu pour vous aider à suivre les tendances du marché de manière automatique, en utilisant des signaux techniques provenant des Moyennes Mobiles et de l'oscillateur Stochastique.
1. Types d'Énumérations (enumJnsSignal, enumOrderType)
- enumJnsSignal : Définit le type de signal utilisé dans l'EA. Il y a deux options :
eTypeCrossMA: Utilise le signal de Cross 2 MA (le croisement de deux Moyennes Mobiles).eTypeTrend: Suit la tendance en utilisant les Moyennes Mobiles et le Stochastique.- enumOrderType : Définit le type d'ordre :
eBuy: Un ordre Achat.eSell: Un ordre Vente.eNone: Aucun ordre exécuté.
2. Paramètres d'Entrée
- inMagicNumber : Un numéro magique unique pour distinguer les ordres de cet EA.
- inLotSize : La taille de lot initiale pour chaque ordre.
- inMultiply : Le facteur multiplicateur utilisé dans la stratégie de taille de lot.
- inJarakLayer : La distance en pips entre les positions de trading dans la stratégie de grille.
- inMAPeriodFast & inMAPeriodSlow : Les périodes pour les Moyennes Mobiles rapide et lente.
- inSTOKPeriod, inSTODPeriod, inSTOSlowing : Paramètres pour l'oscillateur Stochastique.
- inTakeProfit & inStopLoss : Les réglages pour le Take Profit et le Stop Loss.
3. Structure des Données de Trades
- Cette structure est utilisée pour stocker les données relatives aux positions de trading ouvertes, telles que le nombre total de positions (
ttlPos), le prix moyen des positions (hargaTA,hargaTB) et le volume total (ttlLot).
4. Fonction OnInit()
- Cette fonction gère l'initialisation de l'EA, y compris la validation des paramètres d'entrée (par exemple, s'assurer que la période de la MA rapide est inférieure à celle de la MA lente) et la création de handles pour les indicateurs MA et Stochastique.
5. Fonction OnTick()
- La fonction principale exécutée chaque fois que le prix bouge (tick).
- Elle appelle la fonction pour vérifier un nouveau signal avec
GetSignal(), et si un signal est trouvé,manageTrading()est utilisé pour exécuter les transactions. - Elle appelle également
setTPSL()pour s'assurer que le Take Profit et le Stop Loss sont toujours mis à jour.
6. Fonction isNewCandle()
- Cette fonction détecte si une nouvelle bougie s'est formée. C'est important car l'EA vérifie les signaux uniquement lors de la formation de nouvelles bougies.
7. Fonction GetSignal()
- Cette fonction détermine si un signal de trading valide existe en fonction de la stratégie sélectionnée :
- Pour
eTypeCrossMA, le signal est déterminé par le croisement des Moyennes Mobiles rapide et lente. - Pour
eTypeTrend, le signal utilise la confirmation des MA et du Stochastique.
8. Fonction manageTrading()
- Cette fonction gère l'exécution des transactions.
- Si un signal valide est détecté, l'EA ouvre une position avec la taille de lot déterminée en utilisant la fonction
getLotSize(). - Une stratégie de grille est également appliquée pour ouvrir des positions supplémentaires en fonction de la distance de prix (
inJarakLayer).
9. Fonction updateDataTrades()
- Cette fonction met à jour les données relatives aux positions de trading en cours, telles que le calcul du prix moyen et du volume total des positions ouvertes.
10. Fonction openTrade()
- Cette fonction ouvre une nouvelle position de trading basée sur le signal généré et la taille de lot calculée. Elle utilise
OrderSend()pour exécuter l'ordre.
11. Fonction setTPSL()
- Cette fonction définit ou met à jour le Take Profit et le Stop Loss pour chaque position ouverte.
12. Fonction modifTPSL()
- Cette fonction modifie le Take Profit et le Stop Loss des positions existantes si les valeurs diffèrent de celles qui ont été précédemment définies.
13. Fonction validateLot()
- Cette fonction s'assure que la taille de lot utilisée est dans la plage minimale et maximale autorisée, ainsi qu'en ligne avec le pas de lot minimum (
gLotStep).
14. Fonction getLotSize()
- Cette fonction calcule la taille de lot à utiliser en fonction de la taille de lot initiale et du nombre de positions déjà ouvertes, en tenant compte du facteur multiplicateur (
inMultiply).
En résumé, ce code est conçu pour capturer les tendances du marché et gérer automatiquement les positions de trading en utilisant des signaux techniques provenant des Moyennes Mobiles et du Stochastique. Alors, êtes-vous prêt à essayer cet Expert Advisor et à optimiser vos stratégies de trading ?
Articles connexes
- Utiliser MQL5 Wizard pour Créer un Expert Advisor Basé sur les Modèles de Chandeliers Englobants et MFI
- Générer des Signaux de Trading avec MQL5 Wizard : Étoiles du Matin/du Soir et RSI
- Développez un Expert Advisor avec MQL5 : Signaux de Trading 3 Corbeaux Noirs / 3 Soldats Blancs + RSI
- Générez des Signaux de Trading avec MQL5 Wizard : Dark Cloud Cover et Piercing Line
- AOCCI : Un Expert pour MetaTrader 5