Erreurs, bugs, questions - page 821

 
IgorM:

C'est exactement ce que je cherche :

Quelqu'un a-t-il résolu ce problème ?

Le problème est que je voudrais porter du code vers mql5 c++, mais une fois de plus, je bute sur le problème des tableaux dynamiques dans mql5.

PS : J'aimerais lancer un sujet en espérant que nous surmonterons collectivement ce problème...

J'ai perdu l'envie de résoudre dans cette formulation même. L'intérêt sportif s'est estompé, et pour la pratique la construction sera très lente (testée), parce que je dois tout faire par le biais des pointeurs, et ils fonctionnent lentement dans mql5, parce que ce ne sont pas des pointeurs du tout, mais des poignées qui se réfèrent à la table système cachée des pointeurs réels.

Mais cela ne concerne que la "mise en œuvre universelle", pour des tableaux dont la dimension arbitraire est inconnue à l'avance. Quant aux cas particuliers de tableaux à dimension fixe (2x, 3x, 4x, 5x, etc.), la mise en œuvre à grande vitesse est possible pour eux, et avec un emballage serré des éléments. J'en ai fait un en 2D pour moi, jusqu'à présent pas besoin degrande dimension. Je ne veux pas encore en faire un gratuit pour le public. Pour le marché, peut-être que je le ferais, mais tant que les bibliothèques de classe ex5 ne sont pas mises en œuvre, la mise en œuvre ne peut être cachée. Par conséquent, vous devez soit le faire vous-même, soit passer une commande. Il y a beaucoup d'artisans capables de faire cela, et je ne suis pas le seul. Mais en principe, je pourrais le faire pour un bon prix.

 
MetaDriver: Je ne veux pas encore le faire gratuitement pour le public.
Je vois, merci, mais je veux abandonner MT5 pour quelques mois, donc je vais utiliser les .dll de C++ comme avant.
 

A mon post précédent = addendum...

On dirait que toute la mémoire est sortie après les compilations... Anciennes instances EA - non supprimées ?

Les graphiques et les journaux sont nettoyés quand ils ne sont pas nécessaires...

Le bot n'a que 480 octets de tampons et une douzaine de variables.


 
IgorM:
Je comprends, merci, mais j'aimerais abandonner MT5 pour quelques mois, donc j'utiliserai le .dll de C++ comme avant.

Qu'est-ce qui m'empêche de le faire moi-même ? Manque de compétences ? Et comment allez-vous développer votre qualification si vous n'acceptez pas de nouvelles tâches ?

Il n'y a rien de compliqué. Asseyez-vous, pensez-y, faites-le.

--

En ce qui concerne les DLL, les masques multidimensionnels ne sont pas des cas où il est utile d'utiliser des DLL. Mais si vous vous frottez à DotNET, vous pouvez l'utiliser, il dispose de bibliothèques de conteneurs géniales pour toutes sortes de cas inimaginables.

 
MetaDriver:

Qu'est-ce qui vous empêche de le faire vous-même ? Manque de compétences ? Et comment allez-vous développer vos compétences si vous n'acceptez pas de nouvelles tâches ?

Ce n'est pas si compliqué. Asseyez-vous, pensez-y, faites-le.

Rien ne m'arrête, je sais que je peux le faire, je dois essayer consciemment d'abaisser mes qualifications. )))) - J'ai été paresseux cet été, il est maintenant temps de recommencer à programmer.

Merci pour ce coup de pied opportun dans le pantalon ! :)

SZZ : Je viens de remarquer que mql5 a une nouvellesurcharge de fonctions, alors que je me souviens que Rashid a spécifiquement dit qu'iln'y a pas desurcharge de fonctions et qu'il n'y en aura jamais.

Документация по MQL5: Основы языка / Функции / Перегрузка операций
Документация по MQL5: Основы языка / Функции / Перегрузка операций
  • www.mql5.com
Основы языка / Функции / Перегрузка операций - Документация по MQL5
 
OrderSendAsync - est-il prévu, dans le testeur de stratégie, de le mettre à niveau ?
 
IgorM:

SZZ : Je viens de remarquer que mql5 a maintenantune surcharge d'opérations, alors que je me souviens que Rashid a clairement dit qu'il n'y a pas desurcharge d'opérations et qu'il n'y enaura pas...

Si la même chose arrivait au traitement des exceptions, ce serait génial !

Cela fait plus de trois mois que je n'ai pas réussi à détecter un bogue, sans origine apparente, dans l'EA - une ou deux fois par semaine, il apparaît avec un message disant "array out of range".

J'ai essayé toutes les vérifications possibles dans ce domaine - c'est inutile, et lorsque le conseiller expert est supprimé avec ce message, comment puis-je savoir pourquoi c'est arrivé !

Putain, il sait comment s'y prendre ! Pas d'exception, donnez un autre mécanisme !

Qu'il arrête l'EA pour que je puisse voir l'état des variables.

Mec, c'est assez fou, têtu comme...

 
falkov:

Depuis plus de trois mois maintenant, je n'arrive pas à attraper un bug, d'origine inconnue, dans l'EA - environ une ou deux fois par semaine, il apparaît avec un message indiquant que "le tableau est hors de portée".

Cette erreur n'indique-t-elle pas le numéro de ligne et la position où elle s'est produite ?

 
marketeer:

Cette erreur n'indique-t-elle pas le numéro de ligne et la position où elle s'est produite ?

Oui, bien sûr, mais alors quoi. J'ai mis toutes sortes de contrôles autour de cet endroit.

Je connais l'endroit, je ne comprends pas pourquoi ça arrive !

Je vérifie la taille du tableau avant cette ligne et d'autres variables pour les aberrations.

Mais le conseiller expert continue de se bloquer plusieurs fois par semaine.

C'est très probablement mon erreur, et je ne suis pas contre. Je suis contre le fait que je n'ai aucun mécanisme pour savoir où le chien est enterré.

En même temps, il existe un mécanisme d'exclusion simple et pratique. Ils ont été introduits juste pour de tels cas.

Renat m'a répondu que s'ils introduisent ce mécanisme, les programmeurs imprudents commenceront immédiatement à faire des erreurs et ils devront faire le ménage.

C'est un argument grotesque, à mon avis.

 
Merde... Plus on avance dans les bois, plus le bois de chauffage est gros. Le problème est que dans le testeur de stratégie, OrderSendAsync fonctionne comme OrderSend. En outre, ni OnTrade ni OnTradeTransaction ne réagissent aux requêtes. Sur le serveur live, OnTradeTransaction renvoie une requote.
Raison: