Icustom

 

Ich möchte einen EA mit diesem Indikator zu machen, aber ich kann nicht, wie die Funktion icustom schreiben?

Danke!

#Eigenschaft indicator_separate_window

#Eigenschaft indicator_buffers 3

#property indicator_color1 Schwarz

#Eigenschaft indicator_color2 Limone

#property indicator_color3 Rot

extern int period=10;

double ExtBuffer0[];

double ExtBuffer1[];

double ExtBuffer2[];

int init()

{

SetIndexStyle(0,DRAW_NONE);

SetIndexStyle(1,DRAW_HISTOGRAM);

SetIndexStyle(2,DRAW_HISTOGRAM);

IndicatorDigits(Ziffern+1);

SetIndexBuffer(0,ExtBuffer0);

SetIndexBuffer(1,ExtBuffer1);

SetIndexBuffer(2,ExtBuffer2);

IndicatorShortName("SOLAR WIND");

SetIndexLabel(1,NULL);

SetIndexLabel(2,NULL);

return(0);

}

int start()

{

//int Periode=10;

int Grenze;

int counted_bars=IndicatorCounted();

double prev,current,old;

double Value=0,Value1=0,Value2=0,Fish=0,Fish1=0,Fish2=0;

double Preis;

double MinL=0;

double MaxH=0;

if(gezählte_Balken>0) gezählte_Balken--;

limit=Bars-gezählte_bars;

for(int i=0; i<limit; i++)

{ MaxH = High;

MinL = Low[Lowest(NULL,0,MODE_LOW,period,i)];

Preis = (High+Low)/2;

Wert = 0,33*2*((Preis-MinL)/(MaxH-MinL)-0,5) + 0,67*Wert1;

Wert=MathMin(MathMax(Wert,-0,999),0,999);

ExtBuffer0=0,5*MathLog((1+Wert)/(1-Wert))+0,5*Fisch1;

Wert1=Wert;

Fisch1=ExtPuffer0;

}

bool up=true;

for(i=limit-2; i>=0; i--)

{

current=ExtBuffer0;

prev=ExtBuffer0;

if (((current0))||(current<0)) up= false;

wenn (((aktuell>0)&&(prev0)) up= true;

if(!up)

{

ExtBuffer2=aktuell;

ExtBuffer1=0.0;

}

sonst

{

ExtBuffer1=aktuell;

ExtBuffer2=0.0;

}

}

return(0);

}

 

iCustom(NULL,0, "SONNENWIND",10,1,0);

iCustom(NULL,0, "SONNENWIND",10,2,0);

Ist es das, wonach Sie gesucht haben?

 

???

Für den EA, den ich programmiere, brauche ich den Wert dieses Indikators für den Balken vor demjenigen, der gerade geschlossen hat, und den letzten geschlossenen.

Wie macht man, iCustom(NULL,0, "SOLAR WIND", 10, 1, 0);

ICUSTOM(NULL,0, "SONNENWIND", 10, 2, 0);

nicht funktioniert?

Vielen Dank und beste Grüße.

 

iCustom(Symbol(), 0, "Sollar Wind", ... , int mode(Indikatorlinienindex ), int shift)

nach dem Indikatornamen - "Sollar Wind" - füllen Sie Ihre Extern-Variablen

 

Aber

Ja, aber nach ist die Programmierung des Indikators in meiner ersten Nachricht, wo befindet sich die Variablen, um die Daten, die ich brauche haben?

Danke, wieder

 
maje:
Ja, aber nach der Programmierung des Indikators in meiner ersten Nachricht, wo befinden sich die Variablen, um die Daten zu haben, die ich brauche? Nochmals vielen Dank

nach den Codes Ihres Indikators sollte ein Parameter nach "SOLAR WIND" stehen und im Modus-Parameter können Sie 1 oder 2 verwenden, je nach Bedarf

1 = erstes Histogramm und 2= zweites Histogramm in Ihrem Indikator

 

Beispiel

Könnten Sie mir ein praktisches Beispiel geben, wie man icustom schreibt, um den letzten Wert für den oben genannten Indikator zu erhalten?

Danke

 
maje:
Könnten Sie mir ein praktisches Beispiel geben, wie man icustom schreibt, um den letzten Wert für den oben genannten Indikator zu erhalten? Vielen Dank

So erhalten Sie den letzten Wert des oben genannten Indikators für den aktuellen Balken:

double val1= iCustom(NULL,0, "SOLAR WIND",10,2,0);

Und für den vorherigen Balken verwenden Sie:

double val1= iCustom(NULL,0, "SOLAR WIND",10,2,1);

 

Hat jemand die vollständige ea für diesen Indikator noch entwickelt. Wenn ja, würden Sie die Codierung mit uns teilen? Es scheint kein kompliziertes Ea zu sein - ein einfacher Crossover von negativ zu positiv und umgekehrt.

Dave <<
 

double val1= iCustom(NULL,0, "SOLAR WIND",10,2,1);

Frage zum Juice-Indikator. Ich könnte den icustom Indikator als solchen schreiben, aber es fehlt eine weitere Variable des Indikators:

double val1=iCustom(NULL,0, "Juice "8,0,0);

Das Problem ist, dass Juice eine Periodenvariable von 8 und ein Niveau von .08 hat. Wie erfasse ich das Niveau von .08, oder doch nicht?

Dave <<<
 

Ihre neuen Versionen von Solarwind zeichnen sich auch neu! Machen Sie einen Schnappschuss des Bildschirms nach 5 Minuten und dann noch einmal 1 oder zwei Stunden später! Haben Sie eine andere Lösung für das Redraw-Problem? Ich würde dieses Problem wirklich gerne beheben, wenn möglich.

Dave <<