Chiedete! - pagina 20

 

codice lsma

Doc,

Ecco il codice sorgente per l'lsma. Grazie per il tuo contributo!

//---- impostazioni dell'indicatore

#proprietà indicator_chart_window

#proprietà indicator_buffers 3

#proprietà indicator_color1 Giallo

#proprietà indicator_color2 Chartreuse

#proprietà indicatore_colore3 Rosso

//---- buffer

double ExtMapBuffer1[];

double ExtMapBuffer2[]

doppio ExtMapBuffer3[];

int larghezza;

extern int Rperiod = 34;

extern int Draw4HowLongg = 300; // 500 // 1000

int Draw4HowLong;

int shift;

int i;

int loopbegin;

double sum[];

int length;

doppio lengthvar;

doppio tmp ;

doppio wt[];

int c;

//+------------------------------------------------------------------+

//|funzione di inizializzazione dell'indicatore personalizzata |

//+------------------------------------------------------------------+

int init()

{

//---- 2 buffer aggiuntivi sono utilizzati per il conteggio.

IndicatorBuffers(5);

//---- impostazioni di disegno

SetIndexBuffer(2,ExtMapBuffer1);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexBuffer(0,ExtMapBuffer3);

SetIndexBuffer(3,somma);

SetIndexBuffer(4,wt);

SetIndexStyle(2,DRAW_LINE,STYLE_SOLID,3);

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,3);

SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3);

//---- inizializzazione fatta

return(0);

}

int start()

{ Draw4HowLong = Bars-Rperiod - 5;

lunghezza = Rperiodo;

loopbegin = Draw4HowLong - length - 1;

for(shift = loopbegin; shift >= 0; shift--)

{

sum[1] = 0;

for(i = lunghezza; i >= 1 ; i--)

{

lengthvar = length + 1;

lengthvar /= 3;

tmp = 0;

tmp = ( i - lengthvar)*Close[length-i+shift];

sum[1]+=tmp;

}

wt[shift] = somma[1]*6/(lunghezza*(lunghezza+1));

//========== CODIFICA DEI COLORI ===========================================

ExtMapBuffer3[shift] = wt[shift]; //rosso

ExtMapBuffer2[shift] = wt[shift]; //verde

ExtMapBuffer1[shift] = wt[shift]; //giallo

// for(c=loopbegin;c==shift;c++)

// {

se (wt[shift+1] > wt[shift])

{

ExtMapBuffer2[shift+1] = EMPTY_VALUE;

// ObjectCreate("smiley_face", OBJ_ARROW, 0, Time[shift], Low[shift]-Point*20);

// Print("time= ",Time[shift]);

// ObjectSet("smiley_face", OBJPROP_ARROWCODE, 242);

// ObjectSet("smiley_face", OBJPROP_COLOR , Red);

// ObjectSet("smiley_face", OBJPROP_WIDTH , 1);

// ObjectsRedraw();

//ExtMapBuffer3[shift+1] = EMPTY_VALUE;

//ExtMapBuffer3[shift+1] = EMPTY_VALUE;

}

else if (wt[shift+1] < wt[shift])

{

ExtMapBuffer1[shift+1] = EMPTY_VALUE; //-1 rosso/grigio stretto

//ExtMapBuffer3[shift+1] = EMPTY_VALUE;

}

else

{

ExtMapBuffer1[shift+1]=CLR_NONE;//EMPTY_VALUE;

ExtMapBuffer2[shift+1]=CLR_NONE;//EMPTY_VALUE;

}

}

return(0);

}

//+------------------------------------------------------------------+

 

ciao ragazzi

voglio sapere come scrivere questo codice in ea

rsi 14

impostazione deiparametri 30 e 70

comprare

-rsi incrocia sopra la linea 30 dal basso (prima l'rsi dovrebbe incrociare sotto la linea 30 dall'alto e poi incrociare solo la linea dove il segnale è valido)

vendere

-rsi incrocia sotto la linea 70 dall'alto (prima l'rsi deve incrociare sopra la linea 70 dal basso poi solo incrocia indietro la linea dove il segnale è valido)

grazie in anticipo

 

come aggiungere il tempo di trading all'EA?

es: EA non negoziare nelle 14~20h e negoziare normalmente in altri tempi!

e chiudere tutto il trading redditizio, e tenere il trading perso prima delle 14h??

grazie

(scusate il mio cattivo inglese)

 
quangmach:
come aggiungere il tempo di trading all'EA?

ex: EA non fa trading nelle 14~20h e fa trading normale in altri tempi!

