Icustom

 

Vorrei fare un EA con questo indicatore ma non posso come scrivere la funzione icustom?

Grazie!

#proprietà indicator_separate_window

#proprietà indicatore_buffer 3

#proprietà indicatore_colore1 Nero

#proprietà indicator_color2 Lime

#proprietà indicator_color3 Rosso

extern int period=10;

doppio ExtBuffer0[]

double ExtBuffer1[]

doppio ExtBuffer2[];

int init()

{

SetIndexStyle(0,DRAW_NONE);

SetIndexStyle(1,DRAW_HISTOGRAM);

SetIndexStyle(2,DRAW_HISTOGRAM);

IndicatorDigits(Digits+1);

SetIndexBuffer(0,ExtBuffer0);

SetIndexBuffer(1,ExtBuffer1);

SetIndexBuffer(2,ExtBuffer2);

IndicatoreNomeCorto("VENTO SOLARE");

SetIndexLabel(1,NULL);

SetIndexLabel(2,NULL);

return(0);

}

int start()

{

//int periodo=10;

int limite;

int counted_bars=IndicatorCounted();

double prev,current,old;

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

doppio prezzo;

double MinL=0;

doppio MaxH=0;

if(counted_bars>0) counted_bars--;

limit=Bars-counted_bars;

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

{ MaxH = Alto;

MinL = Basso[Più basso(NULL,0,MODE_LOW,periodo,i)];

prezzo = (Alto+Basso)/2;

Valore = 0,33*2*((prezzo-MinL)/(MaxH-MinL)-0,5) + 0,67*Valore1;

Valore=MathMin(MathMax(Valore,-0.999),0.999);

ExtBuffer0=0.5*MathLog((1+Valore)/(1-Valore))+0.5*Pesce1;

Valore1=Valore;

Pesce1=ExtBuffer0;

}

bool up=true;

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

{

current=ExtBuffer0;

prev=ExtBuffer0;

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

se (((current>0)&&(prev0)) up= true;

if(!up)

{

ExtBuffer2=corrente;

ExtBuffer1=0.0;

}

else

{

ExtBuffer1=corrente;

ExtBuffer2=0.0;

}

}

return(0);

}

 

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

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

è quello che stavi cercando?

 

???

Per l'EA che programmo ho bisogno del valore di questo indicatore per la barra per prima che hanno appena chiuso e l'ultimo chiuso.

Come fare, iCustom(NULL,0, "SOLAR WIND", 10, 1, 0);

ICUSTOM(NULL,0, "VENTO SOLARE", 10, 2, 0);

non funzioni?

Grazie, i migliori saluti.

 

iCustom(Symbol(), 0, "Sollar Wind", ... , int mode(Indicator Line Index), int shift)

dopo il nome dell'indicatore - "Sollar Wind" - riempite le vostre variabili Extern

 

Ma

Sì ma secondo è la programmazione dell'indicatore nel mio primo messaggio dove si trova le variabili per avere i dati che ho bisogno?

Grazie, di nuovo

 
maje:
Si ma secondo è la programmazione dell'indicatore nel mio primo messaggio dove si trovano le variabili per avere i dati che mi servono? Grazie ancora

secondo i codici del tuo indicatore dovrebbe essere un parametro dopo "SOLAR WIND" e nel parametro Mode puoi usare 1 o 2 a seconda del tuo bisogno

1 = primo istogramma e 2= secondo istogramma nel tuo indicatore

 

esempio

Potreste indicarmi un esempio pratico su come scrivere icustom per avere l'ultimo valore dell'indicatore menzionato in alto?

Grazie

 
maje:
Potreste indicarmi un esempio pratico su come scrivere icustom per avere l'ultimo valore per l'indicatore citato in alto? Grazie

Per ottenere l'ultimo valore dell'indicatore di cui sopra per la barra corrente:

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

E per la barra precedente usare:

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

 

Qualcuno ha già sviluppato l'ea completo per questo indicatore. Se sì, potrebbe condividere il codice con noi? Non sembra un ea complicato da creare - Un semplice crossover da negativo a positivo, e viceversa.

Dave <<
 

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

Domanda sull'indicatore Juice. Potrei scrivere l'indicatore iCustom come tale, ma manca un'altra variabile dell'indicatore:

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

Il problema è che Juice ha una variabile Period di 8, e un livello di .08. Come faccio a catturare il livello di .08?

Dave <<<
 

Anche le tue nuove versioni di vento solare si ridisegnano da sole! Fate un'istantanea dello schermo su 5 minuti, e poi un'altra 1 ora o due dopo! Avete altre soluzioni al problema del redraw? Vorrei davvero risolvere questo problema se possibile.

Dave <<