Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Questions et réponses
Bonjour à tous,
Je pensais avoir trouvé mes réponses avec le code suivant :
double range[5];
for(int i=1;i<5;i++)
{
range={High-Low};
int Max=ArrayBsearch(range,10,WHOLE_ARRAY,1,MODE_ASCEND);
double MaxRange=(High[Max]-Low[Max])/Point;
}
Print("Max Range: ",MaxRange," found at index: ",Max);
Mais il renvoie toujours le dernier indice et non le plus grand indice de la plage.
Toute aide supplémentaire serait appréciée.
SaxMan
Erreur corrigée
Bonjour à tous,
Je pensais avoir mes réponses avec le code suivant :
double range[5];
for(int i=1;i<5;i++)
{
range={High-Low};
int Max=ArrayBsearch(range,10,WHOLE_ARRAY,1,MODE_ASCEND);
double MaxRange=(High[Max]-Low[Max])/Point;
}
Print("Max Range: ",MaxRange," found at index: ",Max);
[/code]
But it still just returns the last index not the largest range index.
Any further help would be appreciated.
SaxManVoici la correction :
[code]
double range[5] ;
for(int i=1;i<5;i++)
{
range={High-Low} ;
int Max=ArrayMaximum(range) ;
double MaxRange=(High[Max]-Low[Max])/Point ;
}
Print("Max Range : ",MaxRange," found at index : ",Max) ;Ceci peut être utilisé pour obtenir la valeur la plus élevée/la plus basse (en utilisant ArrayMinimum(range)) du tableau pour comparer des variables.
J'espère que cela vous aidera,
SaxMan
Même code avec des ajouts
Ajouté :
* Plage minimale
* Lignes verticales pour mettre en évidence les barres des plages Max et Min :
for(int i=1;i<2000;i++)
{
range={High-Low};
int Max=ArrayMaximum(range,WHOLE_ARRAY,1);
int Min=ArrayMinimum(range,WHOLE_ARRAY,1);
double MaxRange=(High[Max]-Low[Max])/Point;
double MinRange=(High[Min]-Low[Min])/Point;
}
Print("Max Range: ",MaxRange," pips found at index: ",Max);
Print("Min Range: ",MinRange," pips found at index: ",Min);
int time1=Time[Max];
int time2=Time[Min];
ObjectCreate("stats1",OBJ_VLINE,0,0,0);
ObjectSet("stats1", OBJPROP_TIME1, time1);
ObjectSet("stats1", OBJPROP_COLOR, Red);
ObjectSet("stats1", OBJPROP_WIDTH, 1);
ObjectCreate("stats2",OBJ_VLINE,0,0,0);
ObjectSet("stats2", OBJPROP_TIME1, time2);
ObjectSet("stats2", OBJPROP_COLOR, Blue);
ObjectSet("stats2", OBJPROP_WIDTH, 1);Le code est conforme, mais n'affiche pas la valeur
extern Bool Direction_Up=true ;
if(Direction_Up==true) Dir="UP" ; ///////////Cette conversion est erronée - Comment la convertir dans la bonne syntaxe ????
ObjectCreate("Dir", OBJ_LABEL, 0, 0, 0) ;
ObjectSetText("Dir", 10, "Arial", White);///////////Ceci est une erreur - Comment faire pour qu'il affiche UP à l'écran ????
ObjectSet("Dir", OBJPROP_CORNER, 1) ;
ObjectSet("Dir", OBJPROP_XDISTANCE, 36) ;
ObjectSet("Dir", OBJPROP_YDISTANCE, 120);///
Bonjour,
{
int i;
if ((Year() >= X) && (Month() >= Y))
{
Comment("===========",expired,"===========");
return(0);
}
GetPosition = StrToTime(StrGetPosition);
StartOrderTime = StrToTime(StrStartOrderTime);
EndOrderTime = StrToTime(StrEndOrderTime);
return(0);
Ma question est la suivante :
Est-ce que GetPosition, StartOrderTime, EndOrderTime seront exécutés ?
Salutations
Questions
Bonjour,
Un de mes amis m'a parlé de ce site. Elle m'a dit qu'ils ont les meilleurs programmeurs mql.
Voici une question :
Si j'ai défini un code, par exemple.... pour acheter à 15:30 (la plupart des nouvelles heure), j'ai vérifié le calendrier économique.
if (Hour()==15)
{
if (Minute()>=30)
{
if (Seconds()>=00)
[/PHP]
After this, something like this goes:
[PHP]
OrderSend(Symbol().......................
Tout le monde l'écrit différemment, hehe.
Pourquoi ça ne peut pas être la même chose ?
Ok, voilà le problème. Pour le code ci-dessus, je veux que l'OrderSend........ et la partie continue pour créer un BuyStop 30 pips au-dessus du prix à 15:30:00, et un SellStop 25 pips en dessous du prix à 15:30:00.
J'ai demandé à ma meilleure amie, et elle m'a dit de vous demander à vous. Donc, j'espère vraiment que vous serez d'une grande aide.
J'ai passé des semaines à essayer de comprendre ce code. Je ne plaisante pas. Alors, est-ce que quelqu'un qui code en mql4 peut m'aider ?
---Julia---
extern Bool Direction_Up=true ;
if(Direction_Up==true) Dir="UP" ; ///////////Cette conversion est erronée - Comment la convertir dans la bonne syntaxe ????
ObjectCreate("Dir", OBJ_LABEL, 0, 0, 0) ;
ObjectSetText("Dir", 10, "Arial", White);///////////Ceci est une erreur - Comment faire pour qu'il affiche UP à l'écran ????
ObjectSet("Dir", OBJPROP_CORNER, 1) ;
ObjectSet("Dir", OBJPROP_XDISTANCE, 36) ;
ObjectSet("Dir", OBJPROP_YDISTANCE, 120);///
Salut Iscuba11,
voir le code pour le correctif et l'explication
string Dir; //-- Dir has to be declared as a string
if(Direction_Up==true) Dir="UP";
ObjectCreate("Dir", OBJ_LABEL, 0, 0, 0);
ObjectSetText("Dir",Dir, 10, "Arial", White); // -- you left out the text to print - you named the object only.
ObjectSet("Dir", OBJPROP_CORNER, 1);
ObjectSet("Dir", OBJPROP_XDISTANCE, 36);
ObjectSet("Dir", OBJPROP_YDISTANCE, 120);J'espère que cela vous aidera,
SaxMan
Semaines ? !
MQL4 : trading forex automatisé, testeur de stratégie et indicateurs personnalisés avec MetaTrader
recherche de OrderSend() - docs
Devis
OrderSend - Documentation MQL4
int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)
symbol - Symbole pour la négociation.
cmd - Type d'opération. Il peut s'agir de n'importe quelle opération de l'énumération Trade operation.
volume - Nombre de lots.
price - Prix préférentiel de la transaction.
slippage - Glissement de prix maximum pour les ordres d'achat ou de vente.
stoploss - Niveau d'arrêt des pertes.
takeprofit - Niveau de prise de profit.
comment - Texte du commentaire de l'ordre. La dernière partie du commentaire peut être modifiée par le serveur.
magic - Numéro magique de l'ordre. Peut être utilisé comme identifiant défini par l'utilisateur.
expiration - Date d'expiration de l'ordre (pour les ordres en attente uniquement).
arrow_color - Couleur de la flèche d'ouverture sur le graphique. Si le paramètre est absent ou a la valeur CLR_NONE, la flèche d'ouverture n'est pas dessinée sur le graphique.
Donc, dans notre cas, nous avons ceci :
C'est tout !
Pas de stoploss, pas de takeprofit.
Veuillez noter que votre courtier (très probablement) n'acceptera pas de nouveaux ordres à 15h30, n'y pensez même pas. Oui, cela fonctionnera sur une démo mais pas sur un compte réel - pas plus tôt que 5 minutes avant les nouvelles et pas moins de 3 minutes après les nouvelles.
Utilisez les moteurs de recherche
Google
Yahoo !
et autres.
PS :
si vous voulez que j'écrive un EA pour vous, envoyez-moi un message.
Vous avez fait ma journée et mon week-end avec la correction du code. Merci infiniment !
Sincèrement,
Dave
<<<Comment utiliser ObjectCreate sur un indicateur-separate-window par rapport au chart-window ????. Ce serait bien pratique !