Mon cerveau est en ébullition. J'ai besoin d'une antisèche. - page 4

 
Vladimir M.:

Après les bonnes actions, les mauvaises actions ? D'après votre phrase, je peux supposer qu'il y a une erreur dans le code - les variables ne sont pas réinitialisées. Au moment où l'EA est déclenché, c'est-à-dire à l'ouverture de la barre ou à l'arrivée du tick, les variables et les tableaux de l'EA doivent être réinitialisés ou les valeurs doivent leur être attribuées. Les cotations sont mises à jour, et les montants et propriétés des ordres et des positions sont récupérés et vérifiés à nouveau. Il ne s'agit que d'une hypothèse - elle peut être éliminée en imprimant les valeurs, avant et après la réception des données. Vous pouvez observer et comparer en mode visuel. Eh bien, c'est un travail délicat.

Ou peut-être qu'il y a un problème de logique... ?

Laissez-moi vous expliquer la situation. Mamaev MAGOMED KHAN-MAGOMEDOVICH, alias zvezdochet, est loin d'être programmé. Il a commandé un robot et a reçu un code ex4 d'essai. Il a détecté des erreurs d'exécution. Le programmeur a trouvé une excuse :

Ici, x est un nombre réel représentant Ask ouBid, qui sont stockés dans la mémoire de l'ordinateur avec une précision limitée en notation binaire, alors que vous et moi utilisons la notation décimale. Il faut tenir compte du fait que tous les nombres décimaux qui ne représentent pas une puissance de deux ne peuvent être écrits que sous la forme d'une fraction infinie dont la valeur est insignifiante, mais supérieure ou inférieure au nombre décimal représenté. Par exemple, x=1.7750000...0001>1.77500 (la conditiontpn'est pas encore remplie) et x=1.77499999...9999 <1.77500 (x est en dehors du niveau 1.77500)

Imaginez maintenant que vous êtes le programmeur et que le client vous écrit :

Je peux deviner quel type d'erreur se trouve dans le code - les variables ne sont pas effacées. Au moment du déclenchement de l'EA - ouverture de la barre ou arrivée du tick - les variables et tableaux de l'EA doivent être effacés ou les valeurs nécessaires doivent leur être attribuées. Les cotations sont mises à jour, et les montants et propriétés des ordres et des positions sont récupérés et vérifiés à nouveau. Il ne s'agit que d'une hypothèse - elle peut être éliminée en imprimant les valeurs, avant et après la réception des données. Vous pouvez observer et comparer en mode visuel. C'est un travail difficile.

Qu'est-ce que vous en pensez ?

 

Les doublages sont une excuse stupide. Premièrement, ils peuvent et doivent être normalisés, et deuxièmement, même s'ils ne sont pas normalisés, il n'y aura qu'une erreur occasionnelle et seulement d'un pip. Sauf dans les cas où la position ne s'ouvrira pas du tout en raison d'un lot ou d'un prix stop loss/teyprofit incorrect.

 
JRandomTrader:

Ces nuances ne concernent que le programmeur, et la manière de les contourner aussi. Le client n'a pas besoin de les connaître. Et mon explication était destinée à un programmeur novice.

Le programmeur a dit que nous aurions dû introduire un paramètre supplémentaire "zone de prise de bénéfices". C'est-à-dire que si l'on vend 1,20000 tp 1,19500, avec le paramètre = 50 pips , l' ordre à cinq chiffres peut clôturer près de 1,195000 - 1,94500 ............C'est pourquoi j'ai demandé COMMENT clôturer sur Take Profit sans paramètres supplémentaires ?C'est pourquoi j'ai dit que les cerveaux débordent de vérités apparemment évidentes.....

 
Konstantin Erin:

Laissez-moi vous expliquer la situation. MAMAEV MAGOMED KHAN-MAGOMEDOVICH, alias zvezdochet, est loin d'être programmé. Il a commandé un robot et a reçu un code ex4 d'essai. Il a détecté des erreurs d'exécution. Le programmeur a trouvé une excuse :

Ici, x est un nombre réel représentant Ask ouBid, qui sont stockés dans la mémoire de l'ordinateur avec une précision limitée en notation binaire, alors que vous et moi utilisons la notation décimale. Il faut tenir compte du fait que tous les nombres décimaux qui ne représentent pas une puissance de deux ne peuvent être écrits que sous la forme d'une fraction infinie dont la valeur est insignifiante, mais supérieure ou inférieure au nombre décimal représenté. Par exemple, x=1.7750000...0001>1.77500 (la conditiontpn'est pas encore remplie) et x=1.77499999...9999 <1.77500 (x est en dehors du niveau 1.77500)

Imaginez maintenant que vous êtes le programmeur et que le client vous écrit :

Je peux deviner quel type d'erreur se trouve dans le code - les variables ne sont pas effacées. Au moment du déclenchement de l'EA - ouverture de la barre ou arrivée du tick - les variables et tableaux de l'EA doivent être effacés ou les valeurs nécessaires doivent leur être attribuées. Les cotations sont mises à jour, et les montants et propriétés des ordres et des positions sont récupérés et vérifiés à nouveau. Il ne s'agit que d'une hypothèse - elle peut être éliminée en imprimant les valeurs, avant et après la réception des données. Vous pouvez observer et comparer en mode visuel. C'est un travail difficile.

Qu'est-ce que vous en pensez ?

Kostya ! !! Nous traitons tout ce qui est étranger de manière relative, car nous avons confiance en Anstein !
 
Алексей Тарабанов:

Et montrez-moi le code du programme pour l'ouverture d'une position. Le module qui passe la commande.

Plus précisément, le module qui l'appelle.

En d'autres termes, j'aimerais voir quelle condition vous utilisez pour passer l'ordre.

Je peux appuyer sur Acheter ou Vendre manuellement ou définir des ordres en attente. Pour avoir un code, il faut d'abord l'écrire, mais ici, le système binaire est à l'écart ...

 
Zvezdochet:

Je peux appuyer manuellement sur Achat ou Vente ou définir des ordres en attente. Pour avoir un code, il faut d'abord l'écrire, mais ici, le système binaire est à l'écart...

Maga ! Calmez-vous... Tu vas encore être banni ! !!
 
Zvezdochet:

Le programmeur a dit que nous aurions dû introduire un paramètre supplémentaire "zone de prise de bénéfices". C'est-à-dire que si l'on vend 1,20000 tp 1,19500, avec le paramètre = 50 pips , un ordre à cinq chiffres peut clôturer près de 1,195000 - 1,94500 ............C'est pourquoi j'ai demandé COMMENT clôturer sur Take Profit sans paramètres supplémentaires ?C'est pourquoi j'ai dit que les cerveaux s'embrouillent à partir de vérités apparemment évidentes.....

Mais le client doit comprendre qu'une prise ou un arrêt ne se fait pas lorsque le prix "est arrivé à ce point", mais lorsque "le prix a franchi cette ligne". Pour le point, le prix peut le sauter. Mais si vous voulez un "point", alors vous devez spécifier la largeur de cette zone "point".

 
Zvezdochet:


A propos de l'ouverture exacte. Un programmeur a inventé l'expression "correspondance absolue avec la marque". Dans 90% des commandes ouvertes ! Je ne veux pas d'une correspondance absolue. Mais lorsque mon EA agit sur le prochain pas de grille (au lieu du pas actuel), je ne peux pas le comprendre :Au niveau actuel, l'EA a effectué une action correcte. Au même niveau, l'EA doit effectuer d'autres actions correctes. Ces actions sont donc effectuées au niveau suivant et les valeurs se rapportent au niveau précédent !Exemple Acheter 1.20000 sl 1.19500 tp 1.20500 Vendre 1.20000 sl 1.20500 tp 1.19500 , un des ordres est ouvert à l'étape suivante de la grille, à un "autre" niveau, où les enregistrements restent ! les entrées restent inchangées à "leur" niveau 1.20000

C'est pourquoi j'ai demandé le code du module qui définit le placement des commandes.

Quel est l'état de la vérification de la rupture de niveau ? Si ce n'est pas Open ou Tick, tout est normal. Une barre doit terminer sa formation et donner un signal pour ouvrir une position sur la barre suivante, sinon elle ne peut pas le faire.

 
JRandomTrader:

Mais le client doit comprendre qu'une prise ou un arrêt ne se fait pas lorsque le prix "est arrivé à ce point", mais lorsque "le prix a franchi cette ligne". Parce que le prix peut passer par ce point. Mais si nous voulons atteindre un "point", nous devons spécifier la largeur de la zone de ce "point".

Si le niveau est franchi afin de clôturer l'ordre au niveau du Take Profit, nous pouvons mathématiquement le considérer comme égal ou infini au côté supérieur du Take Profit. J'en suis heureux . Mais le problème est que les niveaux dans le terminal utilisent la notation décimale Le problème est que l'EA ne voit pas les niveaux en notation décimale car il utilise la notation binaire. Que dois-je faire maintenant ? Je dois m'asseoir avec un stylo et du papier et copier les valeurs de prix que mon conseiller expert voit ?Et ensuite, je dois résoudre l'énigme suivante : "Comment utiliser ce cadre pour l'ensemble de l'algorithme" ? Et si au lieu de 100 pips, un ordre est fermé avec 50 TP, est-ce aussi la faute du système binaire ?

 
Алексей Тарабанов:

C'est pourquoi j'ai demandé le code du module qui définit le placement des commandes.

Quelle est la condition pour vérifier la présence d'une panne de niveau ? Si ce n'est pas Open et pas une tique, alors tout est naturel. La barre doit finir de se former et donner un signal pour ouvrir une position sur la barre suivante, sinon elle ne peut pas le faire.

Le code...module.... formation de barres .... Je peux difficilement lire de tels mots, et encore moins les mémoriser ou donner une réponse intelligible...Je vais essayer de copier vos paroles et de les envoyer au programmeur, mais je pense (c'est déjà arrivé plus d'une fois) qu'il dira : "Nous avons nous-mêmes une moustache".