Questions des débutants MQL5 MT5 MetaTrader 5 - page 1340
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
Cela fonctionne bien. Et la liste de 22 instruments. Cela prend environ 5 minutes. C'est bizarre, cependant. Il passe la plupart de son temps à écrire des handles dans le tableau. Résultats du profilage
Question : Pourquoi est-ce si long de copier 5 valeurs d'un handle vers un tableau, bien qu'elles soient copiées 132 fois pour 22 instruments de la liste, c'est-à-dire que pour 273 instruments, il me faudrait copier 1632 fois, et avec un historique de chargement pour tous les instruments du disque dur.
sur la création et la suppression de poignées,
ça marche, je suis intéressé par le bon chemin, j'espère que les développeurs me le diront.
C'est exactement ce que je fais, regardez le code ci-dessus, il y a aussi des questions))
Donc, il s'est avéré que le script
fonctionne bien. Et la liste des 22 outils prend environ 5 minutes à traiter. C'est bizarre, cependant. Il passe la plupart de son temps à écrire le handle dans le tableau. Résultat du profilage
Question : Pourquoi est-ce si long de copier 5 valeurs d'un handle vers un tableau alors que la copie est effectuée 132 fois pour 22 outils de la liste, c'est-à-dire que pour 273 outils il faudrait copier 1632 fois, de plus avec le chargement de l'historique pour tous les outils sur mon disque dur.
Si je ne me trompe pas.
Il semble fonctionner normalement, si les citations ont été téléchargées, il ne ralentit pas. Le premier démarrage est très long, apparemment il télécharge les guillemets.
Le but de ce script est de passer en revue chaque instrument de Market Watch sur des échelles de temps allant de 1min à 4H.
Si je devais faire une telle chose, je créerais un tableau et y stockerais les données passées, en mettant à jour les données actuelles. Cela permettrait d'éviter les cycles lourds et CopyBuffer. Tout s'envolerait.
Si je ne me trompe pas.
Il semble fonctionner correctement, si les devis sont téléchargés, il ne ralentit pas. Le premier démarrage prend beaucoup de temps, je suppose que ça télécharge les devis.
Merci pour vos commentaires et votre version du programme, je vais l'essayer) ! Je me demande seulement pourquoi je ne supprime pas les poignées avant de terminer le programme ou elles seront supprimées automatiquement après la fin du programme, mais la mémoire n'est pas libérée selon le gestionnaire de tâches.
Si je devais faire une telle chose, je créerais un tableau et y stockerais les données passées, en mettant à jour les données actuelles. Cela permettrait d'éviter les boucles lourdes et le CopyBuffer. Tout s'envolerait.
Merci, je vais y penser aussi)
Merci pour vos commentaires et votre version, je vais l'expérimenter) ! Je ne comprends pas seulement pourquoi vous ne supprimez pas les handles avant de terminer le programme ? Ou bien ils sont automatiquement supprimés à la fin du programme, bien que la RAM ne soit pas libérée, à en juger par le gestionnaire de tâches.
J'ai lu quelque part que les handles des indicateurs sont automatiquement supprimés après un certain intervalle de temps après la fin du script. Mais ce n'est pas exact.
Bonjour
le terminal dispose d'un outil de régression linéaire
il existe des scripts qui dessinent le même canal avec des objets graphiques
Mais seule la ligne centrale est dessinée correctement, les lignes de déviation sont dessinées à une distance incorrecte de la ligne centrale.
conseiller si quelqu'un connaît la formule correcte pour calculer l'écart, il devrait être comme dans le terminal
ou peut-être existe-t-il une solution toute faite
MERCI
Bonjour !
Pouvez-vous me dire pourquoi la fonction OrderSend sur les crypto-monnaies ne fonctionne pas lors du test avec le courtier AMarkets. Je n'ai pas trouvé d'interdiction d'échanger des crypto-monnaies par la réglementation. Ou peut-être ai-je des erreurs dans mon code ? GetLastError donne l'erreur 4756