English Русский 中文 Español Deutsch 日本語
Testador de Estratégias: Modos de Modelagem Durante o Teste

Testador de Estratégias: Modos de Modelagem Durante o Teste

MetaTrader 4Testador | 13 abril 2016, 17:25
2 676 1
MetaQuotes
MetaQuotes

Introdução

Muitos programas de análise técnica permitem testar estratégias de negociação sobre os dados do histórico. Na maioria dos casos, o teste é realizado em dados já concluídos, sem qualquer tentativa de modelar as tendências dentro de uma barra de preço, pode ser feito rapidamente, mas não suficientemente preciso.

É importante escolher uma forma relevante quanto a modelagem das barras de preços, a fim de testar de uma estratégia de negociação com qualidade. Na verdade, não existe uma situação ideal quando ao histórico completo de ticks para um teste extremamente preciso. É muito difícil a um operador normal encontrar um histórico completo de ticks durante um período de vários anos, de modo a analisá-lo.

Para resolver este problema, os dados de períodos mais precisos são usados como pontos de referência, com variações de modelagem dos preços entre eles.

Formas de Modelar Barras de Preço

Existem três formas utilizados no Terminal de Cliente MetaTrader 4 para o desenvolvimento da modelagem das barras:



  • Cada tick (o método mais preciso com base em todos os timeframes mínimos disponíveis)
  • Pontos de controle (um método muito cru, baseado no menor e mais próximo timeframe)
  • Abertura de preços (método rápido em barras concluídas, apenas para os Expert Advisors que controlam explicitamente a abertura das barras)

Barras de preços intermediárias são geradas antes do início do teste, sendo os resultados salvos em arquivo (por exemplo: /tester/history/eurusd_1440_1.fxt). Cada vez que o botão Iniciar é clicado, o Testador irá gerar um novo arquivo que contém uma sequência de testes de ticks. Os arquivos Fxt são fáceis de abrir no terminal como gráficos off-line, via Arquivo -> Abrir off-line.

A utilização de dados ocultos anteriormente permite a realização dos testes na base própria de dados intermediários. Para isso, basta salvar o arquivo no formato adequado (*.FXT, completamente aberto) para o diretório /tester/history/. Estes arquivos são fáceis de abrir no terminal como gráficos off-line via Arquivo -> Abrir off-line.



Exemplos de Modelagem

Vamos começar com o método de modelagem mais simples, baseado em gráfico de uma hora. Agora, vamos estudar a barra de uma hora (5 de setembro de 2007, 10:00) destacado em vermelho:




Preço de abertura

Alguns traders não querem depender das particularidades de modelagem interna da barra, então eles criaram a negociação Expert Advisors nas barras já concluídas. O fato de que a barra de preço atual está totalmente concluída somente pode ser conhecida quando a próxima aparece. Estes são os Expert Advisors, para o qual o modo de modelagem "Preço de Abertura" se destina.




Primeiramente neste modo, a barra é aberta (Open = High = Low = Close, Volume=1) e isso permite que o Expert Advisor identifique o fechamento do preço da barra anterior. Esta barra é incipiente, onde o teste do Expert Advisor é lançado. Na fase seguinte, a barra em andamento é totalmente concluída e produzida, mas nenhum teste é realizado sobre ela!

Pontos de Controle (o menor e mais próximo timeframe)

O método de pontos de controle de modelagem é destinado a uma estimativa crua dos Expert Advisors negociando com uma barra. Para utilizar este método, os dados históricos do menor e mais próximo timeframe deve estar disponível. Em alguns casos, os dados disponíveis a partir de um timeframe menor não cobrem completamente o intervalo de tempo do timeframe em teste. Se não existirem dados de um timeframe menor, a evolução da barra é gerada com base em modelos de onda pré-definidos, como era anteriormente na terceira versão do Terminal de Cliente MetaTrader 3.

Assim que os dados históricos do menor timeframe aparecerem, estes dados serão interpolados. No entanto, os preços OHLC existentes do menor timeframe aparecem como pontos de controle. Na maioria dos casos, os resultados dos testes dos Expert Advisors pelo método de pontos de controle são considerado apenas como resultados estimados, não como resultados finais. Tais resultados são intermediários, de natureza estimada. O gráfico abaixo mostra como a barra, no horário das 10:00 do dia 05.09.2007, foi desenvolvida pelo método de pontos de controle.




