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
La capacité étonnante de répondre à la mauvaise question...
Maintenant, expliquez-moi ce qui se passe si :
1. 100 barres recalculées, entrées dans les tampons de 0 à 99 inclus (considérons la direction comme une série chronologique) la valeur 1.03
2. Soudain, l'historique a été chargé et prev_calculé est devenu 0.
A partir de quelle barre de l'indicateur la valeur sera de 1.03 ?
{
//--- инициализация элементов индикаторного буфера при первом запуске или при подкачке истории
for(int i=0;i<rates_total;i++)
ExtBuffer[i]=1.01;
return(rates_total);
}
Mieux vaut expliquer comment se débarrasser des ordures laPREMIÈRE fois que l'indicateur est mis en marche.
Pas du tout une béquille. C'est comme ça que je fais.
{
//--- инициализация элементов индикаторного буфера при первом запуске или при подкачке истории
for(int i=0;i<rates_total;i++)
ExtBuffer[i]=1.01;
return(rates_total);
}
C'est donc ce problème qu'il faut résoudre. Je n'ai pas besoin de déchets (pas vraiment, mais ils interfèrent avec l'affichage), mais j'ai besoin de sauvegarder les calculs précédents de l'indicateur. Lorsque vous démarrez l'indicateur pour la PREMIÈRE fois, le tampon se vide, et lorsque vous chargez l'historique, tout ce qui a été inséré dans les tampons devrait être sauvegardé ... et de préférence sans l'enregistrer dans un fichier ou dans GV.
ajouté :
Il s'agit d'estimer le drawdown en temps réel toutes les minutes. L'Expert Advisor travaille pendant une semaine sans s'arrêter, et au lieu de l'affichage hebdomadaire, nous ne verrons que la dernière valeur, qui est visible même sans l'indicateur.
Si un simple indicateur de première exécution / plus de première exécution est suffisant, remplacez prev_calculated par static bool b_First_Run. Et vous pouvez mettre l'initialisation du tampon dans OnInint
Non, les objectifs là-bas ne sont pas si primitifs.
C'est donc ce problème qu'il faut résoudre. Je n'ai pas besoin de déchets (je n'en ai pas besoin, mais ils interfèrent avec l'affichage), mais j'ai besoin de sauvegarder les calculs précédents de l'indicateur. Lorsque vous démarrez l'indicateur pour la PREMIÈRE fois, le tampon se vide, et lorsque vous chargez l'historique, tout ce qui a été inséré dans les tampons devrait être sauvegardé ... et de préférence sans l'enregistrer dans un fichier ou dans GV.
ajouté :
Il s'agit d'une estimation en temps réel du drawdown chaque minute. L'Expert Advisor travaille pendant une semaine sans s'arrêter, et au lieu de l'affichage hebdomadaire, nous ne verrons que la dernière valeur, qui est visible même sans indicateur...
Ce n'est pas ce que vous suggérez,Alexey Viktorov, si j'ai bien compris, vous n'avez besoin que de ceci : mettre les tampons à zéro au premier démarrage et ne rien toucher dans ces tampons pendant toutes sortes de pagination.
Revérification de ce qui se passe si les tableaux de tampons sont initialisés dans OnInit().
Même lorsque l'indicateur est retiré du graphique et réinstallé, PAS TOUTES les mémoires tampons, mais certaines, conservent les anciennes valeurs. Elles ne sont même pas exactement ce qu'elles étaient avant, mais l'une de ces valeurs s'étend sur plusieurs barres.
Oh ! Ça a plus de sens maintenant. Je vous recontacterai ce soir.
Désolé pour le retard dans la réponse. Le seul moyen d'enregistrer les valeurs calculées pour une période donnée est de les sauvegarder dans un fichier. Vous devez vous occuper de la synchronisation - de sorte que lors de la lecture du fichier, les données soient placées sur leurs barres. La solution la plus logique est la synchronisation en fonction de l'heure d'ouverture de la barre, mais il peut y avoir quelques subtilités : par exemple, l'heure d'ouverture de la barre (enregistrée dans le fichier) était 2016.09.05. 25:02, mais il y a maintenant une barre sur le graphique dont l'heure est égale à 2016.09.05. 25:01.
Ou peut-être serait-il préférable d'attirer l'attention des développeurs sur le problème de l'initialisation des tampons indicateurs ? Pourquoi ce problème n'existe-t-il pas dans MT4 ? Peut-être encore une fois pas une compréhension complète ? Le problème est que même après l'initialisation obligatoire des tampons après avoir retiré un indicateur d'un graphique dans CHACUN d'eux, tous les tampons ne contiennent pas de déchets, et nous ne pouvons pas les décharger à partir de là...
Personnellement, je n'ai rien contre les béquilles, mais seulement si ces béquilles ne sont pas trop compliquées et si elles ont un effet positif. Mais écrire dans un fichier et le lire ensuite est une béquille minable.