[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 196

 

SergNF:

init() est exécuté une seule fois, qu'il y ait des ticks ou non. De plus, lors de l'exécution de l'init (si la fonction est lourde), elle peut sauter des ticks. Mais l'essence de la fonction start est juste d'être exécutée quand un nouveau tick arrive.
et alors ? que voulez-vous que je dise ?) pour utiliser start dans le but prévu ? j'ai clairement indiqué ce dont j'ai besoin - attendre un tick dans init et se souvenir de son heure, j'ai expliqué pourquoi dans init. et je ne pense pas que votre conseil soit pertinent
 
eddy:
et alors ? que voulez-vous que je dise ?) pour utiliser start dans le but prévu ? j'ai clairement indiqué ce dont j'ai besoin - attendre un tick dans init et se souvenir de son heure, j'ai expliqué pourquoi dans init. et votre conseil n'est pas pertinent.

Désolé. Attendez.
 
eddy:
et alors ? que voulez-vous que je dise ?) pour utiliser start dans le but prévu ? j'ai clairement indiqué ce dont j'ai besoin - attendre un tick dans init et se souvenir de son heure, j'ai expliqué pourquoi dans init. et je ne pense pas que votre conseil soit pertinent

? ??

 
DhP: ? ??
Quoi ? Je veux traiter le premier tick dans start() et le reste dans init().
 
eddy:
et alors ? que voulez-vous que je dise ?) pour utiliser start dans le but prévu ? j'ai clairement indiqué ce dont j'ai besoin - attendre un tick dans init et se souvenir de son heure, j'ai expliqué pourquoi dans init. et votre conseil ne semble pas être pertinent
Attendre un tick dans init() ne fonctionnera pas. Il est fait en sorte que init() et deinit() ne puissent pas attendre. Tout ce qui attend dans ces fonctions est ignoré. Tout a 2,5 secondes pour tout. La documentation dit.
 
cp
 
eddy:
Je veux traiter le premier tick dans start() et le reste dans init().

Je ne pense pas que vous trouverez une réponse ici sur le forum.

Si je comprends bien, vous avez "votre propre chemin", inconnu avant...

 
eddy:
J'ai dit clairement ce dont j'avais besoin - attendre un tick dans init et mémoriser son temps, j'ai expliqué pourquoi dans init.

Ils essaient de vous expliquer qu'à l'intérieur de la fonction init(), l'arrivée de la tique n'est pas identifiée de quelque manière que ce soit, de sorte que vous pouvez attendre que la tique vienne à elle pour mourir.

Votre tâche est résolue élémentairement à l'intérieur de la fonction start(). On introduit une variable booléenne, on l'initialise avec la valeur true, au tout début de la fonction start() on met if() à partir de cette variable, et à l'intérieur on se souvient de tout ce dont on a besoin et on change la valeur de la variable en false. Cet opérateur conditionnel sera exécuté une seule fois, au premier start(), c'est-à-dire au premier tick de votre indicateur ou Expert Advisor.

eddy:
Je veux traiter le premier tick dans start() et le reste dans init().

Et ça, désolé, c'est un fantasme. Il ne peut pas y avoir de retour de start() à init() du tout.

Mais il est intéressant de savoir pourquoi j'ai besoin d'une telle perversion ?

 
eddy:
Quoi ? Je veux traiter le premier tick dans start() et le reste dans init().
Je voulais dire le premier en init
 
Yurixx:

Ils essaient de vous expliquer qu'à l'intérieur de init() l'arrivée du tick n'est pas identifiée de quelque manière que ce soit.

voir