Unity: O Indicador Multi-moeda para MetaTrader 5

Mike 2019.07.18 01:38 14 0 0
Anexo

O Unity é um indicador multi-moeda que mostra alterações sincrônicas no valor de metais e das principais moedas de uma forma generalizada. Ele foi inicialmente apresentado no artigo "Uso Prático de Redes Neurais Kohonen em Trading Algorítmico. Parte II. Otimização e Previsão".

O funcionamento básico do indicador é descrito pelo seguinte algoritmo. Vamos considerar um exemplo minimalista com um par de moedas (EUR/USD) e ouro (XAU/USD).

A cada momento, o estado do mercado (ou seja, os preços atuais ou os preços de abertura das barras) é expresso pela fórmula:

EUR / USD = EURUSD

XAU / USD = XAUUSD

onde as variáveis EUR, USD e XAU representam os "valores" puros dos ativos, e EURUSD e XAUUSD são constantes (taxas de câmbio ou cotações).

Para encontrar as variáveis, complementamos o sistema com outra equação que limita a soma dos quadrados das variáveis a unidade:

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

Daí vem o nome do indicador — Unity.

A substituição simples resulta em:

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

Assim, podemos encontrar USD como:

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

e todas as outras variáveis podem ser calculadas.

Em geral:

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

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

sendo n o número de variáveis, e C(xi, x0) a cotação do i-ésimo par, incluindo as variáveis correspondentes. Vale notar que o número de variáveis é 1 a mais do que o número de instrumentos.

Como os coeficientes C envolvidos no cálculo são cotações que normalmente variam bastante, no indicador eles são multiplicados pelo tamanho dos contratos: isso proporciona valores mais ou menos comparáveis (pelo menos, da mesma ordem). Para visualizá-los na janela do indicador (apenas para informação), existe um parâmetro de entrada chamado AbsoluteValues que deve ser configurado como verdadeiro. Por padrão, está como falso, e o indicador calcula os incrementos das variáveis:

yi = xi0 / xi1 - 1,

sendo xi0 e xi1 os valores das barras atual e anterior, respectivamente.

Aqui está uma captura de tela do cluster de EURUSD, GBPUSD, USDCHF, USDJPY, AUDUSD, USDCAD, NZDUSD e XAUUSD:

Cluster multi-moeda indicador Unity, XAUUSD

Cluster multi-moeda indicador Unity, XAUUSD

As linhas dos ativos que compõem o símbolo de trabalho do gráfico atual (neste caso, XAU e USD) são mostradas em negrito, enquanto os demais aparecem mais finos.

Os principais parâmetros de entrada do indicador são:

  • Instruments — a string com os nomes dos símbolos de trabalho separados por vírgulas; todos os instrumentos devem ter uma moeda comum, seja base ou cotação;
  • BarLimit — número de barras a serem calculadas;
  • Draw — estilo de desenho;
  • PriceType — tipo de preço utilizado nos cálculos;
  • SaveToFile — (opcional) nome de um arquivo CSV para o qual o indicador exporta valores para análise em um programa externo, por exemplo, em uma rede neural; a estrutura do arquivo é a seguinte: a primeira coluna é a data, todas as subsequentes são os valores dos buffers do indicador correspondentes;
  • ShiftLastBuffer — (opcional) flag para ativar o modo em que o arquivo CSV é gerado; quando a opção é falsa, os dados da mesma barra são armazenados no arquivo em cada linha, o número de colunas é igual ao número de instrumentos mais um devido à divisão dos tickers em componentes, e mais uma coluna — a primeira — com datas, cujos nomes correspondem às moedas e metais; quando a opção é verdadeira, uma coluna adicional chamada FORECAST é criada, onde os valores da coluna do último ativo são armazenados com um deslocamento de uma barra para frente; assim, em cada linha, vemos não apenas todos os dados para a barra atual, mas também o próximo valor da última variável, que pode ser utilizado por algoritmos de previsão.

Os timeframes recomendados são D1 e superiores.

Lista
Comentário 0