Comment coder ? - page 162

 

Besoin d'aide pour une erreur de codage

Bonjour

Je suis assez nouveau dans le domaine du trading sur le marché des changes ainsi que dans le codage en MQL4. J'ai besoin d'aide pour configurer les commandes pour les ordres SellLimit et BuyLimit. Voici mon code mais je continue à obtenir un Ordersend error 130 ou 3. Je ne sais pas ce qui ne va pas dans ce code.

if (Bid <= LowEnvelope) {OrderSend(Symbol(),OP_SELLLIMIT,lotMM,Bid-EmergencyProfit*Point,0,0,0," Sell Limit Order",MagicNumber,0,Orange);}

S'il vous plaît, quelqu'un peut-il m'aider ? Merci

 

C'est un endroit fantastique pour apprendre

Je veux juste profiter de l'occasion pour dire merci à toutes les personnes qui rendent ce forum possible et à tous les autres traders qui sont prêts à partager leurs connaissances gratuitement avec tout le monde. Merci, j'ai appris pas mal de choses et j'ai toujours l'impression de ne rien savoir.

 
simonkoen:
Bonjour

Je suis assez novice dans le domaine du trading sur le marché des changes ainsi que dans le codage en MQL4. J'ai besoin d'aide pour mettre en place un système d'ordres pour les ordres SellLimit et BuyLimit. Voici mon code mais je continue à obtenir une erreur Ordersend 130 ou 3. Je ne sais pas ce qui ne va pas dans ce code.

if (Bid <= LowEnvelope) {OrderSend(Symbol(),OP_SELLLIMIT,lotMM,Bid-EmergencyProfit*Point,0,0,0," Sell Limit Order",MagicNumber,0,Orange);}

S'il vous plaît, quelqu'un peut-il m'aider ? Merci

Le prix de l'ordre SellLimit doit être supérieur au prix réel, et non inférieur.

 

Merci

Merci Roger9. J'utilise maintenant seelstop et buystopp à la place et cela fonctionne bien.

 

get CurrentTime Frame() ?

Simple demande - quelqu'un peut-il me dire comment obtenir le cadre temporel / la période en cours de visualisation ? Par exemple, 1 heure, 4 heures, 1 jour, etc.

J'ai cherché dans la documentation, mais je n'ai rien trouvé.

Merci.

 
djl:
Simple demande - quelqu'un peut-il me dire comment obtenir le cadre temporel / la période en cours de visualisation ? Par exemple, 1 heure, 4 heures, 1 jour, etc.

J'ai cherché dans les documents, etc. mais je ne l'ai pas trouvé.

Merci.

Cette fonction peut vous aider.

int Période( )

Retourne le nombre de minutes déterminant la période utilisée(cadre temporel du graphique).

Exemple :

Print("La période est ", Period()) ;

 

Deux autres questions

Salut tout le monde.

Désolé pour ma mauvaise orthographe d'hier.

Je voudrais savoir comment faire pour que, lorsque j'ouvre une position d'achat ou de vente et en même temps un ordre de vente ou d'achat stop, j'attribue le même numéro aux ordres de sorte que si l'un d'entre eux est déclenché, il ferme automatiquement l'autre. Je sais que vous devez être en mesure de le faire avec le nombre magique mais aussi quelque chose à propos du temps dans le nombre magique ? Deuxième question. Lorsque je place un code dans ma section d'ordres, je force le programme à n'ouvrir qu'un seul ordre sur cette barre, mais lorsque je fais cela, l'Ea ne déclenche pas d'ordres lorsque les conditions sont remplies pour ouvrir des ordres. Avez-vous une idée de la raison pour laquelle il en est ainsi ? Voici le code.

if(CurrBar != iTime(NULL,0,0))

{

double HighEnvelope = iEnveloppes(Symbol(),0,EnvelopePeriods,MODE_EMA,0,PRICE_MEDIAN,EnvelopeDev,MODE_UPPER,0) ;

si (Bid >= HighEnvelope && OrdersTotal() <=MaxAllowable_Trades)

{

OrderSend(Symbol(),OP_SELL,lotMM,(Bid),Slippage,(0),0," Sell Order ",MagicNumber,0,White) ;

OrderSend(Symbol(),OP_BUYSTOP,lotMM,Bid+EmergencyProfit*Point,0,0,0," Pending Buy Order ",MagicNumber,0,DodgerBlue) ;

CurrBar = iTime(NULL,0,0) ;

}

}

return ;

}

Merci d'avance pour votre patience et votre soutien.

 

Merci.

 

Disons que Period() =5. Comment puis-je lire les ticks, les minutes et les secondes de la transaction actuelle dans cette période ? Exemple : Minute =3, Secondes=42.

Ce que je veux faire, c'est vérifier une condition dans mon ea toutes les 4 minutes 50 secondes dans la période de 5 minutes - Pouvez-vous m'aider ?

Dave

 
1Dave7:
Disons que Period() =5. Comment puis-je lire les ticks de la transaction actuelle en minutes et secondes dans cette période ? Exemple : Minute =3, Secondes=42.

Ce que je veux faire, c'est vérifier une condition dans mon ea toutes les 4 minutes 50 secondes dans la période de 5 minutes - Pouvez-vous m'aider ?

Dave

Dans une période de 5 minutes, je pense que le seul moyen de vérifier une situation à un moment déterminé est lorsqu'un nouveau tick apparaît. Vous pourrez voir si le temps écoulé depuis la barre ouverte est le temps que vous voulez.

À chaque nouveau tick, la fonction de démarrage du code MQL s'exécutera, puis vous devrez surveiller si le temps écoulé depuis la dernière barre ouverte est le temps que vous voulez avec les fonctions de date et heure de MQL.

Si aucun nouveau tick ne survient entre votre temps (4min50sec) et une nouvelle période d'ouverture de barre (5min), je ne sais pas comment vérifier car je n'ai jamais eu besoin de le faire.