Comment Gérer vos Ordres Automatiques avec le RSI sur MetaTrader 4

Mike 2014.08.12 22:46 22 0 0
Pièce jointe
  1. Commandes en attente automatiques basées sur le RSI;
  2. Réduire le risque pendant le week-end et restaurer les positions la semaine suivante;
  3. Envoyer des informations utiles par mail.

Recommandations :

1. Activez le mode test (testmode) en mettant true pour les backtests, et false pour le mode réel :

extern bool testmode = false;//true : pour le backtest

2. En mode test, ne définissez qu'un seul symbole de la liste des tradesymbol, par exemple :

extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860";
extern string tradesymbol2 = "";
extern string tradesymbol3 = "";
extern string tradesymbol4 = "";
extern string tradesymbol5 = "";
extern string tradesymbol6 = "";

Si vous êtes en mode compte réel, réglez testmode sur false, et configurez les tradesymbol comme suit (utilisez une virgule pour séparer les symboles et un underscore pour les paramètres d'un symbole) :

extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860,USDCHFm_506_2606_1506_120_600";
extern string tradesymbol2 = "USDJPYm_460_2802_1302_100_320";
extern string tradesymbol3 = "";
extern string tradesymbol4 = "";
extern string tradesymbol5 = "";
extern string tradesymbol6 = "";

Le symbole EURUSDm_802_2802_1602_200_860 signifie :

  • symbole : EURUSDm (m signifie mon compte mini Exness, vous devez probablement modifier cela selon votre propre symbole)
  • pips en attente : 802 (écart en attente)
  • pips supplémentaires le week-end : 2802 (écart élargi le week-end)
  • pips d'annulation : 1602 (si l'écart dépasse ce montant, fermez la commande en attente)
  • trailing stop : 200 (trailing stop loss)
  • take profit : 860 (take profit virtuel)

3. Si vous souhaitez supprimer les ordres en attente le week-end, mettez weekenddelete sur true, sinon si vous souhaitez élargir l'écart en attente et le restaurer la semaine suivante, mettez weekenddelete sur false.

extern bool weekenddelete = false;//true : supprimer false : modifier

4. Heure de début et de fin pour le mode week-end (5 pour vendredi, 7 pour dimanche ; l'heure est GMT, vous devrez peut-être l'ajuster avec votre heure locale, les paramètres par défaut fonctionnent bien en Heure de Pékin) :

// Heure de fin de trading le vendredi
extern int weekendbeginday = 5;
extern string weekendbegintime = "20:30";// vendredi 20:30
extern int weekendendday = 7;
extern string weekendendtime = "23:30";// dimanche 20:30

5. Tous les symboles (peut-être pas des symboles de trading) pour lesquels vous souhaitez recevoir une alerte sur la valeur RSI (>70 ou <30) et qui vous seront régulièrement rapportés. Évidemment, vous devez modifier AUDJPYm si votre compte n'est pas un mini compte.

string symbolsstr1 = "AUDJPYm,AUDCADm,AUDCHFm,AUDNZDm,AUDSGDm,AUDUSDm,CADCHFm,CADHKDm,CADJPYm,CHFJPYm,CHFPLNm,CHFSGDm,EURAUDm,EURBRLm,EURCADm,EURCHFm,EURDKKm,EURGBPm,EURHKDm,EURHUFm,EURJPYm,EURMXNm";
string symbolsstr2 = "GBPCHFm,GBPJPYm,GBPNZDm,GBPUSDm,HKDJPYm,HUFJPYm,MXNJPYm,NZDCADm,NZDCHFm,NZDJPYm,NZDSGDm,NZDUSDm,SGDJPYm,USDBRLm,USDCADm,USDCHFm,USDCZKm,USDDKKm,USDHKDm,USDHUFm,USDJPYm,USDMXNm";
string symbolsstr3 = "EURNOKm,EURNZDm,EURPLNm,EURRUBm,EURSEKm,EURSGDm,EURTRYm,EURUSDm,EURZARm,GBPAUDm,GBPCADm,USDNOKm,USDPLNm,USDRONm,USDRUBm,USDSEKm,USDSGDm,USDTRYm,USDZARm,XAGUSDm,XAUUSDm,ZARJPYm";
long sendmininterval = 3600;

 6. Configuration du RSI :

//rsi
extern int rsitimeframe = PERIOD_H4;
extern int rsiperiod = 14;
extern ENUM_APPLIED_PRICE rsiappliedprice = PRICE_CLOSE;
extern int rsishift = 0;
extern double rsiupperline = 70;
extern double rsilowerline = 30;

7. Utilisez magicweekendexpiration pour identifier le mode week-end, si quelqu'un a une meilleure méthode, merci de me le faire savoir.

int magicweekendexpiration = 1577836800;//2020-1-1 0:0:0 intvalue:1577836800

8. Autres :

Si la modification en mode week-end échoue, l'EA enverra un mail et tentera MAX_MODIFY_TRY_TIME (100 par défaut) fois jusqu'à ce que cela réussisse.

Aucun stop loss appliqué, et si une commande avec une petite perte (commande d'achat minimale ou commande de vente maximale) d'un symbole dépasse les pips d'attente, l'EA pendra une autre commande du même symbole.

En mode test, si l'équité est inférieure à 95% du solde, l'EA écrira l'état dans des fichiers d'avertissement.

if(((AccountEquity()/AccountBalance()) < 0.95))
        {
            WriteToWarningFile();
        }

Si vous avez trouvé des bugs ou avez des suggestions, n'hésitez pas à me le faire savoir.

Liste
Commentaire 0