dans les variables globales ? (en dehors du démarrage et des autres fonctions)
Sinon, ils sont réinitialisés à chaque tic-tac.
Insérez d'autres Print()- à chaque étape de l'Expert Advisor, vous comprendrez alors où il se bloque et ce qu'il ne fait pas.
Je vous suis follement reconnaissant, j'ai manqué le point que j'ai déclaré les billets comme double au début et l'ordre ne peut pas être enregistré comme 1.0 et 2.0. C'est pourquoi la fonction de suppression attendait un point flottant.
Si vous n'avez pas de compte, veuillez vous inscrire
Autorisez l'utilisation de cookies pour vous connecter au site Web MQL5.com.
Veuillez activer les paramètres nécessaires dans votre navigateur, sinon vous ne pourrez pas vous connecter.
Vous êtes connecté. L'authentification à deux facteurs a été désactivée. Configurez-la à nouveau et scannez un nouveau code QR, ou continuez avec l'authentification à deux facteurs désactivée.
1. Stockez les tickets de commande dans un tableau ou 2 variables.
2. Sélectionnez-les un par un avec OrderSelect (le tableau est plus pratique ici) .
3. Vérifiez le type pour le moment actuel.
4. Si le type OP_BUY || OP_SELL -> OrderDelete pour le deuxième ticket.
Aidez-moi avec un exemple simple, je comprends beaucoup de choses, mais la sélection de l'ordre est un peu difficile !
Voici le code où l'erreur est ? ???? Ne supprime pas le deuxième pendentif lorsqu'un pendentif déclenche .......
si (MA1<MA2)
{
si(n==0)
{
//==================================================================================================================//
tiket=OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,slb,tpb,NULL,MagicNumber,0,CLR_NONE) ;
if(tiket<0) Alert("Erreur # - ",GetLastError()," On instrument ", Symbol()) ; //écriture d'une erreur///.
//================================================================================================================//
t2 = OrderSend(Symbol(), OP_BUYSTOP, Lots*Overlot,OtkrBS, Slip,0,tpb, 0, MagicNumber,expiration) ;
//================================================================================================================//
t1 = OrderSend(Symbol(), OP_SELLSTOP, Lots*Overlot+1,OtkrSS,Slip,0,slb, 0, MagicNumber,expiration) ;
//================================================================================================================//
//==================================================================================================================//
}
//==================================================================================================================//
sinon
//=================================================================================================================//
si (MA1>MA2)
{
tiket=OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),Slip,sls,tps,NULL,MagicNumber,0,CLR_NONE) ;
if(tiket<0) Alert("Erreur # - ",GetLastError()," On tool ", Symbol()) ; //écriture d'une erreur///.
//================================================================================================================//
t2 = OrderSend(Symbol(), OP_BUYSTOP, Lots*Overlot+1,OtkrSS1,Slip,0,sls, 0, MagicNumber,expiration) ;
//================================================================================================================//
t1 = OrderSend(Symbol(), OP_SELLSTOP, Lots*Overlot, OtkrBS1,Slip,0,tps, 0, MagicNumber,expiration) ;
//================================================================================================================//
}
//==================================================================================================================//
// si SELLSTOP s'est déclenché, supprimer BUYSTOP
if(OrderSelect(t1, SELECT_BY_TICKET))
{
si(OrderType()==OP_SELL)
{
CommandeSuppression(t2) ;
}
}
//----
// si BUYSTOP s'est déclenché, supprimer SELLSTOP
if(OrderSelect(t2, SELECT_BY_TICKET))
{
si(OrderType()==OP_BUY)
{
OrdreSuppression(t1) ;
}
}
Vous êtes confus quant aux conditions. Je pense que vous avez des parenthèses {} au mauvais endroit :
Ou quelque chose comme ça.
Ce qui est étonnant, c'est que j'ai une EA similaire. J'ai tout vérifié avec elle, c'est pareil en principe. Elle fonctionne, et celle-là non...
La différence est que l'autre EA n'a qu'une seule pose pour l'entrée d'achat et deux pendants.
dans les variables globales? (en dehors du démarrage et des autres fonctions)
Sinon, ils sont réinitialisés à chaque tic-tac.
Insérez d'autres Print()- à chaque étape de l'Expert Advisor, vous comprendrez alors où il se bloque et ce qu'il ne fait pas.
HOURRA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Gagnant !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
dans les variables globales ? (en dehors du démarrage et des autres fonctions)
Sinon, ils sont réinitialisés à chaque tic-tac.
Insérez d'autres Print()- à chaque étape de l'Expert Advisor, vous comprendrez alors où il se bloque et ce qu'il ne fait pas.