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
Un autre point...
RE : Il est important pour moi de souligner que ma méthode de codage était la plus rapide que j'ai pu mettre en place pour confirmer mes idées sur la capacité et la valeur de trading des volumes I/II. Je n'ai pas assez de temps dans ma vie pour tout coder "correctement" dès la première fois. En général, je commence les projets par phases. Exemple : Phase 1. Couvrir toutes les bases fonctionnelles, Phase 2. Nettoyer le code, 3. Ajouter de la beauté au côté visuel externe de l'EA. Actuellement, je travaille toujours à la phase 1. Il y a simplement beaucoup plus dans cet EA qu'un EA typique d'ordre d'envoi et de fermeture. Beaucoup de temps et de réflexion ont été consacrés à ce test. Le test sera passé lors de l'évolution du volume I. Je suis sûr que vous reconnaîtrez son caractère unique.
Cela dit, j'envisage une autre option pour "faire rouler le ballon" pour la première fonction OrderSend(). Je ne suis pas encore sûr de la direction que je vais prendre. En fin de compte, je vais remplacer complètement la condition "if(OrdersHistoryTotal()==0){" par une condition fiable. Vous avez souligné l'importance d'y réfléchir. J'apprécie votre encouragement.
Je vous remercie.
Qu'est-ce qui est variable et comment peut-il s'agir d'un numéro de ticket quand on lui fait ça ?
J'ai 4 trades en direct en ce moment, leurs numéros de tickets ne sont pas séquentiels....
Simon,
Un autre point...
RE : Il est important pour moi de souligner que ma méthode de codage était la plus rapide que j'ai pu mettre en place pour confirmer mes idées sur la capacité et la valeur commerciale des volumes I/II. Je n'ai pas assez de temps à perdre dans ma vie pour tout coder "correctement" du premier coup.
Simon,
Vous devez, au moins,..
RE : Je ne me préoccupe pas du temps qu'il faudra pour atteindre un objectif, je continue simplement à avancer jusqu'à ce que le projet soit terminé. Mon choix serait de ne pas avoir des Go d'erreurs :) Je préférerais écouter les critiques constructives de mes collègues codeurs, répondre et proposer des solutions aux problèmes de codage présentés. Ces solutions pourraient potentiellement produire moins d'erreurs pour les volumes I/II.
Merci.
Simon,
Vous devez, au moins,..
RE : Je ne me préoccupe pas du temps qu'il faudra pour atteindre un objectif, je continue simplement à avancer jusqu'à ce que le projet soit terminé. Mon choix serait de ne pas avoir de Go d'erreurs :) Je préférerais écouter les critiques constructives de mes collègues codeurs, répondre et proposer des solutions aux problèmes de codage présentés. Ces solutions pourraient potentiellement produire moins d'erreurs pour les volumes I/II.
Merci.
Ce que RaptorUK a donné là, était et est toujours une critique constructive et des solutions réciproques à vos codes.
Simon, je vais utiliser une variable booléenne pour résoudre ce problème. Cette condition booléenne est une solution commune qui résoudra ce problème jusqu'à ce que j'atteigne la phase 2. Je peux alors donner au signal d'envoi du premier ordre une condition unique reflétant mon style de codage. Je vous remercie pour votre contribution.
Simon, je vais utiliser une variable booléenne pour résoudre ce problème. Cette condition booléenne est une solution commune qui résoudra ce problème jusqu'à ce que j'atteigne la phase 2. Je peux alors donner au signal d'envoi du premier ordre une condition unique reflétant mon style de codage. Je vous remercie pour votre contribution.
Simon, je crois que je comprends, qu'est-ce que vous croyez que je ne comprends pas ?
Jusqu'à présent, nous avons discuté de deux choses importantes:
1. fixer les blocs de code d'urgence.
2. supprimer la condition actuelle, "if (OrdersHistoryTotal()==0{" et remplacer la condition par une condition différente (ma solution actuelle est de remplacer la condition actuelle par une condition booléenne pour commencer les commandes).
Cette idée de sauvegarder les variables est une solution commune pour la déconnexion du serveur et a été suggérée par ubzen. C'est à lui que revient le mérite de cette idée.
Merci.
Simon, je crois que je comprends, qu'est-ce que vous croyez que je ne comprends pas ?
La première ligne de votre fonction start() est celle-ci....
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES);
... quel numéro de ticket sélectionne-t-elle ? Eh bien, le ticket a été déclaré sans variable initiale, ce sera donc 0, donc vous essayez immédiatement de sélectionner le ticket 0, ce qui générera une erreur, si vous vérifiez la valeur de retour de cet OrderSend(), vous verrez que ce sera probablement l'erreur 4108 ERR_INVALID_TICKET . . si vous avez compris comment utiliser correctement OrderSend(), pourquoi faire cela ?
Si vous aviez compris OrderHistoryTotal(), vous ne l'auriez pas utilisé de la manière dont vous l'avez fait et vous n'auriez pas dit qu'il s'agit de ... " rechercher l'historique des transactions de la variable unique ticket seulement,".
Si vous aviez compris le fonctionnement des accolades { } , vous n'auriez pas ajouté d'accolades inutiles... Elles n'apportent rien, elles ne rendent pas votre code plus clair ou plus facile à lire.
peut être remplacé par . . .
L'utilisation de la variable i comme numéro de ticket montre que vous ne comprenez pas comment les numéros de tickets fonctionnent en dehors du Strategy Tester, c'est-à-dire dans un compte Démo ou Live... .
Vous ne vérifiez pas si vos fonctions commerciales ont fonctionné ou échoué, ce qui est essentiel dans votre code, car vous utilisez ce qui suit...
... si l'OrderSend() échoueticket will = -1 alors plus tard dans votre code lorsque vous essayez d'utiliser cette variable pour sélectionner et commander par le numéro de ticket -1, cela échouera évidemment .... . .