指定
Nom du projet : ESSO Smart Trend Pro – Multi-Timeframe Structure, Fibonacci & Heikin Ashi EA
1. Objectif du projet
Je recherche un développeur MQL5 expérimenté pour créer un Expert Advisor personnalisé sur MetaTrader 5, destiné principalement aux indices synthétiques disponibles sur Deriv.
L'objectif est d'automatiser une stratégie basée sur l'analyse multi-timeframe, la structure du marché, les retracements de Fibonacci, les bougies Heikin Ashi et les confirmations de l'action des prix.
Je souhaite disposer d'un EA complet avec deux modes de fonctionnement :
-
Mode manuel / alertes : le robot analyse le marché et génère des signaux, sans ouvrir de position.
-
Mode automatique : le robot analyse le marché, valide les configurations et ouvre, gère puis clôture les positions conformément aux règles de la stratégie et aux paramètres de risque.
Le passage d'un mode à l'autre devra être possible depuis les paramètres de l'EA, sans modification du code source.
2. Instruments concernés
Le système devra permettre de sélectionner les instruments suivants, selon leur disponibilité sur le compte Deriv MT5 :
-
Step Index 500 et Step Index 1000 ;
-
High Frequency Volatility 50, 75 et 100 ;
-
Volatility 50, 75 et 100 ;
-
Boom et Crash 500 et 1000.
L'EA devra permettre de configurer les instruments, les unités de temps et les règles applicables à chacun.
3. Logique de trading
La stratégie devra intégrer :
A. Analyse multi-timeframe
-
D1 : contexte général, si nécessaire ;
-
H4 : tendance principale ;
-
H1 : confirmation de tendance ;
-
M15 : configuration d'entrée ;
-
M5 : confirmation complémentaire facultative ;
-
M1 : module de scalping distinct, si retenu.
B. Structure du marché
Détection algorithmique des HH, HL, LH, LL, BOS et CHoCH, avec des règles explicites de confirmation et de validation des pivots.
C. Fibonacci
Identification des swings pertinents et calcul des retracements de 50 % et 61,8 %, avec possibilité de configurer une zone étendue jusqu'à 78,6 %.
D. Heikin Ashi
Identification des impulsions fortes, affaiblissements, hésitations et retournements potentiels, avec confirmation sur des bougies clôturées.
E. Supports, résistances et action des prix
Détection des niveaux structurels et utilisation de confirmations programmables pour éviter les entrées de faible qualité.
L'EA ne devra pas déclencher une position sur la base d'un indicateur isolé.
4. Score de qualité et seuils d'entrée
Je souhaite un système de notation compris entre 0 et 100, calculé à partir de critères configurables et documentés :
-
Cohérence de la tendance H4/H1 ;
-
Qualité de la structure du marché ;
-
Position du prix dans la zone de Fibonacci ;
-
Proximité des supports et résistances ;
-
Confirmation Heikin Ashi ;
-
Confirmation de l'action des prix ;
-
Cohérence du Stop Loss ;
-
Rapport rendement/risque.
Le seuil initial envisagé est de 65/100, avec la possibilité de le modifier.
Je souhaite pouvoir définir plusieurs seuils :
-
Score inférieur au seuil minimal : aucun signal exploitable ;
-
Score intermédiaire : alerte uniquement ;
-
Score élevé : autorisation éventuelle d'une entrée automatique ;
-
Score très élevé : priorité maximale, sous réserve du respect de toutes les conditions obligatoires.
Les seuils exacts devront être configurables.
Le score devra être présenté comme un indice de qualité technique. Il ne devra pas être assimilé à une probabilité réelle de réussite sans calibration statistique sur des données historiques indépendantes.
Une condition obligatoire non satisfaite devra bloquer l'entrée, quel que soit le score obtenu.
5. Exécution automatique
L'EA devra intégrer un interrupteur permettant d'activer ou de désactiver l'exécution automatique.
Paramètres souhaités :
-
AutoTradingEnabled : true / false ;
-
MinimumEntryScore : seuil minimal de score ;
-
AlertOnlyBelowScore : seuil sous lequel une alerte seule est envoyée ;
-
MaximumOpenPositions : nombre maximal de positions ;
-
AllowBuy : true / false ;
-
AllowSell : true / false.
Ces noms sont indicatifs et pourront être adaptés par le développeur.
Lorsque l'exécution automatique est désactivée, le robot devra continuer à analyser le marché et générer des alertes sans envoyer d'ordres.
Lorsque l'exécution automatique est activée, le robot ne devra ouvrir une position que si :
-
Toutes les conditions obligatoires de la stratégie sont satisfaites ;
-
Le score atteint le seuil défini ;
-
Le Stop Loss peut être placé correctement ;
-
Le risque calculé respecte les limites autorisées ;
-
Aucune protection de risque ne bloque l'entrée ;
-
Aucun ordre dupliqué ou conflit avec une position existante n'est détecté.
6. Gestion des positions
Chaque position ouverte devra être gérée automatiquement selon les paramètres configurés.
Fonctions souhaitées :
-
Placement du Stop Loss dès l'ouverture, lorsque les conditions d'exécution le permettent ;
-
Placement des objectifs TP1, TP2 et TP3 ;
-
Prise de bénéfices partielle ;
-
Passage au break-even selon une règle définie ;
-
Trailing stop facultatif ;
-
Fermeture de position selon les règles de sortie ;
-
Journalisation de chaque opération.
Les objectifs de référence sont :
-
TP1 : 1R ;
-
TP2 : Prochain obstacle M15 ;
-
TP3 : 3R.
La répartition des volumes entre les objectifs devra être configurable et respecter les volumes minimaux autorisés par le courtier.
Aucun renforcement d'une position perdante ne devra être effectué.
L'EA devra éviter les ouvertures multiples sur un même signal.
7. Gestion du risque
Les paramètres de risque devront être configurables depuis l'interface :
-
Risque par transaction : référence initiale de 2 % ;
-
Perte maximale journalière ;
-
Perte maximale hebdomadaire ;
-
Nombre maximal de positions ouvertes ;
-
Exposition totale maximale ;
-
Limite de pertes consécutives ;
-
Suspension automatique après atteinte d'une limite ;
-
Réinitialisation contrôlée des protections.
Le volume devra être calculé à partir du risque monétaire autorisé, du Stop Loss et des spécifications réelles du symbole.
L'EA devra vérifier les contraintes de volume, la disponibilité des données et les conditions d'exécution avant tout ordre.
Une protection devra empêcher toute nouvelle entrée lorsque la limite de risque configurée est atteinte.
8. Tableau de bord et notifications
Le robot devra afficher :
-
La tendance H4/H1 ;
-
La structure du marché ;
-
Les niveaux de Fibonacci ;
-
Le score de qualité ;
-
Le sens du signal ;
-
Le prix d'entrée ;
-
Le Stop Loss et les objectifs ;
-
Le risque estimé ;
-
Le mode actif : alertes ou automatique ;
-
Le nombre de positions ouvertes ;
-
L'état des protections de risque.
Les notifications MetaTrader 5 devront être intégrées. Telegram pourra être proposé en option.
9. Tests et validation
Le développeur devra effectuer :
-
Des tests unitaires des principaux modules ;
-
Des tests historiques sur les instruments compatibles ;
-
Des tests des règles d'entrée et de sortie ;
-
Des tests des limites de risque ;
-
Des tests du fonctionnement en mode alertes ;
-
Des tests de l'exécution automatique en environnement de démonstration.
Le rapport devra présenter le nombre de transactions, le taux de réussite, le profit factor, l'espérance par transaction, le drawdown maximal et les résultats par instrument.
Une séparation entre les données de développement et les données de validation sera nécessaire pour limiter le risque de surapprentissage.
Aucun objectif de rentabilité ne devra être garanti.
10. Architecture et livrables
Je souhaite recevoir :
-
Le code source complet en MQL5 ;
-
Le fichier compilé de l'EA ;
-
Les paramètres configurables ;
-
La documentation technique ;
-
Le guide d'installation et d'utilisation ;
-
Le rapport de tests historiques ;
-
Le rapport de validation en démonstration ;
-
La liste des limites connues ;
-
Les modalités de maintenance.
Le code devra être modulaire, commenté et maintenable.
11. Offre du développeur
Merci de préciser :
-
Votre expérience en MQL5 et en développement d'Expert Advisors ;
-
Votre expérience avec les indices synthétiques Deriv ;
-
Votre compréhension de la stratégie ;
-
Votre méthode de développement ;
-
Votre délai de livraison ;
-
Votre tarif total, avec une ventilation par module ;
-
Les conditions de livraison et de propriété du code source ;
-
Les conditions de correction des bugs et de maintenance.
Je privilégie un développement progressif, documenté et vérifiable.
Exigence essentielle : l'EA devra permettre de désactiver à tout moment les nouvelles entrées automatiques, sans empêcher la surveillance et la gestion sécurisée des positions déjà ouvertes. Le comportement de l'EA lors d'une déconnexion, d'un redémarrage de MT5 ou d'une erreur d'exécution devra être documenté.