Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 27

 
J'ai une question : que montre iClose() dans le testeur pour la barre zéro (la barre la plus à droite sur le graphique du testeur ouvert ) de la période supérieure ? Si je ne me trompe pas, il s'avère que la barre n'est pas encore fermée mais nous voyons déjà son prix de clôture, comme si elle était déjà terminée. Je l'ai vérifié en mode "tous les tics". C'est vrai ?
 
Close[0] et iClose(Symbol(),Period(),0) - affichent toujours le dernier prix actuel (Bid).
 
FAQ:
Close[0] et iClose(Symbol(),Period(),0) - affichent toujours le dernier prix actuel (Bid).

Je comprends que si vous spécifiez "0", le testeur considérera la dernière barre de l'historique complet. Dans ce cas, je considère la barre de droite sur le graphique, mais ce n'est pas la dernière.

Je préférerais formuler la question différemment : le testeur est ouvert avec une période de M5 et utilise les commandes iClose/ iHigh/... pour simuler le travail avec une barre sur la période H1. Puis-je utiliser iHigh() pour voir comment le High d'une barre simulée sur la période H1 change lors de l'ajout de nouvelles barres M5 dans le testeur ?
Ou en utilisant iClose/ iHigh/... nous voyons toujours les valeurs d'une barre complètement formée dans le testeur de stratégie à la barre zéro ?

 
Oui, il y a un tel trou dans le testeur, du moins il y en avait un. Je pense qu'il y a eu un correctif dans l'une des nouvelles constructions, je dois vérifier.
 
Comment supprimer la ligne moyenne dans un canal de régression linéaire? Sur quelle ligne dois-je l'écrire dans l'EE ?
 
FAQ:
Oui, il y a un tel trou dans le testeur, du moins il y en avait un. Je pense qu'il y a eu un correctif dans l'une des nouvelles constructions, je dois le vérifier.

Maintenant, je l'ai vérifié dans la version 509, mais le résultat est le même.
Dans mon code d'indicateur (exécuté dans un EA vide en mode visualisation) il n'y a pas d'erreur ? -

Les commentaires à l'écran montrent qu'au moment où apparaît la 1ère barre M5 d'une nouvelle barre H1, iClose / iHigh / ... etc. savent déjà comment les choses vont se terminer pour H1, jeter un coup d'œil dans le futur - bonne idée pour un graal à vendre ;))))

int start() {

   int Bars_Per_Chart                   = WindowBarsPerChart()   + 1;
   int First_Visible_Bar                  = WindowFirstVisibleBar();
   int Last_Bar_On_Right              = First_Visible_Bar - Bars_Per_Chart + 1;

   if( Last_Bar_On_Right<0 ) {
       Last_Bar_On_Right              = 0;
       Bars_Per_Chart                    = First_Visible_Bar + 1;
   }


      int          Shift_MTF_0           = iBarShift(MTF_Currency, MTF_TimeFrame, Time[Last_Bar_On_Right] );

      double    MTF_Close_0        = iClose(   MTF_Currency, MTF_TimeFrame, Shift_MTF_0 );
      double    MTF_Open_0         = iOpen(    MTF_Currency, MTF_TimeFrame, Shift_MTF_0 );
      double    MTF_High_0          = iHigh(    MTF_Currency, MTF_TimeFrame, Shift_MTF_0 );
      double    MTF_Low__0         = iLow(     MTF_Currency, MTF_TimeFrame, Shift_MTF_0 );
      datetime MTF_Time_0          = iTime(    MTF_Currency, MTF_TimeFrame, Shift_MTF_0 );

 . . . 
 
atztek:

Je l'ai vérifié dans la version 509 maintenant, mais le résultat est le même.
Le code de mon indicateur (je l'ai fait tourner dans un EA vide en mode visualisation) ne montre pas d'erreur ? -

Les commentaires à l'écran montrent qu'au moment où apparaît la 1ère barre M5 d'une nouvelle barre H1, iClose / iHigh / ... etc. je sais déjà comment cela va se terminer pour H1, je vois l'avenir.







Vous voulez dire que vous dessinez l'indicateur sur le graphique en mode visualisation ?

Alors tout est correct. L'indicateur prend les dernières données connues

 
Vinin:


Vous voulez dire que vous dessinez l'indicateur sur le graphique en mode visualisation ?

Alors tout est correct. L'indicateur prend les dernières données connues


Oui, j'ai un shell EA et je l'utilise pour tester les performances de l'indicateur sur l'historique.
Apparemment, le problème sera résolu avec iHighest / iLowest pour M5 en tenant compte du temps d'ouverture/fermeture de H1.
 

Veuillez me dire pourquoi l'indicateur MACD n'affiche que 4 décimales au lieu de 6... et donc que 0.000190 est 0.000110 ?

J'ai essayé NormalizeDouble(MACD,6) - aucun résultat... mêmes 4 chiffres...

 
lottamer:

Veuillez me dire pourquoi l'indicateur MACD n'affiche que 4 décimales au lieu de 6... et donc que 0.000190 est 0.000110 ?

J'ai essayé NormalizeDouble(MACD,6) - aucun résultat... mêmes 4 chiffres...


Essayez d'utiliserDoubleToStr
Raison: