Come posso ottenere i valori del prezzo di chiusura della barra superiore e inferiore di uno zigzag nel codice EA?
L'indicatore Zig-Zag è estremamente utile per determinare le tendenze dei prezzi, le aree di supporto e resistenza e i modelli classici dei grafici come il testa e spalle, i doppi fondi e i doppi vertici. L'indicatore Zig-Zag utilizza per il calcolo sia i massimi che i minimi di oscillazione:
- Swing Highs: Quando un prezzo (di solito la chiusura) è più alto del prezzo precedente e di quello successivo.
- Swing Low: Quando un prezzo è sia più basso del prezzo che lo precede sia più basso del prezzo che lo segue.
L'indicatore Zig-Zag può utilizzare sia percentuali che punti nella sua costruzione. Per costruire l'indicatore Zig-Zag, deve esserci una certa percentuale o un certo numero di punti tra uno swing high e uno swing low prima che venga tracciata una linea. Il grafico sottostante del contratto future E-mini Nasdaq 100 illustra visivamente la differenza tra un ritracciamento Zig-Zag del 3% e un ritracciamento Zig-Zag del 5%:

Si noti come nel grafico qui sopra lo Zig-Zag con una percentuale di ritracciamento del 3% crei linee più distinte rispetto allo Zig-Zag con una percentuale di ritracciamento del 5%. Lo scopo dell'utilizzo di uno Zig-Zag con una percentuale di ritracciamento maggiore è quello di contribuire a eliminare il rumore dei prezzi che non è significativo per l'analisi del trader.
L'indicatore Zig-Zag è estremamente efficace per scoprire i cicli azionari, eliminando al contempo il rumore dei prezzi a breve termine.
L'indicatore Zig-Zag è estremamente efficace nel filtrare il rumore a breve termine e nell'identificare tendenze significative e cambiamenti significativi nei prezzi di mercato.
Di seguito è riportato un grafico del contratto future E-mini S&P 500 che illustra l'efficacia dell'indicatore Zig-Zag nel trovare aree di supporto e resistenza e breakout dei prezzi:

Il grafico dell'e-mini qui sopra utilizza un valore di ritracciamento Zig-Zag del 5%; pertanto, vengono mostrate solo le variazioni di prezzo pari o superiori al 5%, aiutando un trader o un investitore di lungo termine a determinare importanti aree di supporto e resistenza e aree di rottura dei prezzi.
Sulla sinistra del grafico, lo S&P 500 stava formando un triangolo di consolidamento. Quando i prezzi hanno rotto la resistenza, si è generato un acquisto a lungo termine. Nella parte centrale del grafico, l'indicatore Zig-Zag è stato efficace nell'illustrare che lo S&P 500 si trovava in un canale di prezzi al rialzo. Acquistare nelle aree in cui i prezzi hanno toccato la trendline di supporto inferiore e vendere quando i prezzi hanno toccato la linea di resistenza superiore si sarebbe rivelato estremamente redditizio.
Anche l'utilizzo dell'indicatore Zig-Zag per operazioni a più breve termine può rivelarsi redditizio. Il grafico sottostante di Intel (INTC) mostra un classico schema di testa e spalle facilmente individuabile dall'indicatore Zig-Zag (ritracciamento di 1 dollaro):

Il pattern testa e spalle, facilmente identificabile, ha dato un segnale di vendita quando il prezzo sulla spalla destra ha rotto la trendline inclinata verso l'alto.
L'indicatore Zig-Zag è un eccellente strumento di analisi tecnica per l'identificazione di modelli grafici classici. L'indicatore Zig-Zag è anche efficace per ridurre il rumore e aiutare il trader tecnico a vedere la vera direzione del mercato.
in questo codice, specifico per il blocco sottostante, le variabili 'res' sono necessarie? in altri blocchi, capisco il suo utilizzo ma non in questo blocco.
//--- rifiuto finale for(shift=limit;shift<rates_total && !IsStopped();shift++) { res=0.0; switch(whatlookfor) { case 0: // ricerca del picco o del prato if(lastlow==0 && lasthigh==0) { if(HighMapBuffer[shift]!=0) { lasthigh=high[shift]; lasthighpos=shift; whatlookfor=Sill; ZigzagBuffer[shift]=lasthigh; res=1; } if(LowMapBuffer[shift]!=0) { lastlow=low[shift]; lastlowpos=shift; whatlookfor=Pike; ZigzagBuffer[shift]=lastlow; res=1; } } break; case Pike: // ricerca del picco if(LowMapBuffer[shift]!=0.0 && LowMapBuffer[shift]<lastlow && HighMapBuffer[shift]==0.0) { ZigzagBuffer[lastlowpos]=0.0; lastlowpos=shift; lastlow=LowMapBuffer[shift]; ZigzagBuffer[shift]=lastlow; res=1; } if(HighMapBuffer[shift]!=0.0 && LowMapBuffer[shift]==0.0) { lasthigh=HighMapBuffer[shift]; lasthighpos=shift; ZigzagBuffer[shift]=lasthigh; whatlookfor=Sill; res=1; } break; case Sill: // ricerca del prato if(HighMapBuffer[shift]!=0.0 && HighMapBuffer[shift]>lasthigh && LowMapBuffer[shift]==0.0) { ZigzagBuffer[lasthighpos]=0.0; lasthighpos=shift; lasthigh=HighMapBuffer[shift]; ZigzagBuffer[shift]=lasthigh; } if(LowMapBuffer[shift]!=0.0 && HighMapBuffer[shift]==0.0) { lastlow=LowMapBuffer[shift]; lastlowpos=shift; ZigzagBuffer[shift]=lastlow; whatlookfor=Pike; } break; default: return(rates_total); } }
è davvero necessario?
in questo codice, specifico per il blocco sottostante, sono necessarie le variabili 'res'? In altri blocchi, capisco il suo utilizzo ma non in questo blocco.
è davvero necessario?
Verificate cosa sta facendo prima del codice che state mostrando. O meglio ancora: rimuovetelo e vedete cosa succede all'indicatore zigzag.
grazie per la risposta : )
Ho fatto Print() per controllare il valore e anche dove viene utilizzato ma non sono riuscito a capire perché è necessario in questo blocco.
Ho anche rimosso l'indicatore, ma funziona bene anche senza.
Ero curioso perché è l'indicatore predefinito fornito con MT5.
Stavo solo cercando un secondo parere se ho frainteso l'esistenza dell'utilizzo in questo blocco di codice.
Come posso ottenere i valori del prezzo di chiusura della barra superiore e inferiore di uno zigzag nel codice EA?
Utilizzate iCustom() per scorrere le barre da destra a sinistra sul grafico alla ricerca di un valore non vuoto del buffer dell'indicatore. Ecco la barra che state cercando, da cui potete ricavare il prezzo di qualsiasi candela.
Aleksandr Shirin tracci una linea tra il massimo e il minimo al valore di questo parametro 12, ma allo stesso tempo tra il massimo e il minimo - il numero di candele è inferiore a 12?
Dipende anche dal numero di punti superati dal prezzo (parametro ExtDeviation).
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso
Zigzag:
L'indicatore Zigzag è una serie di sezioni che collegano massimi e minimi significativi al grafico del prezzo.
Autore: MetaQuotes