Ajuda para a MetaTrader 5

Teste de estratégias

O testador de estratégias permite testar e otimizar estratégias de negociação (experts) antes de as usar em uma negociação real. O expert sempre executa o teste com os parâmetros iniciais no histórico de dados. Ao otimizar, a estratégia de negociação é iniciada várias vezes com diferentes conjuntos de parâmetros, permitindo que você selecione a sua combinação mais adequada.

O fato do testador de estratégias ser multimonetário permite que você teste e otimize estratégias de negociação que implementem vários instrumentos financeiros. Além disso, não há necessidade de especificar uma lista de símbolos para testar/otimizar, o testador de estratégias manipula automaticamente as informações sobre todos os símbolos, cuja utilização está incluída no expert.

O fato do testador de estratégias ser multi-fio (multithread) permite usar todos os recursos disponíveis no computador. O teste e a otimização são realizados usando agentes especiais que calculam e que são instalados como serviços no computador do usuário. Os agentes trabalham de forma independente e permitem fazer cálculos paralelos das passagens da otimização.

Ao testador de estratégias pode ser conectado um número ilimitado de agentes que trabalham remotamente. Além disso, no testador de estratégias está disponível a enorme rede de computação em nuvem MQL5 Cloud Network. Ela reúne milhares de agentes de todo o mundo e o seu poder de cômputo está disponível para qualquer usuário da plataforma.

Além de testar e otimizar os experts, o testador de estratégias permite verificar o trabalho de indicadores personalizados no modo visual. Essa função permite facilmente verificar as versões demo dos indicadores baixados a partir do Mercado.

Como realizar o teste

O trabalho do teste do expert começa com a sua solitária passagem fixando parâmetros com ajuda dos dados históricos. Ele permite que você verifique as capacidades de estratégia do robô antes de o usar no mercado real.

Assista ao vídeo: Teste gratuito de experts e indicadores antes de comprar

Assista ao vídeo: Teste gratuito de experts e indicadores antes de comprar

Assista a um vídeo curto sobre como testar um robô de negociação antes de o comprar no Mercado. Para testar, no Mercado existem versões demo especiais que você pode verificar no Testador de estratégias. Mostraremos nesse vídeo como isso é feito.

Seleção de um robô de negociação para fazer testes

Execute o comando "Testar Testar " no menu de contexto do expert desejado na janela "Navegador".

Seleção de um robô de negociação para fazer testes

Depois disso, o expert será selecionado no testador de estratégias.

Ativação dos símbolos necessários na janela "Observação do mercado" para experts multimonetários

O testador permite efetuar, no histórico, a verificação de estratégias que foram aplicadas em vários instrumentos. Esses experts são convencionalmente chamados multimonetários.

O histórico dos instrumentos utilizados é automaticamente baixado pelo testador a partir da plataforma de negociação - e não a partir do servidor de negociação! - desde a primeira vez que você acessar esse instrumento. O histórico ausente é apenas baixado a partir do servidor de negociação.

Antes do início do teste do expert multimonetário, ative os instrumentos exigidos para o teste na "Observação do mercado". No menu de contexto pressione "Símbolos Símbolos" e ative a exibição dos instrumentos necessários.

Ativação dos símbolos necessários na janela "Observação do mercado" para experts multimonetários

Seleção das configurações do teste

Antes do início do teste, selecione em qual instrumento financeiro vai ser realizado o estudo do trabalho do robô, por qual período e em que modo.

Seleção das configurações do teste

Símbolo e período

Selecione o gráfico principal para testar e otimizar. Seleção do símbolo necessário para o funcionamento dos eventos OnTick() definidos dentro do expert. Também o período e o símbolo selecionados influenciam as funções especiais no código do expert, as quais usam os parâmetros do gráfico atual (por exemplo, o Símbolo () e o Período ()) Por outras palavras, aqui é selecionado o gráfico ao qual seria conetado o expert.

Intervalo

Selecione o período de teste e otimização. Você pode selecionar um dos períodos predefinidos e indicar o seu próprio. Para isso, insira a data inicial e final nos campos correspondentes que estão à direita.

A particularidade assenta no fato de o testador baixar uma série de dados adicionais antes do período especificado (para formar um mínimo de 100 barras). Isso é necessário para um teste e uma otimização mais precisos. Por exemplo, ao testar no timeframe semanal, são adicionados mais dois anos.

Se para a formação de 100 barras adicionais não houver suficientes dados históricos (atualmente isso acontece com os timeframes semanais e mensais), por exemplo, se você selecionar a data de início do teste perto do início dos dados históricos existentes, a data de início do teste será automaticamente deslocada. Uma entrada correspondente será exibida no diário do testador de estratégias.

Período avançado

