mladen: Essayez-le (la même chose est valable pour celui-ci aussi : je ne sais pas s'il fonctionnera à cause de certains avertissements restés dans le code).
//------- global variables ------------------------------------------+ double Hilo_Handle = INVALID_HANDLE; //Hilo Handle double Hilo_ma[1]; //hilo ma double Hilo_cl[1]; //hilo close int Shift=1; //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar datetime ctm[1]; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ intOnInit() { //--- if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1) { return(false); }
//---- get Hilo Moving Average Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo); if(Hilo_Handle!=INVALID_HANDLE) ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle); //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ voidOnDeinit(constint reason) { //---
Voici un problème d'erreur, qui peut être éliminé de deux façons : ..... en ajoutant "t" avant (tdelete) et en ajoutant "pendingorder" (deletependingorder) après la suppression ....... Ma question est la suivante : quelle est la meilleure façon de procéder ?
//------- global variables ------------------------------------------+ double Hilo_Handle = INVALID_HANDLE; //Hilo Handle double Hilo_ma[1]; //hilo ma double Hilo_cl[1]; //hilo close int Shift=1; //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar datetime ctm[1]; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ intOnInit() { //--- if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1) { return(false); }
//---- get Hilo Moving Average Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo); if(Hilo_Handle!=INVALID_HANDLE) ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle); //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ voidOnDeinit(constint reason) { //---
Voici un problème d'erreur, qui peut être supprimé de deux manières différentes : ..... en ajoutant "t" avant (tdelete) et en ajoutant "pendingorder" (deletependingorder) après avoir supprimé ....... Ma question est la suivante : quelle est la meilleure méthode ?
Votre avis et vos conseils sont les bienvenus.
Salutations
delete est un mot réservé dans le nouveau metatrader 4. Si une fonction, une variable ou toute autre partie du code, à l'exception de l'opérateur régulier new delete, utilise ce nom, il doit être renommé - l'ajout de "t" est une solution rapide, mais tout autre nom que "delete" fera l'affaire.
mladen: delete est un mot réservé dans le nouveau metatrader 4. Si une fonction, une variable ou toute autre partie du code, à l'exception du nouvel opérateur de suppression, utilise ce nom, il doit être renommé - l'ajout de "t" est juste une solution rapide, mais n'importe quel nom, à l'exception de "delete", fera l'affaire.
Très cher MLADEN
Merci pour l'aide du guide. C'est clair maintenant, merci.
et comment supprimer ce genre d'avertissements ? ..... et si on laisse ces avertissements tels quels, cela affecte-t-il la fonctionnalité du code ?
"vérifier la précédence des opérateurs pour une erreur éventuelle ; utiliser les parenthèses pour clarifier la précédence".
Cher mladen,
L'ea ci-jointe se bloque lors de la sauvegarde des paramètres et je dois redémarrer mt4 !
Y a-t-il un problème avec les codes ?
Merci.
Cher mladen,
L'ea ci-jointe se bloque lors de la sauvegarde des paramètres et je dois redémarrer mt4 !
Y a-t-il un problème avec les codes ?
Merci.
Aucun problème apparent qui pourrait causer cela
Nous vous remercions de votre intérêt.
@mladen,
L'ea ci-jointe est très rentable. Mais il a beaucoup d'erreur(s) sur le dernier mt4.
Pourriez-vous les corriger ?
Merci.
Nous vous remercions de votre intérêt.
@mladen,
L'ea ci-jointe est très rentable. Mais il a beaucoup d'erreur(s) sur le dernier mt4.
Pourriez-vous les corriger ?
Merci.
Essayez-le (la même chose est valable pour celui-ci aussi : je ne sais pas s'il fonctionnera à cause de certains avertissements restés dans le code).
Je vais le tester :)
Merci pour ce que vous avez fait.
Bonjour ,
J'essaie d'obtenir le signal de gann hilo mais cela ne fonctionne pas.
par exemple :
Je règle le hilo gan = 30 minutes et 4 smoothed, parce que je veux voir la direction du trade,
mais je n'arrive pas à obtenir le signal d' achat ou de vente correctement de l'indicateur à l'EA.
le"Hilo_Handle" ne prend pas la bonne valeur ;-(
//| ea-hilo.mq5 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
//------- input -----------------------------------------------------+
input ushort Hilo_Periodo=4;
input ENUM_MA_METHOD Hilo_Metodo=MODE_SMA;
//------- global variables ------------------------------------------+
double Hilo_Handle = INVALID_HANDLE; //Hilo Handle
double Hilo_ma[1]; //hilo ma
double Hilo_cl[1]; //hilo close
int Shift=1; //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar
datetime ctm[1];
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1)
{
return(false);
}
//---- get Hilo Moving Average
Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo);
if(Hilo_Handle!=INVALID_HANDLE)
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle);
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
if(CopyBuffer(Hilo_Handle,0,Shift,1,Hilo_ma)==-1 ||
CopyClose(_Symbol,PERIOD_CURRENT,0,1,Hilo_cl)==-1
//CopyClose(_Symbol,PERIOD_CURRENT,Shift,1,Hilo_cl)==-1
) return;
//Hilo Buy
if (Hilo_cl[0]>Hilo_Handle) {
Comment ("BUY SIGNAL "+Hilo_cl[0]+">"+Hilo_Handle);
return;
}
else
//Hilo Sell
if (Hilo_cl[0]<Hilo_Handle) {
Comment ("SELL SIGNAL "+Hilo_cl[0]+"<"+Hilo_Handle);
return;
}
Comment ("NO SIGNAL");
}
//+------------------------------------------------------------------+
Très cher MLADEN
Voici un problème d'erreur, qui peut être éliminé de deux façons : ..... en ajoutant "t" avant (tdelete) et en ajoutant "pendingorder" (deletependingorder) après la suppression ....... Ma question est la suivante : quelle est la meilleure façon de procéder ?
Votre avis et vos conseils sont les bienvenus.
Salutations
Bonjour ,
J'essaie d'obtenir le signal de gann hilo mais cela ne fonctionne pas.
par exemple :
Je règle le hilo gan = 30 minutes et 4 smoothed, parce que je veux voir la direction du trade,
mais je n'arrive pas à obtenir le signal d'achat ou de vente correctement de l'indicateur à l'EA.
le"Hilo_Handle" ne prend pas la bonne valeur ;-(
//| ea-hilo.mq5 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
//------- input -----------------------------------------------------+
input ushort Hilo_Periodo=4;
input ENUM_MA_METHOD Hilo_Metodo=MODE_SMA;
//------- global variables ------------------------------------------+
double Hilo_Handle = INVALID_HANDLE; //Hilo Handle
double Hilo_ma[1]; //hilo ma
double Hilo_cl[1]; //hilo close
int Shift=1; //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar
datetime ctm[1];
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1)
{
return(false);
}
//---- get Hilo Moving Average
Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo);
if(Hilo_Handle!=INVALID_HANDLE)
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle);
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
if(CopyBuffer(Hilo_Handle,0,Shift,1,Hilo_ma)==-1 ||
CopyClose(_Symbol,PERIOD_CURRENT,0,1,Hilo_cl)==-1
//CopyClose(_Symbol,PERIOD_CURRENT,Shift,1,Hilo_cl)==-1
) return;
//Hilo Buy
if (Hilo_cl[0]>Hilo_Handle) {
Comment ("BUY SIGNAL "+Hilo_cl[0]+">"+Hilo_Handle);
return;
}
else
//Hilo Sell
if (Hilo_cl[0]<Hilo_Handle) {
Comment ("SELL SIGNAL "+Hilo_cl[0]+"<"+Hilo_Handle);
return;
}
Comment ("NO SIGNAL");
}
//+------------------------------------------------------------------+
Très cher MLADEN
Voici un problème d'erreur, qui peut être supprimé de deux manières différentes : ..... en ajoutant "t" avant (tdelete) et en ajoutant "pendingorder" (deletependingorder) après avoir supprimé ....... Ma question est la suivante : quelle est la meilleure méthode ?
Votre avis et vos conseils sont les bienvenus.
Salutations
delete est un mot réservé dans le nouveau metatrader 4. Si une fonction, une variable ou toute autre partie du code, à l'exception du nouvel opérateur de suppression, utilise ce nom, il doit être renommé - l'ajout de "t" est juste une solution rapide, mais n'importe quel nom, à l'exception de "delete", fera l'affaire.
Très cher MLADEN
Merci pour l'aide du guide. C'est clair maintenant, merci.
et comment supprimer ce genre d'avertissements ? ..... et si on laisse ces avertissements tels quels, cela affecte-t-il la fonctionnalité du code ?
"vérifier la précédence des opérateurs pour une erreur éventuelle ; utiliser les parenthèses pour clarifier la précédence".
Que faut-il ajouter ou faire avec ?
salutations