Home Indicatore tecnico Post

UltraCCI: L'Indicatore Avanzato per MetaTrader 5

Allegato
740.zip (21.1 KB, Scarica 0 volte)

Autore reale:

dm34@mail.ru

Oggi parliamo di un indicatore davvero interessante: l'UltraCCI, che si basa sul CCI (Commodity Channel Index). Questo strumento è progettato per analizzare la direzione del trend attraverso diverse linee di segnale. Vediamo insieme come funziona e quali parametri puoi settare per ottimizzarlo al meglio.

  • StartLength - valore iniziale minimo della prima linea di segnale;
  • Step - passo di variazione del periodo;
  • StepsTotal - numero totale di variazioni di periodo.

Il calcolo delle linee di segnale avviene tramite una progressione aritmetica:

SignalPeriod(Number)  =  StartLength + Number * Step

In cui il valore della variabile Number varia da zero a StepsTotal. Questi valori vengono utilizzati per generare un array di valori RSI smussati. L'indicatore calcola anche la direzione del trend corrente per ciascuna smussatura e determina il numero di trend positivi e negativi per l'intero array di valori CCI smussati. Infine, il risultato viene smussato ulteriormente e utilizzato per formare le linee dell'indicatore, creando una nuvola colorata visualizzata grazie alla classe di stile DRAW_FILLING.

La direzione del trend è rappresentata dal colore della nuvola, mentre la sua potenza è indicata dalla larghezza della nuvola stessa. Puoi anche impostare i livelli di ipercomprato (UpLevel) e ipervenduto (DnLevel), espressi in percentuale rispetto all'ampiezza massima dell'indicatore.

Inoltre, l'indicatore ti permette di visualizzare la velocità di cambiamento della potenza del trend attraverso punti colorati: se la potenza del trend aumenta, i punti avranno lo stesso colore della nuvola, altrimenti, saranno colorati in modo opposto.

Puoi scegliere tra dieci algoritmi di smussatura:

  1. SMA - media mobile semplice;
  2. EMA - media mobile esponenziale;
  3. SMMA - media mobile smussata;
  4. LWMA - media mobile ponderata lineare;
  5. JJMA - media adattativa JMA;
  6. JurX - smussatura ultralineare;
  7. ParMA - smussatura parabolica;
  8. T3 - smussatura esponenziale multipla di Tillson;
  9. VIDYA - smussatura con l'algoritmo di Tushar Chande;
  10. AMA - smussatura con l'algoritmo di Perry Kaufman.

È importante notare che i parametri di fase per i diversi algoritmi di smussatura hanno significati completamente differenti. Ad esempio, per JMA, la variabile Phase esterna varia da -100 a +100; per T3, è un rapporto di smussatura moltiplicato per 100 per una migliore visualizzazione; per VIDYA, è un periodo dell'oscillatore CMO e per AMA, è un periodo di EMA lenta. Negli altri algoritmi, questi parametri non influenzano la smussatura. Per AMA, il periodo di EMA veloce è un valore fisso e uguale a 2 per impostazione predefinita, con un rapporto di elevazione pari anch'esso a 2.

L'indicatore utilizza le classi della libreria SmoothAlgorithms.mqh (da copiare nella cartella terminal_data_folder\MQL5\Include). L'uso di queste classi è stato descritto dettagliatamente nell'articolo "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".

Parametri di input dell'indicatore:

//+----------------------------------------------+
//| Parametri di input dell'indicatore                  |
//+----------------------------------------------+
input int CCI_Period=13;                           // Periodo dell'indicatore CCI
input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Prezzo applicato
//----
input Smooth_Method W_Method=MODE_JJMA;           // Metodo di smussatura
input int StartLength=3;                          // Periodo di smussatura iniziale                    
input int WPhase=100;                             // Parametro di smussatura
//----  
input uint Step=5;                                // Passo di variazione del periodo
input uint StepsTotal=10;                         // Numero di variazioni di periodo
//----
input Smooth_Method SmoothMethod=MODE_JJMA;      // Metodo di smussatura
input int SmoothLength=3;                        // Profondità di smussatura
input int SmoothPhase=100;                       // Parametro di smussatura
//----                          
input uint UpLevel=80;                            // Livello di ipercomprato, %%
input uint DnLevel=20;                            // Livello di ipervenduto, %%
input color UpLevelsColor=DarkViolet;             // Colore del livello di ipercomprato
input color DnLevelsColor=DarkViolet;             // Colore del livello di ipervenduto
input STYLE Levelstyle=DASHDOTDOT_;              // Stile dei livelli
input WIDTH LevelsWidth=Width_1;                 // Larghezza dei livelli                       
//+----------------------------------------------+

UltraCCI

Post correlati

Commento (0)