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
Il peut y avoir de nombreuses raisons... Les plus connus sont la division par zéro, en laissant le tableau.
Merci.
Quelle est la sortie en dehors du tableau? Je m'excuse pour mon ignorance.
Je n'ai que 3 divisions :
C'est là que la division par zéro peut se produire :
Un contrôle de base est nécessaire.
C'est quand, par exemple :
A la dernière itération, il y aura une sortie en dehors du tableau.
C'est là que la division par zéro peut se produire :
Un contrôle de base est nécessaire.
C'est quand, par exemple :
A la dernière itération, il y aura une sortie en dehors du tableau.
Cool, devons-nous vérifier si la fonction fonctionne correctement ?
Il n'y a pas de problème avec un tel compteur ?
Eh bien, que se passe-t-il lorsque le solde est à zéro et que la fonction fonctionne correctement ? :)
Le type de la variable i n'est pas défini dans l'instruction for. La variable Magic n'est pas définie. Dans la ligne.
La fonction OrderSelect() est inutile. Je n'ai rien remarqué d'autre.problème avec erreur (Error CopyBuffer - numéro d'erreur : 4806) - je le supprime, je le soigne parSleep(1000) ; - je le mets sur le compte de l'indicateur qui n'a pas assez de temps pour se créer.
Le problème de l'erreur (4194304 octets non disponibles) demeure.
Il sera très probablement créé. Mais avant de copier les données, nous devons vérifier si les données que nous voulons recevoir (l'indicateur a-t-il eu le temps de calculer ?). La fonction BarsCalculated devrait vous aider.
Ensuite, vous demandez toutes les échéances par symbole. Si ces données sont prêtes - elles sont téléchargées du disque vers la mémoire, sinon - elles commencent à être construites (la mémoire est également consommée) + 100 indicateurs avec une période différente pour chaque TF, et tout cela dans la mémoire. Les données ne sont pas immédiatement déchargées de la mémoire (au cas où vous voudriez les demander à nouveau)...
Réduire le nombre de barres sur le graphique.
Le type de la variable i n'est pas défini dans l'instruction for. La variable Magic n'est pas définie. Dans la ligne
OrderSelect() est redondant. Je n'ai rien remarqué d'autre.Il y en a un à l'extérieur de l'opérateur.
Il est probable qu'il ait été créé. Avant de copier les données, vous devez vérifier si elles sont disponibles (l'indicateur a-t-il été réglé ?). La fonction BarsCalculated devrait vous aider.
Ensuite, vous demandez toutes les échéances par symbole. Si les données sont prêtes - elles sont téléchargées du disque vers la mémoire, sinon - elles commencent à être construites (la mémoire est également consommée) + 100 indicateurs avec une période différente pour chaque TF, et tout cela dans la mémoire. Les données ne sont pas immédiatement déchargées de la mémoire (au cas où vous voudriez les demander à nouveau)...
Réduire le nombre de barres sur le graphique.
Le nombre de barres ne change rien,
Le problème est caché dans les périodes, pour les variantes
ne fonctionne pas, 19-5=14 - périodes différentes,
S'ils sont réduits à 4, alors tout fonctionne, par exemple :
Bien que foru IndicatorRelease(m_handle) - soit effectivement utilisé de manière incorrecte.
Je pense que même si vous ne libérez pas les poignées avec la fonction IndicatorRelease, cela devrait fonctionner de toute façon,
Le problème réside donc dans le nombre de périodes différentes.
Ou...