Discussão do artigo "Abordagem econométrica para a busca de padrões de mercado: Autocorrelação, Mapas de Calor e Gráficos de Dispersão"

 

Novo artigo Abordagem econométrica para a busca de padrões de mercado: Autocorrelação, Mapas de Calor e Gráficos de Dispersão foi publicado:

O artigo apresenta um estudo extenso das características sazonais: autocorrelação, mapas de calor e gráficos de dispersão. O objetivo do artigo é mostrar que a "memória de mercado" é de natureza sazonal, na qual ela é expressa através da correlação maximizada de incrementos de ordem arbitrária.

Vamos fazer uma verificação adicional no período M15. Suponha que nós estamos procurando a mesma correlação entre a hora atual e a mesma hora do dia anterior. Nesse caso, o atraso efetivo deve ser 4 vezes maior e ser cerca de 24*4 = 96, porque cada hora contém quatro períodos M15. Eu otimizei o Expert Advisor com as mesmas configurações e com o período M15.

No intervalo otimizado, o atraso efetivo resultante é <60, o que é estranho. Provavelmente, o otimizador encontrou outro padrão, ou o EA foi super otimizado.

 

Fig. 16. Relação da variável 'Lag' com a variável 'Order threshold' no intervalo otimizado

Quanto aos resultados do forward test, o atraso efetivo é normal e corresponde a 100, o que confirma o padrão. 

Fig. 17. Relação da variável 'Lag' com a variável 'Order threshold' no intervalo de forward

Autor: Maxim Dmitrievsky

 
Ótimo artigo. Aprendi muitas ideias e soluções úteis.
 

Maxim, muito bem, um grande respeito pelo trabalho de pesquisa!

A pergunta é a seguinte. Estou certo em pensar que:

"корреляции приращений первого часа текущего дня и первого часа предыдущих дней, которая уменьшается при увеличении дельты (расстояния в днях)"

é essencialmente uma função de autocorrelação parcial (PACF)?

[Excluído]  
Denis Kirichenko:

Maxime, muito bem, muito respeito pelo trabalho de pesquisa!

A pergunta é a seguinte. Estou certo em entender que:

é essencialmente uma função de autocorrelação parcial (PACF)?

Obrigado, sim, é exatamente isso.

 

O artigo é bom em si mesmo e como um exemplo do que os artigos de negociação devem ser.

A desvantagem, como no artigo anterior do autor, é a falta de avaliação da significância da lucratividade positiva. Uma significância baixa mostraria a necessidade de refinar a estratégia antes de negociar com ela. No caso da TS do artigo, à primeira vista, a significância pode ser estimada de forma aproximada com base no número de negociações e no índice de Sharpe.

[Excluído]  
Aleksey Nikolayev:

O artigo é bom por si só e como um exemplo do que os artigos de negociação devem ser.

A desvantagem, como no artigo anterior do autor, é a falta de avaliação da significância da lucratividade positiva. Uma significância baixa mostraria a necessidade de refinar a estratégia antes de negociar com ela. No caso da TS do artigo, à primeira vista, a significância pode ser estimada de forma aproximada com base no número de negociações e no índice de Sharpe.

Obrigado. Testes detalhados e avaliação da importância podem ser adicionados quando todo o tópico estiver esgotado. Ou seja, não acho que esse seja um algoritmo de negociação ideal, mas apenas uma verificação adicional de algumas regularidades por meio do otimizador.

O problema com a troca de modos ainda não foi resolvido, o que parece ser uma continuação lógica do tópico. Caso contrário, todas as estimativas serão feitas para um modo de mercado específico (nesse caso, para os últimos 5 anos), o que é errado.

 

Видно, что закономерность сохраняется на всем интервале 2015-2020гг. Можно считать, что наш эконометрический подход сработал на отлично.

Seria estranho se a otimização mostrasse resultados ruins na mesma área em que a "pesquisa de padrão" foi realizada, não?

[Excluído]  
Andrey Khatimlianskii:

Seria estranho se a otimização mostrasse resultados ruins na mesma área em que a "pesquisa de padrão" foi realizada, não?

Se ela mostrasse uma defasagem diferente, o estudo teria se mostrado errado. Foi apenas um teste.

 
Maxim Dmitrievsky :

Se ela apresentasse outro atraso, o estudo estaria errado. Apenas uma verificação.

oi maxim

por favor, responda minha pergunta em

https://www.mql5.com/en/forum/219788/page2#comment_15129306

Obrigado

Discussion of article "Fuzzy Logic in trading strategies"
Discussion of article "Fuzzy Logic in trading strategies"
  • 2017.11.21
  • www.mql5.com
New article Fuzzy Logic in trading strategies has been published: Author: Maxim Dmitrievsky...
 

Saudações,

Muito obrigado. O artigo foi muito perspicaz e útil.


Enfrentei um erro ao tentar praticar seu código no jupyter Notebook (muito obrigado por seu arquivo de suporte),

---------------------------------------------------------------------------AttributeError Traceback (most recent call last) <ipython-input-32-a563182e2f90> in <module> 12 13 ---> 14 seasonal_autocorrelation('EURUSD',25, 12,13) <ipython-input-32-a563182e2f90> in seasonal_autocorrelation(symbol, lag, hour1, hour2) 3 columns=['time', 'open', 'low', 'high', 'close', 'tick_volume', 'spread', 'real_volume']) 4 rates = rates. drop(['open','low', 'high','tick_volume', 'spread','real_volume'], axis=1). set_index('time')----> 5 rates = rates. drop( rates. index[~rates. index. hour. isin([ hour1, hour2])]). diff( lag). dropna() 6 7 AttributeError: O objeto 'Int64Index' não tem o atributo 'hour'


[Excluído]  
baqmisz:

Saudações,

Muito obrigado. O artigo foi muito perspicaz e útil.


Eu encontrei um erro ao tentar praticar seu código no jupyter Notebook (muito obrigado por seu arquivo de suporte),

---------------------------------------------------------------------------AttributeError Traceback (most recent call last) <ipython-input-32-a563182e2f90> in <module> 12 13 ---> 14 seasonal_autocorrelation('EURUSD',25,12,13)<ipython-input-32-a563182e2f90> in seasonal_autocorrelation(symbol, lag, hour1, hour2) 3 columns=['time', 'open', 'low', 'high', 'close', 'tick_volume', 'spread', 'real_volume']) 4 rates = rates. drop(['open','low','high','tick_volume','spread','real_volume'], axis=1). set_index('time')----> 5 rates = rates. drop( rates. index[~rates. index. hour. isin([ hour1, hour2])]). diff( lag). dropna() 6 7 AttributeError: O objeto 'Int64Index' não tem o atributo 'hour'


Olá, a MetaQuotes alterou a API python, portanto, essas funções não funcionam agora. Talvez mais tarde eu conserte isso e anexe um novo notebook

Além disso, você pode verificar a nova documentação neste site