Unity: L'indicatore multi-valuta per MetaTrader 5

Mike 2019.07.18 01:38 10 0 0
Allegato

Se sei un trader e stai cercando di ottimizzare le tue strategie, l'indicatore Unity potrebbe fare al caso tuo. Questo strumento multi-valuta mostra in modo sincrono le variazioni del valore dei metalli e delle principali valute in una forma generalizzata. È stato presentato per la prima volta nell'articolo "Utilizzo pratico delle Reti Neurali di Kohonen nel Trading Algoritmico. Parte II. Ottimizzazione e previsioni".

La sua logica di funzionamento può essere spiegata attraverso un semplice esempio con una coppia di valute (EUR/USD) e l'oro (XAU/USD).

In ogni momento, lo stato di mercato (cioè i prezzi correnti, o i prezzi di apertura delle barre) si esprime attraverso le seguenti formule:

EUR / USD = EURUSD

XAU / USD = XAUUSD

Dove le variabili EUR, USD e XAU rappresentano i "valori" puri degli asset, mentre EURUSD e XAUUSD sono costanti (tassi di cambio, o quotazioni).

Per trovare le variabili, aggiungiamo un'altra equazione, limitando la somma dei quadrati delle variabili a unità:

EUR*EUR + USD*USD + XAU*XAU = 1

Da qui deriva il nome dell'indicatore: Unity.

Una semplice sostituzione porta a:

EURUSD*USD*EURUSD*USD + USD*USD + XAUUSD*USD*XAUUSD*USD = 1

Da cui possiamo calcolare USD come:

USD = sqrt(1 / (1 + EURUSD*EURUSD + XAUUSD*XAUUSD))

E tutte le altre variabili possono essere calcolate di conseguenza.

In generale:

x0 = sqrt(1 / (1 + sum(C(xi, x0)**2))), i = 1..n

xi = C(xi, x0) * x0, i = 1..n

In cui n è il numero di variabili, e C(xi,x0) rappresenta la quotazione della i-esima coppia, inclusi i corrispondenti valori. Ricorda che il numero di variabili è sempre uno in più degli strumenti utilizzati.

Poiché i coefficienti C coinvolti nel calcolo sono quotazioni che di solito variano molto, nell'indicatore vengono ulteriormente moltiplicati per le dimensioni dei contratti: questo consente di ottenere valori più o meno confrontabili (almeno dello stesso ordine). Per visualizzarli nella finestra dell'indicatore (solo per informazioni), c'è un parametro di input chiamato AbsoluteValues che può essere impostato su vero. Di default è falso, e l'indicatore calcola gli incrementi delle variabili:

yi = xi0 / xi1 - 1,

Dove xi0 e xi1 sono i valori nelle barre più recenti e precedenti rispettivamente.

Ecco uno screenshot del cluster di EURUSD, GBPUSD, USDCHF, USDJPY, AUDUSD, USDCAD, NZDUSD, XAUUSD:

Cluster multi-currency indicator Unity, XAUUSD

Cluster multi-currency indicator Unity, XAUUSD

Le linee degli asset che compongono il simbolo di lavoro del grafico attuale (in questo caso, XAU e USD) sono rappresentate in modo spesso, mentre le altre sono più sottili.

I principali parametri di input dell'indicatore sono:

  • Instruments — una stringa con i nomi dei simboli di lavoro separati da virgole; è necessario che tutti gli strumenti abbiano una valuta comune - o di base o di quotazione;
  • BarLimit — numero di barre da calcolare;
  • Draw - stile di disegno;
  • PriceType - tipo di prezzo utilizzato nei calcoli;
  • SaveToFile — (opzione) nome di un file csv in cui l'indicatore esporta valori per analisi in un programma esterno, come ad esempio una rete neurale; la struttura del file è la seguente: la prima colonna è la data, tutte le successive sono i valori dei corrispondenti buffer dell'indicatore;
  • ShiftLastBuffer - (opzione) flag per attivare la modalità in cui viene formato il file csv; quando l'opzione è falsa, i dati della stessa barra vengono memorizzati nel file su ogni riga, il numero di colonne è uguale al numero di strumenti più uno per la divisione dei ticker in componenti, e un'altra colonna - la prima - con le date, i nomi delle colonne corrispondono a valute e metalli; quando l'opzione è vera, viene creata una colonna aggiuntiva chiamata FORECAST, in cui vengono salvati i valori dalla colonna con l'ultimo asset spostati di una barra in avanti; in questo modo, in ogni riga vediamo non solo tutti i dati per la barra corrente, ma anche il valore successivo della variabile finale, che può essere utilizzato dagli algoritmi di previsione.

Si consiglia di utilizzare timeframe - D1 e superiori.

Elenco
Commento 0