Vladimir, pourquoi faites-vous cela dans OnCalculate() ? Je veux dire les deux dernières lignes - réinitialisation des tableaux. Vous avez les deux tampons calculés sur chaque barre, c'est une action inutile.
Pourquoi avez-vous décidé que l'initialisation sera effectuée à chaque tick? La condition prev_calculated==0 est exécutée une ou deux fois au début de l'indicateur. Pendant l'opération, prev_calculated==0 peut le devenir si l'historique est modifié - mais c'est rarement ou jamais le cas et le changement d'historique nécessite un nouveau calcul de l'indicateur.
Karputov Vladimir: Pourquoi avez-vous décidé que l'initialisation aura lieu à chaque tick ? La condition prev_calculated==0 est exécutée une ou deux fois lors du démarrage de l'indicateur. Pendant l'opération prev_calculated==0 peut devenir si l'historique est modifié - mais c'est rarement ou même jamais et le changement d'historique nécessite un recalcul de l'indicateur.
Peut-on se passer de la mise à zéro des tampons lors du chargement de l'historique ?
Karputov Vladimir: Qu'est-ce qui vous fait penser que l'initialisation aura lieu à chaque tick ?
Où ai-je écrit ça ? Je demandais pourquoi réinitialiser les tampons dans OnCalculate() si les deux tampons sont ensuite calculés sur toutes les barres.
Sergei Vladimirov: Où ai-je écrit ça ? Je demandais pourquoi réinitialiser les tampons dans OnCalculate() si les deux tampons sont ensuite calculés sur toutes les barres.
Déclaration incorrecte. Lorsque prev_calculated==0, je contourne ensuite toutes les barres, mais cela ne garantit pas le remplacement de toutes les valeurs dans les tampons des indicateurs. Par conséquent, lorsque prev_calculé==0, vous devez vider les tampons des indicateurs.
Karputov Vladimir: Déclaration incorrecte. Lorsque prev_calculated==0, jecontourne ensuitetoutes les barres, maiscela ne garantit pas le remplacement de toutes les valeurs dans lestampons des indicateurs. Par conséquent, à prev_calculated==0, je dois vider les tampons d'indicateurs.
Oui ? Pouvez-vous me donner un exemple de cas où, dans votre code, la valeur d'un tampon ne sera pas remplie ? Sauf peut-être le tout premier bar de l'histoire.
C'est tout ? Il n'y aura pas de problème ?
Vladimir, pourquoi faites-vous cela dans OnCalculate() ? Je veux dire les deux dernières lignes - réinitialisation des tableaux. Vous avez les deux tampons calculés sur chaque barre, c'est une action inutile.
Ce n'est pas le code qui est défectueux. :) Prenez-le et utilisez-le.
Merci : ))))))))))))))))))))))))))))))))))))))))))))))))))
Qui est le prochain ?
Pourquoi avez-vous décidé que l'initialisation aura lieu à chaque tick ? La condition prev_calculated==0 est exécutée une ou deux fois lors du démarrage de l'indicateur. Pendant l'opération prev_calculated==0 peut devenir si l'historique est modifié - mais c'est rarement ou même jamais et le changement d'historique nécessite un recalcul de l'indicateur.
Qu'est-ce qui vous fait penser que l'initialisation aura lieu à chaque tick ?
Où ai-je écrit ça ? Je demandais pourquoi réinitialiser les tampons dans OnCalculate() si les deux tampons sont ensuite calculés sur toutes les barres.
Merci : ))))))))))))))))))))))))))))))))))))))))))))))))))
Qui est le prochain ?
Pourquoi mentir ?
Déclaration incorrecte. Lorsque prev_calculated==0, jecontourne ensuitetoutes les barres, maiscela ne garantit pas le remplacement de toutes les valeurs dans lestampons des indicateurs. Par conséquent, à prev_calculated==0, je dois vider les tampons d'indicateurs.
Oui ? Pouvez-vous me donner un exemple de cas où, dans votre code, la valeur d'un tampon ne sera pas remplie ? Sauf peut-être le tout premier bar de l'histoire.
Pourquoi mentir ?
Génie.
Avez-vous essayé de passer à une paire sans historique, puis à une autre TF ?
Ce n'était pas une déclaration, c'était une question.
Oui ? Peut-être pouvez-vous nous donner un exemple, quand dans votre code une valeur d'un tampon ne sera pas remplie ?
Vous savez, faisons ceci : prenez le code 1.43 de ce post et commentez les lignes :
et regardez le résultat lorsque vous faites défiler le graphique vers l'arrière de l'historique et que l'historique est chargé.