Guarda come scaricare robot di trading gratuitamente
Ci trovi su Facebook!
Unisciti alla nostra fan page
Script interessante?
Pubblica il link!
lasciare che altri lo valutino
Ti è piaciuto lo script? Provalo nel Terminale MetaTrader 5
Visualizzazioni:
16
Valutazioni:
(48)
Pubblicato:
Freelance MQL5 Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance

Attenzione! Questo indicatore si basa su una delle versioni del codice Just ZZ (zig-zag) ed è pubblicato qui con il permesso dell'autore del PPC (sono stato direttamente coinvolto nei test e nell'individuazione degli errori nell'algoritmo). Questo codice è una versione riscritta dell'indicatore per la piattaforma MetaTrader 4.

Attenzione! La libreria "AlexSTAL_OutsideBar.mqh" deve essere collocata nella cartella del terminale ..\MQL5\Include\.

Che cos'è ZigZag?

Dal mio punto di vista, uno ZigZag è un tipo di compressione del grafico dei prezzi. Lo ZigZag può essere basato su una singola barra di prezzo (ad esempio, solo la chiusura) o su alti/bassi (il tipo di costruzione più comune).

Nel corso dello studio e del lavoro con l'indicatore ZigZag standard, sono emersi alcuni errori e carenze della soluzione tipica di MetaQuotes. Il problema principale è che lo ZigZag standard non gestisce la situazione di una barra esterna.

Nel 2007, Rosh ha pubblicato una versione dell'indicatore Zigzag2 R, che avrebbe dovuto utilizzare l'algoritmo di elaborazione della barra esterna (utilizzando lo stile di disegno DRAW_ZIGZAG invece di DRAW_SECTION, che consente di posizionare gli estremi ZigZag su una barra), ma per ragioni sconosciute anche a lui, la versione presente sul sito non contiene il codice necessario.

Per continuare la conversazione, vorrei formulare la mia definizione di correttezza nella costruzione di un tipico ZigZag:

  • Gli estremi Alto e Basso devono essere rigorosamente alternati;
  • L'estremo High deve avere il valore massimo (o uguale) tra tutte le barre situate sul lato destro fino al successivo estremo Low (opposto);
  • L'estremo basso deve avere il valore minimo (o uguale) tra tutte le barre situate a destra fino al successivo estremo alto (opposto).

Vediamo un esempio molto illustrativo (EURUSD H1 8-13 dicembre 2006), in cui si verificano contemporaneamente due situazioni con una barra esterna, che non vengono gestite correttamente dagli indicatori tipici.

Figura 1: ZigZag tipico con i parametri [12;5;3] e [12;0;0].

Figura 1: tipico ZigZag con i parametri [12;5;3] e [12;0;0].


Figura 2: Zigzag2 R con i parametri [12;5;3]

Figura 2. Zigzag2 R con i parametri [12;5;3]



Figura 3: Zigzag2 R con i parametri [12;0;0]

Figura 3. Zigzag2 R con i parametri [12;0;0]

A prima vista sembrerebbe che la Figura 3 sia corretta, ma:

  1. È con parametri abbinati e la correttezza della formazione dovrebbe essere preservata con qualsiasi parametro.
  2. La barra esterna a sinistra non viene elaborata correttamente perché l'ordine di formazione della barra Alto/Basso è importante:


e di conseguenza l'ordine dei segmenti ZigZag.

Durante la ricerca sono stati testati i seguenti ZigZag (non solo nel periodo pubblicato): ZigZag MT3, ZigZag, ZigZag R, Zigzag2 R, ZigZag_NK, ZigZag_ZUP89_nen, ZigZag_ZUP89_nen, ZigZag_new_nen4, CZigZag, Swing_ZZZ_1, DT_ZZ_nen, ZigZag_Talex, Reverse_ZZZ, Points_ZZZ_1, i_MF_Fractal_ZZZ_3in1, ang_Amp_ZZZ, ZigzagFr_v1, NonLagZigZag_v2, ZZ_FF_v3, ZigZag Ensign, ZigZag tauber, SQZZ Commodore, ZZ_2L_nen wellx, Channel ZZ, Azzx_larryzz_3_0, RPoint, RPoint-m v2, ZigZagTF. Nessuno di loro è riuscito a portare a termine il compito.


