Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 16.02.12
Biatsch Biatsch ist offline
Mitglied
 
Registriert seit: Oct 2011
Beiträge: 77
Biatsch befindet sich auf einem aufstrebenden Ast
Standard Standard_Abweichung

Hi,
ich wollte gerade einen indikator schreiben, der mir die Standard_Abweichung der letzten 10 Closes in einem separaten Fenster anzeigt.
Wenn ich den Indikator aber anwende, stürzt mein Metatrader aber ab.

Ist der Code falsch oder hab ich einfach nicht genug Rechnerleistung?
Letzteres bezweifle ich doch sehr.
Für diejenigen, die es nicht wissen; dies ist die Standard_Abweichung:



Hier mein Code:

HTML-Code:
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Blue
#property indicator_width1 2

extern int period = 10;
double Buf0[];

int init()
{
   SetIndexBuffer(0,Buf0);
   SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2);
   return(0);
}

int start()
{
   int counted_bars=IndicatorCounted();
   int i = Bars-counted_bars-1;
   
   double ma=0;       // Durchschnitt der letzten 10 Closes
   double diff=0;      // Differenz zwischen einem Close und dem Durchschnitt aus 10 Closes
   double sqrt=0;     // Wurzel
   while(i>=0)
   {
      for(int k=i; k<i+period; k++){
         ma = ma+Close[k];
      }
      ma /= period;
      
      for(int j=i; j<i+period; j++){
         diff = diff + (Close[j]-ma)*(Close[j]-ma);
      }
      sqrt = MathSqrt(diff/(period-1));
   
   Print("sqrt=", sqrt);
   Buf0[i]=sqrt;
   }
   
   return(0);
}