Discussão do artigo "Permutação das barras de preços no MQL5"

 

Novo artigo Permutação das barras de preços no MQL5 foi publicado:

Neste artigo, apresentamos um algoritmo de permutação das barras de preços e detalhamos como os testes de permutação podem ser usados para identificar casos em que o desempenho de uma estratégia é inventado com o objetivo de enganar potenciais compradores de Expert Advisors.

A permutação das barras de preços é um pouco mais complexa por estarem envolvidas várias séries. Semelhante à reorganização de dados de ticks, ao trabalhar com barras de preços, procuramos preservar a tendência geral da série de preços original. Também é importante que nunca permitamos que a abertura ou fechamento da barra ultrapasse o máximo e o mínimo. O objetivo é obter uma série de barras com exatamente a mesma distribuição de características que os dados originais.

Além da tendência, precisamos manter a dispersão das mudanças de preço à medida que a série avança da abertura para o fechamento. A dispersão das mudanças de preço entre a abertura e o fechamento deve ser a mesma nas barras permutadas, assim como nos dados originais. Além das próprias barras, precisamos garantir que a distribuição das mudanças de preço entre as barras também seja igual, o que inclui a diferença entre o fechamento de uma barra e a abertura da próxima.  



Isso é importante para não desfavorecer a estratégia que está sendo testada. As características gerais da série devem ser semelhantes. A única diferença deve residir nos valores absolutos de cada abertura, máximo, mínimo e fechamento (OHLC) entre a primeira e a última barra. O código de implementação é muito semelhante ao código usado na classe CPermuteTicks, apresentada no artigo "Testes de Permutação de Monte Carlo no MetaTrader 5". O código para a permutação das barras de preços será encapsulado na classe CPermuteRates, contida em PermuteRates.mqh.

Autor: Francis Dube

 

A velocidade mais rápida do mundo em um carro ou em qualquer veículo guiado terrestre - 1.228 km/h - foi demonstrada em um carro a jato Thrust SSC pelo inglês Andy Green em 15 de outubro de 1997 .

A pista de 21 quilômetros de comprimento foi marcada no fundo de um lago seco no Deserto de Black Rock, Nevada, EUA.

//---

Vamos ver se isso foi fabricado para enganar o público.

Faremos exatamente a mesma pista, mas colocaremos pedras sobre ela e tentaremos dirigi-la.

Assim, descobrimos que a probabilidade de obter a mesma velocidade de Andy Green tende a zero por cento. Isso indica claramente que o recorde de velocidade de ̶c̶о̶о̶в̶е̶t̶n̶и̶k̶k̶ é fictício.

:)

//---

O exemplo de uso desse método para obter cotações personalizadas não está correto.

 
Os testes de permutação também podem ser usados для определения степени переобучения após a otimização. Para testar o treinamento excessivo, precisaremos testar e comparar o desempenho em uma amostra de conjuntos de dados com permutação e sem permutação. O grau em que o desempenho sem rearranjo difere dos resultados dominados pela permutação pode ser usado para quantificar o treinamento excessivo. Quando o aprendizado excessivo predomina, a diferença entre os resultados de desempenho com permutação e sem permutação será pequena. Veremos valores de p razoavelmente grandes.
Não está claro por que um modelo com excesso de treinamento deveria ter um bom desempenho aleatório? Até onde sei, pelo contrário, se estivermos testando dados plausíveis gerados, o modelo é considerado mais robusto por generalizar em vez de memorizar (supertreinamento).