Discussão do artigo "Lógica Difusa nas estratégias de negociação"

 

Novo artigo Lógica Difusa nas estratégias de negociação foi publicado:

O artigo considera um exemplo de aplicação da lógica difusa para construir um sistema de negociação simples, usando a biblioteca Fuzzy. São propostas melhorias ao sistema através da combinação da lógica difusa, algoritmos genéticos e redes neurais.

As funções de associação resultantes na saída, após a otimização (as entradas permanecem inalteradas uma vez que não foram otimizadas):

Antes das mudanças:

Depois:

Autor: Maxim Dmitrievsky

 

Estou esperando por esse artigo há muito tempo, mas, de alguma forma, ele não foi totalmente divulgado.

Como o sistema se comporta no futuro após a otimização do histórico? Há alguma chance de obter lucro?

 
O artigo é muito interessante e, além disso, confirma a hipótese da assimetria de mercado.
 

Comecei a ler o artigo e, no primeiro exemplo, encontrei muitos erros.

Descobri que não havia ENUM_LINE_END no Curve.mqh. Então, eu o escrevi. Vários erros apareceram no Canvas.mqh. Por exemplo, não há Attach.

Não estou entendendo absolutamente nada. Em outro dia, usei o Graphics.mqh, executei meus códigos e eles também não funcionaram.

As datas de todos os arquivos são de 05.09.2017 - quando fiz a atualização para o 1653. Sim e exatamente tudo funcionou no 1653.

Não estou entendendo nada e peço desculpas ao autor por este quase off-topic.


Para não ficar sem justificativa, anexei os arquivos mqh. Não entendo nada do que pode estar acontecendo.


ZЫ Eu configurei 1643 e 1653 - isso não ajuda.

Arquivos anexados:
Curve.mqh  23 kb
Canvas.mqh  83 kb
 
fxsaber:

Comecei a ler o artigo e, no primeiro exemplo, encontrei muitos erros.

Descobri que não havia ENUM_LINE_END no Curve.mqh. Então, eu o escrevi. Vários erros apareceram no Canvas.mqh. Por exemplo, não há Attach.

Não estou entendendo absolutamente nada. Em outro dia, usei o Graphics.mqh, executei meus códigos e eles também não funcionaram.

As datas de todos os arquivos são de 05.09.2017 - quando fiz a atualização para o 1653. Sim e exatamente tudo funcionou no 1653.

Não estou entendendo nada e peço desculpas ao autor por este quase off-topic.


Para não ficar sem justificativa, anexei os arquivos mqh. Não entendo nada do que pode estar acontecendo.


ZЫ Eu configurei 1643 e 1653 - isso não ajuda.

Bom dia. Você está usando uma versão antiga do arquivo Canvas.mqh.

A versão atual do arquivo está no anexo.

Arquivos anexados:
Canvas.mqh  152 kb
 
Vitaly Muzichenko:

Estou esperando por esse artigo há muito tempo, mas, de alguma forma, ele não foi totalmente divulgado.

Como o sistema se comporta no futuro, após a otimização do histórico, há alguma chance de obter lucro e ele está em torno de zero?


Olá, após a otimização, qualquer sistema se comporta de forma aleatória em uma nova amostra, se não houver pelo menos um teste de avanço. Este artigo não foi sobre isso, mas sobre o fato de que o MT5 tem essa biblioteca, que ninguém usa, e que pode ser usada de formas originais :) Você pode até mesmo criar uma rede neural alimentando as saídas de várias lógicas difusas com as entradas de outras e aplicando algum otimizador a elas para ajustar os pesos. Mas já existem redes neurais fuzzy, mas elas não estão nesta biblioteca.

P.S. mais sobre otimização - como o fuzzy reduz a probabilidade de treinamento excessivo, ele ainda deve ser melhor com novos dados, a questão é até que ponto as entradas da lógica fuzzy descrevem o mercado. Está claro que três osciladores que descrevem aproximadamente a mesma coisa se saem tão mal.

 
fxsaber:

Comecei a ler o artigo e, no primeiro exemplo, encontrei muitos erros.

Descobri que não havia ENUM_LINE_END no Curve.mqh. Então, eu o escrevi. Vários erros apareceram no Canvas.mqh. Por exemplo, não há Attach.

Não estou entendendo absolutamente nada. Em outro dia, usei o Graphics.mqh, executei meus códigos e eles também não funcionaram.

As datas de todos os arquivos são de 05.09.2017 - quando fiz a atualização para o 1653. Sim e exatamente tudo funcionou no 1653.

Não estou entendendo nada e peço desculpas ao autor por este quase off-topic.


Para não ficar sem justificativa, anexei os arquivos mqh. Não entendo nada do que pode estar acontecendo.


ZЫ Eu configurei 1643 e 1653 - isso não ajuda.


Também não entendo nada, tente a versão que lhe foi fornecida, não alterei nada nessa biblioteca, se isso não ajudar, posso lhe enviar a minha.

 
Roman Konopelko:

Boa tarde. Você está usando uma versão antiga do arquivo Canvas.mqh.

A versão atual do arquivo está no anexo.

Boa tarde, obrigado, estou usando. Só não entendo de onde poderia ter vindo a versão antiga e por que toda reinstalação do terminal alterava a data, mas não o conteúdo? Deve ser um bug.

Maxim Dmitrievsky:

Também não entendo nada, tente a versão que lhe foi fornecida, não alterei nada nessa biblioteca, se isso não ajudar, posso lhe enviar a minha.

Obrigado, eu entendo. Lerei seu artigo...

 
Maxim Dmitrievsky:

Você pode até mesmo criar uma rede neural alimentando as saídas de várias lógicas fuzzy com as entradas de outras e aplicando algum otimizador a elas para ajustar os pesos.

Ou podemos pegar uma PNN pronta e alimentá-la diretamente com as classes e amostras descritas sem uma camada fuzzy. Obteremos uma estimativa das probabilidades de todas as classes/saídas e poderemos analisar as funções de base resultantes como um análogo das funções de associação.
 
Stanislav Korotky:
Ou podemos usar um PNN pronto e alimentá-lo diretamente com as classes e amostras descritas sem uma camada difusa. Obtemos uma estimativa de probabilidade de todas as classes/saídas e podemos analisar as funções de base resultantes como um análogo das funções de associação.

Infelizmente, não estou muito familiarizado com elas, pois só usei o classificador bayesiano e descobri que ele não é melhor do que outros modelos lineares, como a mesma regressão +-. É por isso que não tenho certeza se devo usar o PNN em vez do MLP ou do RDF. Provavelmente descreverei o Random Forest no próximo artigo, pois ele é rápido e a qualidade dos modelos é boa.

Fiz experimentos no Microsoft Azure Studio, onde é possível comparar rapidamente os modelos no mesmo conjunto.

Microsoft Azure Machine Learning Studio
  • studio.azureml.net
Azure Machine Learning Studio is a GUI-based integrated development environment for constructing and operationalizing Machine Learning workflow on Azure.
 

Dividir o "espaço de compras" em zonas de lógica difusa não é, por si só, uma manifestação de lógica "nítida":)