[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 166
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
Messieurs les professionnels, j'ai encore besoin de votre aide !
Vous trouverez ci-dessous un extrait de code responsable de la clôture des transactions, mais le problème est que lorsque les ordres en attente ne sont pas exécutés, ils ne sont pas supprimés, je n'arrive pas à comprendre pourquoi. Mais lorsque j'ai besoin de fermer un ordre en attente qui a déjà été exécuté, tout se passe correctement et si l'ordre n'a pas été exécuté, il reste simplement suspendu jusqu'à ce qu'il soit exécuté....
OrderSelect(0, SELECT_BY_POS, MODE_TRADES) ;
Magic = OrderMagicNumber() ;
orderticket = OrderTicket() ;
if (OrdersTotal() == 1 && Magic == 111 && OrderType( ) == 0) {
if (H1_BUY_5 == 0 || H1_BUY_1 == 0) {
OrderClose(orderticket, lots, Bid, 5, Yellow) ;
if (OrdersTotal() == 1) OrderDelete(orderticket, Brown) ;
}
}
C'est la condition qui sélectionne uniquement l'ordre d'achat,
si (OrdersTotal() == 1 && Magic == 111 && OrderType( ) == 0)
il n'y a donc aucun moyen de supprimer l'ordre en attente
Probablement parce que vous calculez le lot d'abord et ensuite
Merci, j'ai changé le calcul du lot, mais ça ne marche toujours pas.
Comment cela ne fonctionne-t-il pas, qu'est-ce que cela dit dans les journaux ?
Vérifiez les valeurs prises par np, ici
Il n'y a pas de messages d'erreur dans le journal de bord. Pouvez-vous regarder le code entier de l'EA ? Il devrait fermer 1/3 du lot si le stoploss a déjà été déplacé vers le breakeven par le chalutage.
Oooooooo comment tout est en désordre. En général, tout est faux, plus facile à jeter et à écrire un nouveau. Les paramètres sont définis de manière incorrecte, les fonctions sont appelées de manière incorrecte, beaucoup de calculs inutiles. Bon pour un tutoriel sur la façon de ne pas écrire de code.
En somme, tout est faux, il est plus facile de le jeter et d'en écrire un nouveau. Les paramètres sont définis de manière incorrecte, les fonctions sont appelées de manière incorrecte, beaucoup de calculs inutiles. Il sera bon pour un tutoriel sur la façon de ne pas écrire de code.
...Devrait fermer 1/3 du lot si un stop loss déjà déplacé au seuil de rentabilité par le chalut est déclenché.
Je regarde tout cela et je me dis : pourquoi se lancer dans de telles tâches si l'on n'est pas sûr des bases ? Ce genre d'auto-apprentissage fait plus de bien que de mal. L'étincelle de la pensée se noie dans un tas d'erreurs.
Il a probablement fait plus de mal que de bien.
Veuillez nous conseiller, messieurs !
Imaginez la situation : un arrêt est déclenché, en raison du déclenchement de la N-ième condition. Mais après quelques chandeliers, la N-ième condition est tombée. À l'aide de cette fonction, vous pouvez rouvrir l'affaire après que la Nième condition soit remplie. En d'autres termes, vous devez déterminer qu'un stop a été déclenché il y a un certain nombre de barres, et parce que la N-ième condition est tombée, répétez l'opération !