Erreurs, bugs, questions - page 3038

 
Nikolai Semko:

Il ne s'agit pas de zipper les données, mais de les compresser logiquement pour former des tableaux indexés. Le temps d'accès à un élément du tableau est presque le même. Dans certains cas, même plus rapidement.

Prêt à offrir une solution MQ ?

Je ne suis pas enclin à penser que quelqu'un qui a fait quelque chose comme MT est un idiot. Ce n'est pas toujours justifié, mais c'est souvent le cas. Il y a donc probablement des antécédents à leur solution. Mais ce n'est pas certain)

 
Andrey Khatimlianskii:

Qu'est-ce que la béquille ?

Qu'un million d'utilisateurs sont protégés (et les courtiers avec eux) et que vous devez recharger le terminal 2 fois ?

Cela me semble être une solution logique. C'est beaucoup plus logique que de le rendre pratique pour vous seul).

Quelle est la défense, Andrei ?
Vous n'avez pas besoin de redémarrer quoi que ce soit.
Les données sont déjà dans les fichiers.

 
Andrey Khatimlianskii:

Prêt à offrir une solution MQ ?

Je n'ai pas tendance à considérer quelqu'un qui a fait quelque chose comme MQ comme un idiot. Ce n'est pas toujours justifié, mais c'est souvent le cas. Il y a donc probablement des antécédents à leur solution. Mais ce n'est pas certain)

Allez.
Il y a toujours une meilleure solution à une solution existante.
Ne vous transformez pas en vieux briscard.

 
Nikolai Semko:

Quelle est la défense, Andrei ?
Vous n'avez pas besoin de recharger quoi que ce soit.
Les données sont déjà dans les fichiers.

L'essentiel est que ces données ne seront pas lues par les indicateurs et les Expert Advisors, en chargeant la mémoire d'exploitation. Pour quoi faire ?

 
Nikolai Semko:

Allez.
Il y a toujours une meilleure solution que celle qui existe.
Ne te transforme pas en vieil homme pour autant.

Je suis sûr que vous pouvez.

Alors peut-être que ce n'est pas une priorité.

 
Andrey Khatimlianskii:

En effet, ces données ne seront pas lues par les indicateurs et les EAs, chargeant ainsi la RAM. C'est pour quoi faire ?

Bien, vous vous tirez une balle dans le pied - il y a déjà d'innombrables options.
Juste en mettant max_bars =Unlimited, la consommation de mémoire augmente dramatiquement.
Voici un exemple du terminal avec max_bars = 5000

Maintenant changez max_bars = Unlimited et rechargez le terminal.

Avec les mêmes fenêtres ouvertes, la consommation de mémoire a augmenté de plus de Go. Dans mon cas, 11 fois plus ! !!!
C'est un normal ))
Vous pouvez le vérifier vous-même.
max_bars = Illimité est un luxe très difficile.
Si

ma demande était acceptée, vous ne pourriez jamais utilisermax_bars = Unlimited.
Et en plus d'économiser de la mémoire dans la RAM, cela réduirait aussi considérablement ce dossier, dont j'ai maintenant environ 31 Go. Je pense que c'est environ 5 fois plus. Et ce serait 6GB au lieu de 30GB.


 
Andrey Dik:

une solution de secours consiste à conserver la base de données dans un seul dossier, et à glisser des liens vers le dossier contenant la base de données dans les dossiers des agents.

J'ai suggéré il y a longtemps d'implémenter dans MT la possibilité de choisir le chemin d'accès aux dossiers contenant les sources et les bases de données historiques.

Si plusieurs terminaux accèdent au même courtier, on peut obtenir une erreur d'accès en utilisant les liens, mais cela ne devrait pas (théoriquement) poser de problème aux agents.

C'est vraiment ? ! Dans l'aide de MT5, je n'ai rien trouvé au sujet de cet onglet de paramètres, quand est-il apparu ? - Je n'ai aucune idée de ce qu'il faut en faire.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading

Bugs, bugs, questions

Andrey Dik, 2021.05.30 19:58

Si vous souhaitez effectuer des transactions dans le MetaTrader, vous devez créer un dossier d'agent et y copier le lien vers le dossier contenant la base de données.

le mt suggère depuis longtemps de mettre en œuvre la possibilité de sélectionner le chemin d'accès aux dossiers contenant les sources et les bases de données historiques comme une fonctionnalité standard.

Si plusieurs terminaux accèdent au même symbole de courtier, les liens peuvent provoquer une erreur d'accès, mais cela ne devrait pas (théoriquement) poser de problème aux agents.


 
Nikolai Semko:

Bien, vous vous tirez une balle dans le pied - il y a déjà d'innombrables options.
Juste en mettant max_bars =Unlimited, la consommation de mémoire augmente dramatiquement.
Voici un exemple du terminal avec max_bars = 5000

Maintenant changez max_bars = Unlimited et rechargez le terminal.

Avec les mêmes fenêtres ouvertes, la consommation de mémoire a augmenté de plus de Go. Dans mon cas, 11 fois plus grand ! !!!
C'est un normal ))
Vous pouvez le vérifier vous-même.
max_bars = Illimité est un luxe très difficile.

Si nous parlons maintenant de consommation de mémoire,@fxsaber a eu le même problème il y a quelques mois, mais avec le chargement des ticks - après avoir libéré les tableaux contenant des ticks, le terminal ne libère pas la mémoire, mais stocke (pendant 10 secondes ?) ces ticks en tant que cache.

Il est fort probable que votre demande aura le même problème - la consommation de mémoire ne diminuera pas mais augmentera (à la pelle).

 
Anton:

Ce service est fourni par le terminal.

Oui, c'est vrai.

Merci pour la réponse !

Il serait très pratique d'avoir une déclaration/fonction MQL5 qui vérifie le calcul de tous les indicateurs et si les indicateurs sont calculés, elle sort vrai, sinon il faut le faire avec sa propre fonction, en vérifiant chaque tampon d'indicateur. Ceci est très pertinent pour un EA travaillant avec des indicateurs TF multitâches. Et, cette caractéristique du délai de calcul ne permet pas d'utiliser correctement le mode OHLC, car sur le premier et le deuxième tick, tous les indicateurs ne sont pas calculés, ce qui est critique.

 
Nikolai Semko:
Un petit conseil - vous pouvez fermer tous les graphiques sauf ceux qui sont nécessaires, la consommation sera alors à peu près la même que si votre béquille avait été mise en œuvre.
Raison: