Erreurs, bugs, questions - page 2676
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
Pouvez-vous me dire comment réduire la consommation de mémoire du terminal ? Lorsque je lance un EA, je demande quelques millions de ticks. Je fais des calculs avec eux et je n'en ai plus besoin. Je n'utilise les fonctions tick que pour charger de nouveaux ticks afin qu'il n'y ait pas de trous.
À cause de ces millions de tics, le terminal consomme 500 Mo de mémoire et ne se presse pas pour la libérer. Pour être plus exact, elle ne le libère tout simplement pas. Est-il possible de forcer Terminal à vider tous ses caches pour minimiser la consommation ? Pour un VPS, 0,5 Go par terminal est trop.
Pouvez-vous me dire comment réduire la consommation de mémoire du terminal ? Lorsque je lance un EA, je demande quelques millions de ticks. Je fais des calculs avec eux et je n'en ai plus besoin. Je n'utilise les fonctions tick que pour charger de nouveaux ticks afin qu'il n'y ait pas de trous.
À cause de ces millions de tics, le terminal consomme 500 Mo de mémoire et ne se presse pas pour la libérer. Pour être plus exact, elle ne le libère tout simplement pas. Est-il possible de forcer Terminal à vider tous ses caches pour minimiser la consommation ? Pour les VPS, 0,5 Go par terminal est trop.
ArrayFree
Si votre programme doit gérer la mémoire dans des environnements dynamiques complexes, la fonction ArrayFree() vous permet de libérer explicitement et immédiatement la mémoire occupée par un tableau dynamique qui n'est plus nécessaire.
ArrayFree
Gratuit, bien sûr. Le terminal lui-même stocke les ticks dans son cache, ce dont je n'ai pas besoin pendant le fonctionnement.
C'est mieux pour moi de soulever ces tics à nouveau quand j'ai froid. J'ai besoin d'un mécanisme pour "refroidir" le terminal.
Bonjour, j'ai rencontré un problème qui fait que CopyTicks et CopyTicksRange dans le testeur ne peuvent pas obtenir de données d'autres outils... Lorsqu'il est ajouté au tableau, tout fonctionne.
Build 2363 (et le même était sur 2361)
J'ai peut-être fait une erreur ? Aidez-nous, merci !
Bonjour, j'ai rencontré un problème qui fait que CopyTicks et CopyTicksRange dans le testeur ne peuvent pas obtenir de données d'autres outils... Lorsqu'il est ajouté au tableau, tout fonctionne.
Build 2363 (et le même était sur 2361)
J'ai peut-être fait une erreur ? Aidez-nous, merci !
CopyTicks ne lance pas de téléchargement de données dans le testeur.
Demandez d'abord les CopyRates de l'instrument souhaité. Au moins un bar. Ensuite, le pompage et la génération de la séquence de tics auront lieu.
Après cela, demande discrètement des tics
Merci pour le message.
Grâce au code que vous avez présenté, j'ai réussi à réduire la complexité d'une partie de ArrayResize à zéro, ce qui accélérera la fonction pour les tableaux d'objetsLe code ArrayResize a une protection contre un appel vide (lorsqu'il n'y a pas de changement dans le nombre d'éléments), donc le code de la fonction ne fonctionne pas.
Alors qu'un changement réel du nombre d'éléments, déclenche l'une ou l'autre partie de la fonction ArrayResize, en fonction du tableau.
Bonjour, merci beaucoup.
Je n'ai pas encore utilisé l'opérateur new, car logiquement il devrait être plus lent que ArrayResize avec la mémoire réservée.
Mais je suis impressionné par les résultats obtenus, il s'avère que c'est l'inverse, le tableau natif via l'opérateur new est plus rapide.
MT5 (build 2363) :
CopyTicks ne lance pas de téléchargement de données dans le testeur.
Demandez d'abord les CopyRates de l'instrument souhaité. Au moins un bar. Ensuite, le pompage et la génération de la séquence de tics auront lieu.
Après cela, demande discrètement des tics
Merci beaucoup, ça m'a aidé. Je ne l'ai pas trouvé dans la documentation... Ou bien j'ai mal cherché ? Ce serait bien d'en parler là-bas :)
Il serait préférable de faire des téléchargements automatiques comme sur CopyRates.
J'ai nettoyé la liste des "anciens" agents inactifs dans mon profil hier.
Un jour plus tard, je me rends dans le profil et constate que la liste des agents a été rétablie aux entrées qui avaient été supprimées.
Et la date de création et d'activité des agents a été modifiée
La libération, bien sûr. Le terminal lui-même stocke les ticks dans son cache, ce dont je n'ai pas besoin pendant le fonctionnement.
Il est préférable pour moi de relever ces tics plus tard à froid. Il faut un mécanisme pour "refroidir" le terminal.
Je ne l'ai pas remarqué.
SZY Ce qui est triste, c'est que dans la mémoire, les ticks sont stockés sans emballage avec 60 octets par tick. Il pourrait facilement être emballé 5 fois (~12 octets par tic).