e chiudere tutto il commercio redditizio, e tenere perdere il commercio prima di 14h???

grazie

(scusate il mio cattivo inglese)

Non sono sicuro, ma potrebbe essere opposto con timefilter, per esempio, dopo l'inizio aggiungere qualcosa come questo:

if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Time for trade has not come else!");

return(0);

}

}[/CODE]

And in the settings of EA add the following:

[CODE]extern bool UseHourTrade = True;

extern int FromHourTrade = 14;

extern int ToHourTrade = 20;

Ma si prega di notare che il tempo (14 e 20) è il tempo di Metatrader (dipende dal broker). Inoltre dipende dal timeframe con cui stai usando il tuo EA. Per esempio, se la barra di chiusura sarà a 15, allora sarà da 15 a 20 indipendentemente dal tuo 14 - 20. Dipende dalle barre di chiusura.

 
newdigital:
Non sono sicuro ma potrebbe essere opposto con timefilter, per esempio, dopo l'inizio aggiungere qualcosa come questo:
if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Time for trade has not come else!");

return(0);

}

}[/CODE]

And in the settings of EA add the following:

[CODE]extern bool UseHourTrade = True;

extern int FromHourTrade = 14;

extern int ToHourTrade = 20;
Ma si prega di notare che il tempo (14 e 20) è il tempo di Metatrader (dipende dal broker). Inoltre dipende dal timeframe con cui stai usando il tuo EA. Per esempio, se la barra di chiusura sarà a 15, allora sarà da 15 a 20 indipendentemente dal tuo 14 - 20. Dipende dalle barre di chiusura.

Wow, grazie mille

e che ne dici di

e chiudere tutto il trading redditizio, e tenere il trading in perdita prima delle 14h???

E' possibile?

 

Commento Colore

Ciao...

C'è un modo per cambiare il colore dei commenti dell'indicatore - quelli che vengono visualizzati in finestre separate?

Se sì, come?

grazie

 
kiwigold:
Ciao...

C'è un modo per cambiare il colore dei commenti dell'indicatore - quelli che appaiono in finestre separate?

Se sì, come?

grazie

Si può fare usando le etichette. L'etichetta può essere posizionata in qualsiasi punto della finestra selezionata, inoltre può avere qualsiasi carattere che si desidera e qualsiasi colore/dimensione ecc. Quindi puoi usare l'etichetta come un commento, posizionarla x=20 e y=20 e impostare il colore del carattere come vuoi tu.

 

conteggio delle barre dal passato al presente

Il conteggio delle barre avviene sempre da destra a sinistra (dal presente al passato) in MQL, giusto?

Come posso ottenere il conteggio delle barre dal passato al presente?

Per un semplice esempio, come potrei numerare ogni barra di un dato mese con 1 che rappresenta la prima barra del mese e le barre successive che aumentano verso l'alto?

Grazie per qualsiasi assistenza.

Bill (ancora bloccato in un loop)

 

creare nuovi oggetti usando il nome e la posizione di oggetti esistenti

Uno dei miei progetti di apprendimento consiste nel personalizzare il tester.tpl che regola l'opzione di visualizzazione dei grafici per lo Strateg Tester. Trovo lo stile grafico di default molto difficile da visualizzare. Così, ho creato un nuovo modello e poi ho costruito uno script per sostituire tutte le frecce con frecce più attraenti.

Tuttavia, mi piacerebbe anche prendere le informazioni nei nomi delle frecce e visualizzarle come testo sul grafico. I nomi delle frecce includono cose come "#62 buy" o "73 sell close". In questo modo si può guardare il grafico e vedere esattamente quando un particolare trade # è entrato/uscito. Non so perché questo non è incluso di default in Strategy Tester come lo è in altre piattaforme (per esempio TradeStation).

Comunque, vorrei prendere il testo in questione e inserire nuovi oggetti di testo appena sotto le frecce esistenti sul grafico. Ma non riesco a capire come realizzare questo.

Come posso fare?

Grazie

Bill

 
billworld2:
Il conteggio delle barre avviene sempre da destra a sinistra (dal presente al passato) in MQL, giusto?

Come posso ottenere il conteggio delle barre dal passato al presente?

Per un semplice esempio, come potrei numerare ogni barra in un dato mese con 1 che rappresenta la prima barra del mese e le barre successive che aumentano?

Grazie per qualsiasi assistenza.

Bill (ancora bloccato in un loop)

Dovresti leggere le funzioni Data e Ora, e usare la funzione iBarShift per ottenere lo spostamento della prima barra del mese specificato dal timeframe specificato.