Figure di questo indicatore nell'area studiata:

Figura 4: Parametri [12;0]

Figura 4. Parametri [12;0]


Figura 5. Parametri [23;0]

Figura 5. Parametri [23;0]


Caratteristiche e peculiarità dello ZigZag pubblicato:

  • Passaggio singolo;
  • Solo l'ultimo segmento viene ricalcolato e ridisegnato (il segmento non può essere annullato, tranne che per il download della cronologia);
  • Esiste un meccanismo di ottimizzazione dei calcoli all'interno di una barra (non viene ricalcolato su un tick se il prezzo è cambiato all'interno della barra zero o se le sue variazioni non superano la soglia minima specificata nella variabile MinMotion);
  • Due algoritmi per ottenere l'ordine di formazione della barra High/Low: in base al tipo di barra (veloce, ma non affidabile) e in base ai dati di un periodo più piccolo (è necessario uno storico: controllo indipendente della sua presenza e adeguatezza o modifica della libreria OutsideBar).

La versione ProExtra non è stata pubblicata, poiché la questione della correttezza delle quotazioni in MetaTrader 5 non è stata ancora studiata.


Ulteriori esempi di funzionamento non corretto di altri ZigZag

Figura 6: EURUSD H1 29 novembre-7 dicembre 2010. Linea rossa ZigZag con parametri [7;0;0]. Linea blu Zigzag2 R con parametri [7;0;0].

Figura 6: EURUSD H1 29 novembre-7 dicembre 2010. Linea rossa ZigZag con parametri [7;0;0]. Linea blu Zigzag2 R con parametri [7;0;0].


Figura 7: EURUSD H1 29 novembre-7 dicembre 2010. Costruzione corretta

Figura 7: EURUSD H1, 29 novembre - 7 dicembre 2010. Costruzione corretta


Conclusione

Purtroppo questa versione non è priva di tutti i difetti. Ma ci sto lavorando.

E poiché questo indicatore funziona in base al principio del canale iHighest/iLowest (oltre a un tipico ZigZag), a volte si perdono dei top.

Vi prego di segnalare tutti i bug e le caratteristiche di questo indicatore.

Tradotto dal russo da MetaQuotes Ltd.
Codice originale https://www.mql5.com/ru/code/263

Auto Tp Auto Tp

Set Auto TP and SL: The “Set Auto TP and SL” (Take Profit and Stop Loss) feature is a crucial tool in any trading strategy, designed to automate risk and reward management. It allows traders to define fixed price levels where a trade should be automatically closed to either secure profits (TP) or limit losses (SL), removing the need for constant manual monitoring. When this feature is enabled, each position you open will automatically include a predefined Take Profit and Stop Loss level based on your custom parameters, such as a specific number of pips, percentage of balance, or technical levels. This not only saves time but also ensures that your trades are protected from sudden market movements and emotional decision-making.

Monthly VWAP Monthly VWAP

Monthly VWAP (Volume Weighted Average Price) is an essential MQL5 indicator that calculates and displays the Volume Weighted Average Price for each trading month. It's a powerful tool for understanding long-term market sentiment, identifying key monthly fair value, and informing strategic decisions.

Export Indicator's Values Export Indicator's Values

Questo script esporta i valori dell'indicatore in un file CSV.

Libreria di funzioni hash e conversioni in altri sistemi numerici Libreria di funzioni hash e conversioni in altri sistemi numerici

La libreria contiene algoritmi di funzioni hash di uso generale: adler32, CRC-32, MaHash8v64. Oltre a funzioni per convertire la rappresentazione da decimale a stringa nel sistema Base e viceversa.