Cada Tick (timeframes mínimos disponíveis)

Este modo permite modelar o movimento dos preços dentro de uma barra da maneira mais precisa. Diferente dos "pontos de controle", o método a cada tick usa na geração de dados todos os timeframes menores disponíveis e não apenas os dados do timeframe menor e mais próximo. Se existem dados maiores do que num timeframe para certo intervalo de tempo disponível, simultaneamente os dados do período de tempo menor são usados para a geração. Como o método anterior, este método gera pontos de controle com base nos dados do OHLC, no menor timeframe disponível. Para gerar movimentos de preços entre os pontos de controle, a interpolação com base nos modelos predefinidos é usada, também para que a disponibilidade dos dados num minuto cubra todo o intervalo de teste, o que é extremamente desejável. Pode acontecer que vários ticks idênticos sejam gerados um após o outro. Neste caso, as cotações duplicadas são filtradas e o volume das últimas cotações sucessivas é corrigido.




Uma grande quantidade possível de dados tick gerados deve ser considerado. Isso pode influenciar o consumo do sistema operacional e velocidade dos testes.

Atenção: Não existe nenhuma necessidade de realizar o teste a cada tick se não há timeframes menores que cubram completamente o período de tempo em teste. Este modelo destina-se apenas para testes com base em dados de timeframes menores!

Usando o Intervalo de Datas na Modelagem

O intervalo de datas pode ser usado para testes do Expert Advisor e para a geração da seqüência de testes das barras. Muitas vezes não há necessidade de gerar dados de todo o histórico, especialmente para modelagem a Cada Tick, onde a quantidade de dados não utilizados pode ser muito grande. Assim, se na geração inicial da seqüência de testes havia uma possibilidade de usar o intervalo de dados, então as barras excedentes do intervalo não são geradas, mas apenas substituídas na sequência de saída. Os dados não são excluídos da sequência de modo que os indicadores são calculados corretamente para todo o histórico obtido. Observe que as primeiras 100 barras também não são geradas, esta limitação não depende da criação do intervalo de dados.

Referenciando o Timeframe M1

Para verificar a precisão de modelagem da barra interna, um gráfico de minutos (dia 5 de setembro de 2007, entre 22:00 e 23:00 horas) será usado.




No modo a cada tick, a seguinte sequência foi gerada:


Uma vez que o volume médio de tick para cada barra foi dentro deste intervalo e não superior a 5, a sequência será gerada com o mínimo de interpolação. Praticamente todos os preços realmente existem no OHLC.


Mesmo sem escala, uma simples sobreposição de um gráfico M1 num gráfico H1 são praticamente idênticos (fechamento de preços são mostrados como uma linha verde no gráfico H1):



Conclusões

Testes maximamente exatos podem ser realizados e a veracidade da simulação pode ser bem assegurada, verificando se existem timeframes menores auxiliares disponíveis em 100% de cobertura do timeframe em teste. Ou seja, o problema de um testes qualitativo a cada tick se transforma numa busca por dados históricos detalhados...


Traduzido do russo pela MetaQuotes Ltd.
Artigo original: https://www.mql5.com/ru/articles/1511

Últimos Comentários | Ir para discussão (1)
Pedro Jose Dos Santos Pereira
Pedro Jose Dos Santos Pereira | 15 out 2019 em 15:50
Como fazer um teste optimizado a cada tick mas rapido
Características e Limites do Testador no MetaTrader 4 Características e Limites do Testador no MetaTrader 4
Este artigo permite um maior conhecimento sobre os recursos e os limites do Testador de Estratégia no MetaTrader 4.
Características do Desenvolvimento de Indicadores Personalizados Características do Desenvolvimento de Indicadores Personalizados
O Desenvolvimento de Indicadores Personalizados no sistema de negociação MetaTrader tem uma série de características.
Como Lidar Com o Erro 146, ("Trade context busy") Como Lidar Com o Erro 146, ("Trade context busy")
O artigo trata sem conflito a negociação de vários Experts em um único Terminal Cliente МТ 4. Ele será útil para aqueles que possuem o básico dos comandos para se trabalhar com o terminal e a programação em MQL 4.
Características dos Experts Advisors Características dos Experts Advisors
O desenvolvimento de expert advisors no sistema de negociação MetaTrader tem uma série de características.