Essa opção permite que você verifique os resultados do teste para a exclusão de execuções em determinados períodos de tempo. Ao fazer um teste avançado, o período indicado no campo "Inserir data" é dividido em duas partes, em conformidade com o período avançado selecionado (metade, terço, quarto ou período personalizado, quando a data de início do teste avançado é exibida).

A primeira parte se chama período de backtest. Nele se efectua a adaptação do trabalho do expert. A segunda parte se chama período de teste avançado, nele são verificados os parâmetros selecionados do expert.

Modo de negociação

Indique o modo de negociação que será simulado pelo testador de estratégias. No momento existem dois modos de negociação: Atraso Habitual e Aleatório.

No modo habitual, todas as ordens são executadas segundo o preço solicitado, sem recotizações, etc.

O modo de atraso aleatório se destina a testar experts em condições quase reais. A partir do momento em que é enviada a ordem, e antes da sua execução, o preço pode ser alterado. Dependendo da sua especificação na ordem, o desvio pode ser executado ao preço de mercado atual (se o preço estiver dentro do desvio) ou ser recotizado.

O teste nesse modo permitirá que o desenvolvedor programe corretamente como lidar com tais situações.

A simulação do atraso é efetuada para todas as solicitações comerciais enviadas a partir da plataforma (colocação de ordens, alteração deníveis de stop, etc.)

O atraso é realizado de acordo com o seguinte princípio: é selecionado um número no intervalo de 0 a 9 de modo aleatório, esse será o número de segundos de atraso; se o número selecionado for igual a 9, será selecionado aleatoriamente outro número da mesma gama e adicionado ao primeiro.

Assim, a probabilidade de atraso no intervalo de 0 a 8 segundos é de 90%, e a probabilidade de atraso no intervalo de 9 a 18 segundos é de 10%.

Modo de geração de ticks

Selecione um dos modos de geraçao de ticks:

  • Todos os ticks – o modo de modelagem mais preciso e mais lento. Nele são modelados todos os ticks.
  • Cada tick baseado em ticks reais – o modo que mais se aproxima das condições reais. São usados ticks reais (segundo intrumentos financeiros) acumulados pela corretora. Não se realiza a modelagem. Os dados de ticks são significativamente maiores do que os dados de minutos, ao executar pela primerira vez o teste, o seu download pode levar muito tempo.
  • OHLC em M1 – nesse modo, são modelados apenas 4 preços de cada barra de minuto – preços Open, High, Low e Close.
  • Apenas preços de abertura – nesse modo, são modelados os preços OHLC, mas para testar/otimizar é usado apenas o preço de abertura.
  • Cálculos matemáticos – nesse modo, o testador não carregará dados históricos, informações de símbolos e não irá gerar ticks. Serão chamadas apenas as funções OnInit(), OnTester() e OnDeinit(). Assim, você pode utilizar o testador para vários cálculos matematicos, onde seja exigido um conjunto de parâmetros.

Pode ler uma descrição mais detalhada sobre geração de ticks em uma seção separada.

Depósito inicial e alavancagem

Indique o volume do depósito inicial para testar e otimizar o expert. A moeda depende da moeda da conta à qual estiver ligado nesse momento. Em seguida, selecione a alavancagem para teste e otimização.

  • Você deve entender que a indicação do símbolo não significa que o testador usará somente esses dados históricos. As informações sobre todos os símbolos que foram usados no expert são carregadas pelo testador automaticamente.
  • Antes de começar, a plataforma de testes/otimização carrega automaticamente todos os dados de preço disponível no símbolo do gráfico principal. Se tiver uma conexão de internet lenta, isso pode levar um longo tempo.
  • O download de todos os dados ocorre apenas uma vez, nas subseqüentes execuções apenas é carregada informação em falta.
  • Para testar/otimizar, você pode selecionar apenas aqueles símbolos que estiverem ativados nesse momento na janela "Observação do mercado".
  • Durante o teste e a otimização, os dados de preço de todos os símbolos necessários são baixados automaticamente a partir do servidor.
  • O teste se inicia e termina às 00h.00m.00s. dos dias indicados. Embora a data de início do teste/otimização seja incluída no período de teste, a data de término não. O teste termina no último tick do dia anterior. Além disso, você não pode indicar uma data de término superior à atual. Nesse caso, o teste será igualmente realizado segundo a data atual (não a incluindo).

Seleção de parâmetros de entrada

Os parâmetros de entrada permitem gerenciar o comportamento do expert, adaptando-o às diferentes condições do mercado, até mesmo a um instrumento financeiro concreto. Por exemplo, você pode explorar o trabalho do expert com diferentes distâncias de colocação de ordens stop loss e take profit, com diferentes períodos da média móvel usada para análise do mercado e tomada de decisões, etc.

Defina o valor para cada parâmetro de entrada.

Seleção dos parâmetros de entrada para teste

Execução do teste

Para começar o teste, clique em "Iniciar" na guia "Configurações". À esquerda será mostrado o seu progresso.

Onde ver os resultados do teste

Os resultados do teste dos experts são exibidos nas guias "Backtest" e "Gráfico".

Resultados do teste

Relatório de teste

Os resultados detalhados sobre cada teste são exibidos na guia "Backtest". Aqui são exibidos os resultados globais dos testes, o lucro, o número de transações de negociação e muitos indicadores estatísticos que ajudarão a avaliar a qualidade do trabalho do robô.

Além disso, aqui são apresentados os gráficos de distribuição do número e êxito das negociações por horas, dias e meses, bem como gráficos que caracterizam o grau de risco da estratégia de negociação.

As informações detalhadas sobre os indicadores são exibidas na seção "Relatório de teste".

Gráfico de teste

Na guia "Gráfico", você pode facilmente determinar visualmente o quão bem-sucedido foi o trabalho do expert no instrumento selecionado no intervalo de tempo selecionado.

Basicamente, nas guias são exibidas as alterações de curvas do saldo (linha azul) e dos fundos (linha verde). Na escala horizontal são exibidas as datas, e na vertical os valores do saldo/fundos.

Os valores do saldo são exibidos no gráfico cada vez que são alterados (fechamento de posições), o valor dos fundos é, adicionalmente, com alguma freqüência, exibido entre as alterações do saldo.

Na parte inferior da guia é exibido o histograma de carga no depósito, está é calculada como a razão entre a margem e o capital (margin/equity).

Progresso do teste no diário

O progresso, no teste, é exibido na guia "Diário". Adicionalmente, no diário são exibidas as mensagens do prórpio expert. Quando você ativa o teste visual, o seu progresso pode ser visto diretamente no gráfico.

Progresso do teste no gráfico

Após finalizar o teste, você pode abrir o gráfico que foi usado para testar o expert (símbolo e período selecionados). Para isso, clique em "Abrir gráfico Abrir o gráfico no menu de contexto da guia "Backtest". No gráfico são exibidas todas as negociações efetuadas pelo expert durante o teste. Se houver um modelo com o nome tester.tpl no diretório /profiles/templates da plataforma de negociação, ele será aplicado no gráfico aberto. Na sua ausência, será aplicado um modelo padrão (default.tpl).

Se no expert testado forem utilizados indicadores, que trabalhem no símbolo e no período de teste, eles também serão exibidos no gráfico. Nesse caso, nele não serão exibidos os indicadores para os quais está prevista a descarga forçada no código do expert (função IndicatorRelease).

Teste avançado para verificação do robô num setor não otimizado

A execução repetida do expert em um período de tempo diferente é chamada teste avançado. Essa possibilidade está prevista para a exclusão do ajuste de parâmetros dos experts em determinadas seções dos dados históricos.

Para habilitar o teste avançado, no campo "Período avançado" da guia "Configurações" indique que parte do período geral você necessita usar:

  • não – não utiliza o teste avançado;
  • 1/2 – utiliza metade do período indicado para o teste avançado;
  • 1/3 – utiliza um terço do período indicado para o teste avançado;
  • 1/4 – utiliza um quarto do período indicado para o teste avançado;
  • personalizado – ao selecionar esse campo, indique no campo à direita a data em que vai iniciar o teste avançado.

Periodo avançado

  • Para o período avançado é sempre tomada a segunda (última) parte do período geral.
  • No gráfico, a data de início do período avançado é marcada pela linha vertical.

Ao ativar o teste avançado, do período selecionado no campo "Usar data" é separada a parte selecionada. A primeira parte se chama período de backtest, a segunda é o período de teste avançado.

Os resultados do teste no período avançado são exibidos na guia "Avançada". No gráfico, a data de início do período avançado é marcada pela linha vertical.

Resultados do teste avançado

Você pode encontrar informação mais detalhada sobre os resultados dos testes na seção "Onde ver os resultados do teste".

Teste visual

O testador de estratégias na plataforma de negociação permite testar os experts e indicadores em modo visual. Isso dá a possibilidade de ver, de modo patente, como é que o expert efetua negociações ao testar segundo o histórico de dados. Cada negociação é realizada segundo o instrumento financeiro exibido em seu gráfico.

Para o teste visual selecione "Visualização" nas configurações:

Ativação do teste visual

  • O teste visual não está disponível ao ativar a otimização.
  • Você pode realizar o teste visual apenas nos agentes locais. Se para o teste tiver sido selecionado um dos agentes remotos, mude para o local usando o comando "Selecionar Selecionar" no seu menu de contexto.

Configure os parâmetros de teste e os parâmetros de entrada, e clique em "Iniciar".

O teste visual é executado em uma nova janela que simula uma plataforma de negociação separada: nela serão exibidos gráficos, observação do mercado e a janela caixa de ferramentas, onde você pode ver as transações e o diário.

Teste no modo visual

Gerenciamento do processo de teste

Para pausar, acelerar ou desacelerar o teste, use a barra de ferramentas. Aqui você pode procurar testes segundo a data que lhe interessa.

O teste pode ser também convenientemente gerenciado usando as teclas de atalho listadas ao lado dos comandos no menu.

Siga as operações do expert no gráfico

O objetivo principal desse tipo de teste é monitorizar visualmente o trabalho do expert. O gráfico é construído no modo de tempo real usando os preços gerados e as negociações do robô exibidas nele.

As negociações são exibidas no gráfico na forma de ícones Compra (operação de compra) e Venda (operação de venda). Entre operações de entrada e saída do mercado, é exibida uma linha tracejada.

  • Você pode alterar a aparência do gráfico, exibir nele indicadores ou objetos gráficos. Para isso utilize o modelo. Para que o modelo seja aplicado, o seu nome deve corresponder ao nome do expert testado, por exemplo, ExpertMACD.tpl. O próprio modelo deve estar localizado na pasta /profiles/templates da plataforma de negociação.
  • A lista de símbolos, que permitem ver o gráfico, está limitada pelo símbolo básico de teste e os símbolos cujos dados são usados pelo expert.
  • Não existe a possibilidade de alternar o período do gráfico. Para um gráfico básico de teste é utilizado o período selecionado nas configurações. Para os restantes símbolos são usados os períodos solicitados pelo expert.
  • A mudança entre símbolos é efetuada através do menu "Exibir – Gráficos".

Exibir dados de preço na "Observação do mercado"

Na janela "Observação do mercado" são exibidos os preços gerados no processo de teste. Ele é semelhante à janela com o mesmo nome da plataforma de negociação, embora tenha uma série de particularidades. Para exibir/ocultar essa janela você pode executar o comando "Observação do mercado" no menu "Exibir" ou pressione "Ctrl+M".

Observação do mercado durante o testes visual

Na guia "Símbolos" é exibida a informação de preço atual, segundo os instrumentos financeiros. A lista de símbolos exibidos é limitada pelo símbolo básico de teste e pelos que são usados pelo expert.

Na guia "Ticks" é exibido o gráfico de preços gerados durante o processo de teste. O número de ticks exibidos é limitado a 64 mil.

Exibir dados sobre barras e indicadores na janela de dados

Na janela de dados, você pode ver informação sobre preços (OHLC), data e hora da barra, spread, volume e indicadores utilizados. Aqui, você pode rapidamente obter a informação necessária sobre uma barra separada e indicadores sobrepostos no ponto selecionado do gráfico. Para ativar/desativar essa janela, clique em "Janela de dados" no menu "Exibir" ou utilize o atalho "Ctrl+D".

Janela de dados durante a visualização do teste

A parte superior da janela contém o nome do instrumento financeiro e o período do gráfico. Abaixo é exibida a informação sobre a posição atual do cursor no gráfico. A informação sobre indicadores, abertos em subjanelas, é exibida em blocos separados.

Ver os detalhes das negociações na janela "Caixa de ferramentas"

Para um estudo mais detalhado das negociações do expert utilize a janela "Caixa de ferramentas". Nela, em guias separadas, aparecem:

  • Aberturas de posições atuais e ordens pendentes emitidas
  • Histórico de ordens e negociações
  • O histórico de ordens de negociação dos experts inclui solicitações de alteração de ordens pendentes, níveis de stop das posições, etc.

A informação sobre os parâmetros de negociações está disponível nas seções Negociação e Histórico.

Ver os detalhes das operações comerciais na janela "Caixa de ferramentas"

Você pode encontrar informação adicional sobre testes no Diário. Nele estão inscritas todas as informações sobre o teste e ações do expert durante a sua duração.

Enquanto o visualizador estiver aberto, os registros do diário do agente de teste não são enviados para o testador de estratégias na plataforma de negociação. No entanto, eles podem ser visualizados através do comando "Diário dos agentes locais" no menu de contexto.

Teste de indicadores no modo visual

Você pode ver o comportamento do indicador nos dados históricos no modo de teste visual. Essa possibilidade permite facilmente verificar o indicador antes da sua compra no Mercado. Simplesmente, faça o download da versão demo gratuita do indicador e a execute no testador.

Selecione o tipo de programas "Indicador" selecione o indicador desejado e clique em "Iniciar". O modo de visualização será ativado automaticamente. Os restantes parâmetros serão dados do mesmo modo que acontece ao testar os robôs de negociação.

Teste de indicadores no modo visual

O comportamento do indicador é mostrado no gráfico que é construído numa seqüência de ticks modelada no testador.