Bonjour

Afin de faire quelques tests, j extrais et sauvegarde differentes valeurs dans un fichier texte. Jusqu'à present cela a toujours fonctionné correctement mais aujourd hui, en faisant un nouvel indicateur (pour de nouvelles sauvegardes), j ai eu une valeur de 2147483647 pour tous mes indicateurs extraits.

Le plus surprenant est que je procede comme suit :

Donc_Bas=iCustom(NULL,0,"Donc_1",5,3,-2,0,1000,0,i);
ExtMapBuffer2[i]=Donc_Bas;
FileWrite (Sauvegarde, Time[i],Donc_Bas, Close[i], High[i], Low[i]);

ExtMapBuffer affiche la valeur exacte tandis que dans ma sauvegarde elle est remplacee par 2147483647 tandis que close,low,hig sont corrects!!!!

L un d entre vous aurait il une idéee ?

Je mets tous le code des fois que cela vienne de ma boucle mais je l utilis dans un autre indicateur et elle donne satisfaction.

Merci pour votre aide !

Code:
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 GreenYellow
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];

int Sauvegarde;
   
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexBuffer(1,ExtMapBuffer2);
//----
   Sauvegarde=FileOpen("Extraction_donchain_"+Symbol()+"_M"+Period()+".txt",FILE_CSV|FILE_WRITE,';');

   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   FileClose (Sauvegarde);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int   counted_bars=IndicatorCounted();
   int   i;
   double Donc_Haut, Donc_Bas;
   if(counted_bars>=i) i=Bars-counted_bars-1;
   

   //---- 
   while(i>=0)
     {
     Donc_Bas=iCustom(NULL,0,"Donc_1",5,3,-2,0,1000,0,i);
     Donc_Haut=iCustom(NULL,0,"Donc_1",5,3,-2,0,1000,1,i);
     ExtMapBuffer1[i]=Donc_Haut;
     ExtMapBuffer2[i]=Donc_Bas;
     FileWrite (Sauvegarde, Time[i],Donc_Haut,Donc_Bas, Close[i], High[i], Low[i]);
     i--;

      }	 
//----
   return(0);
  }
//+------------------------------------------------------------------+