Cci_ea - pagina 4

 

Grazie per i vostri sforzi ragazzi, ma dopo il backtesting dei vostri EA, sembra che non abbiamo ancora trovato quello che stiamo cercando. Anche nella versione che apre trade sulla barra chiusa (che per me è il modo migliore per eliminare i momenti in cui il CCI tocca molto spesso la linea 0 su una candela) vedo che sulla barra successiva all'incrocio abbiamo diversi trade su una candela. Alcuni di loro sono redditizi, gli altri no. Non sarebbe meglio se aprissimo il trade solo una volta dopo l'incrocio e aspettassimo il prossimo incrocio?

 

Cci Ea

Bruno: Lavoro con il CCI da un po' di tempo ormai. Uno dei modi migliori per catturare pips con il CCI, è quello di utilizzare 2 diversi periodi CCI, come un periodo 6 & 25 per esempio.

Se date un'occhiata al mio screenshot, vedrete come il 6 passa prima attraverso la linea -100, poi la maggior parte delle volte il 25 passa attraverso la linea +/- 100 nello stesso momento in cui il 6 passa attraverso la linea zero. Spero che questo abbia senso. Ecco le condizioni semplici per 2 periodi CCI:

1) Sia il 6 che il 25 devono scendere attraverso il -100 e risalire per un acquisto, oppure il 6 (blu) e il 25 (giallo) devono passare attraverso la linea +100 e risalire per una vendita.

2) Il 6(blu) deve passare prima attraverso la linea -100/+100.

3) Poi il 6(blu) deve passare attraverso la linea dello zero

4) L'ultima condizione è il 25 (giallo) deve passare attraverso la linea -100/+100

5) BTW, il 6 e il 25 generalmente si incrociano nello stesso momento. Ma possiamo giocare con i parametri, e forse cambiare il 25 in un periodo 27 per assicurarci che attraversi sempre la linea -100/+100 per ultima.

Quando il 25 (giallo) va all'estremo come venerdì scorso dove ha colpito +340, allora stai attento perché otterrai un grande ritracciamento da qualsiasi cosa sopra l'area +300/-300.

Questo è un buon set up, e SuperWoodies CCI ha già tutto incorporato, bisogna solo programmarlo in un EA.

File:
eurusd15min.bmp  2130 kb
 
codersguru:
Penso che l'errore sia nell'indicatore CCI stesso!

In allegato trovate la mia versione dell'EA che non è migliore delle altre.

L'unico vantaggio è che ho provato a raccogliere l'indicatore CCI da solo.

Sono d'accordo, qualcosa di strano con il valore CCI, ho provato a monitorare il valore usando il comando Comment, ma quando il valore cambia (nuovi dati tick in arrivo) il valore non corrisponde al valore CCI nella finestra dell'indicatore.

Btw, Bruno provo a guardare di nuovo l'EA nel pomeriggio, dato che ora sono in ufficio e non ho MT qui perché ho bisogno di essere online per testare l'EA.

 

Ciao,

Grazie per i vostri sforzi ragazzi, ma è necessario essere semplici solo con l'attraversamento effettuato del segno di riferimento 0 del CCI.

 
BrunoFX:
Ciao, Grazie per i vostri sforzi ragazzi, ma è necessario essere semplici solo con l'attraversamento effettuato del segno di riferimento 0 del CCI.

Ho appena indagato su cosa hanno fatto gli altri programmatori con questo CCI.

Alcuni di loro hanno codificato la CCI non sulla barra chiusa zero. Hanno codificato su 1 e 2 barre chiuse.

Ma la maggior parte di loro sta inserendo l'indicatore CCI all'interno dell'EA. Naturalmente si tratta di un indicatore modificato e comunque CCI. Gli EA del sistema Zigzag Trading hanno il CCI calcolato all'interno dell'EA. Quindi potrebbe essere il problema con questo CCI standard e questo indicatore dovrebbe essere adattato all'EA e dovrebbe essere calcolato all'interno dell'EA.

 

Ciao,

Sì, trovo davvero strano che dia risultati diversi calcolati manualmente dalla funzione codersguru (grazie per questo smile) ) o calcolati dalla funzione interna di mt4 stessa

newgidital, penso che quando si calcola un cross lo si possa fare solo sulla barra di chiusura (1 e 2) in quanto lo 0 in realtà fluttuerebbe in quanto il prezzo della barra corrente sta cambiando.

Ho fatto anche un EA che segue la semplice regola, dove puoi cambiare il metodo per calcolare il CCI da codersguru o la funzione interna di mt4

->

extern int Method=0; // 0 = CCI da metatrader

o

->

extern int Method=1; // 0 = CCI dalla funzione codersguru

Grazie,

S.

File:
cci-v1.mq4  8 kb
 

Ciao Sunwest,

Ci sono 2 errori

 

Mi dispiace,

Penso che sia questa linea

extern double TakeProfit = 40

Basta aggiungere un punto e virgola ->

extern double TakeProfit = 40;

Spero che sia così

S.

 
sunwest:
Scusa,

Penso che sia questa linea

extern double TakeProfit = 40

Basta aggiungere un punto e virgola ->

extern double TakeProfit = 40;

Spero che sia così

S.

Ciao,

hai anche un errore qui:

else if (Method==1)

{

CCIc= CCI(CCI,1); // CCI corrente da codersguru

CCIp= CCI(CCI,2); // CCI precedente da codersguru

Questo dovrebbe essere iCCI( string symbol, int timeframe, int period, int applied_price, int shift)

 

Ciao,

Fatto, ma c'è un altro errore: CCI-V1.mq4;80:3;'}' - parentesi sbilanciate

Motivazione: