Trouble de l'erreur il n'y a pas d'opérations commerciales - page 2

 
Алексей Тарабанов:
Veuillez noter qu'il s'agit d'une EA.

Je vérifie depuis des jours, comme je l'ai écrit ci-dessus, pouvez-vous suggérer une solution spécifique basée sur mon EA, par exemple ?

 
Konstantin Nikitin:
Vous pouvez également modifier l'écart sur 4. Une fois, j'avais un OnTimer par défaut, j'ai changé le trade en OnTick. Les échanges se sont poursuivis.

OnTick réglé, spread changé, même erreur.

 
Andery Voronin:

J'ai eu une telle erreur sur la dernière version de EA, apparemment beaucoup de choses inutiles, soluble avec ISTesting(), IsVisualMode(). Bien qu'il y ait assez de code pour une rame de papier.

Hmm, solution intéressante. Pouvez-vous décrire la solution à ce problème en utilisantISTesting(), IsVisualMode() ?
Cet EA est sur mql4 et pour metatrader.

 
Mikhail Vlasov:

J'ai parfaitement compris sans vous que l'EA ne négocie pas pour une raison quelconque pendant la validation automatique, la question est de savoir quelle est la raison de l'absence de négociation ou comment la tracer.

Je vous conseille de lire les messages jusqu'à la dernière lettre.

Forum sur le trading, les systèmes de trading automatisés et le testeur de stratégie

Il n'y a pas d'opérations commerciales en raison d'erreurs.

Alexey Viktorov, 2018.12.30 08:21

Quel tas d'absurdités vous avez inventé. C'est plus facile que deux doigts... L'EA n'ouvre tout simplement pas de position pour une raison quelconque et ne le signale pas dans les journaux. Je n'ai pas regardé le code, mais c'est l'une des raisons possibles. Par exemple, le conseiller expert n'a pas assez d'argent et sans l'annoncer, il arrête de négocier ou attend simplement un nouveau tick et tout se répète.
Vous savez mieux que quiconque où les conditions sont réunies, les cartes sont entre vos mains. Le conseiller expert doit informer l'utilisateur de toutes les erreurs, sans essayer d'ouvrir une position, plutôt que de mettre fin silencieusement à la transaction.
 
Alexey Viktorov:

Je vous conseille de lire les messages jusqu'à la dernière lettre.

Vous êtes le mieux placé pour savoir où se trouvent les conditions, alors aidez-vous. Le conseiller expert devrait informer l'utilisateur de toutes les erreurs sans essayer d'ouvrir une position, plutôt que de mettre fin silencieusement à la transaction.

Je suis d'accord avec vous que l'EA doit informer l'utilisateur de toutes les erreurs, mais si lors de la validation automatique, par exemple, un EA est chargé d'un dépôt de 1$ et qu'il va traiter cette exception, alors il peut aussi bien dire à l'utilisateur à chaque tick qu'il n'y a pas assez de fonds et qu'il ne fera pas de trading, et à la fin je recevrai à nouveau une erreur de test avec la description qu'iln'y apas d'opérations de trading ou est-ce que je comprends mal quelque chose ?

 
Mikhail Vlasov:

Je suis d'accord avec vous que le conseiller expert doit informer l'utilisateur de toutes les erreurs, mais si pendant la validation automatique, par exemple, un conseiller expert reçoit un dépôt de 1 $ et qu'il traite cette exception, alors il peut aussi bien dire à l'utilisateur à chaque tick qu'il n'y a pas assez de fonds et qu'il ne négociera pas, et à la fin je recevrai à nouveau une erreur de test avec la description iln'y apas d'opérations de trading, ou je ne comprends pas quelque chose de mal ?

Ou peut-être que j'aurais dû vérifier ?

 
Cela ne servira à rien car, au final, l'erreur sera la même, mais ce qui l'a influencée (un petit dépôt ou autre chose) reste inconnu, c'est le problème - il n'y a pas de spécificité car tout peut affecter le fait que le robot a arrêté de trader.
 
Mikhail Vlasov:
Cela ne servira à rien car, au final, l'erreur sera la même, mais ce qui l'a provoquée (petit dépôt ou autre chose) - on ne le sait pas, c'est ça le problème, il n'y a pas de spécificité, car tout peut affecter le fait que le robot a arrêté de trader.

Il vous faudra 10-15 minutes pour le vérifier, ce n'est pas le premier jour où vous discutez du problème. Et vous ne faites que spéculer sur le fait que ça va aider ou pas...

 
Comme variante purement pour les tests. Vous pouvez écrire dans OnInit pour prendre des positions. et voir. Si tout passe. Ensuite, nous chercherons un bug dans l'Expert Advisor. Il n'y a pas beaucoup de variantes. Les contrôles de base suffiront. A propos, j'ai remarqué que la vérification de la couche d'arrêt est effectuée en utilisant un nombre pur. Personnellement, je fais toujours +1
 

Le test automatique de l'EA du topicstarter a duré 72 secondes. 3 paires de devises sur 3 horizons temporels différents. H1, H4, Daily, si je ne me trompe pas. Qui a arrêté le test et pourquoi ? Ou bien la puissance de calcul de l'autotest est illimitée et il a fait tout l'intervalle ? Quel était cet intervalle ?

Vous voyez, il n'y a tout simplement pas eu de transactions sur ces trois symboles dans cet intervalle. Pas sur le conseiller expert, mais sur le marché.

4 paires, 3 horizons temporels. H1, M30, Quotidien. 72 secondes)

Une dernière chose : l'autotest ne peut pas afficher les transactions sur le marché, il fonctionne toujours sur le principe de la cuisine. S'il y a un accord, nous regardons comment le conseiller expert se comporte, s'il n'y a pas d'accord, nous attendons. Toutes les transactions sont externes, le conseiller expert dans l'Autotester n'est pas en mesure de négocier en principe.