SOM: métodos de cozimento - página 3

 

alexeymosc!

> Fez uma análise para o par GBPUSD em barras diárias, 1989 a 2011

[...]

> Período OOS (do início de 2010 até os dias de hoje).


Isto é uma gralha ou é o período OSS que inadvertidamente se estende ao longo do período de análise?

 
Ha, boa pergunta.
 
É simples. A rede foi construída utilizando dados desde 1989 até o final de 2009. E verifiquei a estratégia resultante a partir do início de 2010. Por que você está ficando tão nervoso, eu não entendo. Repita você mesmo a análise e veja por si mesmo.
 
É melhor que digam algo a respeito, eles próprios pediram os dados e não dizem uma palavra.
 
alexeymosc:
É melhor dizer algo direto ao assunto, você pediu os dados e não disse nada.


Olá Alexey!

Penso que muitas pessoas aqui estão interessadas em seus resultados. Vou tentar explicar "do meu próprio ponto de vista", por isso, por favor, não pisem muito seus pés e chifres!

Se realizarmos a seguinte transformação: Ciclo = Fechar[]-ma(Fechar[], 25), então receberemos um sinal estacionário (média = Constante, sigma = Constante). E tentaremos construir um sistema comercial sobre este ciclo usando a SOM e o mesmo padrão de comprimento 40. Teremos um sistema bom e robusto... E em uma série de preços normais existem tendências estocásticas, que são impulsionadas pela inflação, deflação e outros fundamentos externos. E estas tendências estocásticas impedem muitos de obter sistemas estáveis. Como lidar com eles usando apenas a série de preços de um instrumento não está claro para mim. E seu resultado em uma série de preços comuns é agradavelmente surpreendente!

 

Obrigado! Sobre a conversão eu entendo. No meu caso, eu queria espremer um resultado por "preço justo". Francamente falando, fui inspirado por alguns camaradas, que negociam puramente no preço e com sucesso (havia tais mensagens neste fórum).

Eu também fiquei um pouco surpreso com o resultado, mas até agora vejo alguns pontos fracos desta estratégia, a saber: drawdown (mesmo no período de treinamento da SOM) e baixa freqüência comercial. Acontece que são cerca de 250 pips por mês. Se você executar com vários instrumentos, você recebe, digamos, 1000 pips por mês, mas 1) irregulares e 2) drawdowns ainda vão crescer.

Pensando abstratamente, considero a tarefa de obter lucro (mesmo que no papel) no mercado Forex como uma tarefa de dimensão quase infinita. E por isso tento "cutucar" em diferentes lugares deste espaço, por assim dizer. Bem - às vezes surgem soluções locais, imperfeitas, do problema.

 

alexeymosc, se não for difícil, por favor, elabore um pouco mais, o tema é bastante interessante para mim. Para começar, dê-me um roteiro com o qual os dados foram preparados, ou a metodologia de preparação de dados, e de modo geral eu gostaria de ter os resultados finais em mql, não em exel, se houver problemas com a transição para mql escrever, acho que vamos ajudar, e vou aprender a programação NS - eu mesmo não entendo, obrigado de antemão.

 

)) Tudo já está em excelente estado (coloquei 2 arquivos). Acho que sou muito amigável com isso, e acho que é assim...

Mas, até o momento!

Eu não tenho o roteiro. Mas não é difícil implementar a formação de entradas em MQL. Calculamos o máximo e o mínimo para as últimas 40 barras abrindo os preços, incluindo a última barra concluída. E então convertemos os preços abertos usando a conhecida fórmula: (Open-Min) / (Max - Min), formando assim um vetor de 40 valores com valores na faixa de [0;1].

Então eu pessoalmente preferiria treinar o ACS em um neuropackage e fazer um arquivo dll que se comunicaria com o Expert Advisor. É apenas conveniente para mim, além de que é conveniente fazer todas as análises no mesmo Excel. Você poderia se dar ao trabalho de programar o treinamento SOM em MQL, esta também é uma opção, mas eu NÃO sou um programador, não posso ajudar.... Posso preparar um modelo de Expert Advisor para o testador, juntamente com um arquivo dll do mapa auto-organizador, e podemos finalizar em conjunto o código em si e algumas das nuances.

A propósito, não é possível negociar apenas no gráfico diário. Eu tive lucro no período OOS mesmo em períodos de 15 minutos), mas os drawdowns foram grandes...

 
alexeymosc:

Calcule a partir dos preços de abertura o máximo e o mínimo das últimas 40 barras, incluindo a última barra completada. Em seguida, transformamos os preços abertos utilizando a conhecida fórmula: (Open-Min) / (Max - Min), formando assim um vetor de 40 valores com valores na faixa [0;1].

este é provavelmente o roteiro:

//+------------------------------------------------------------------+
//|                                                     SOM_data.mq4 |
//|                               https://www.mql5.com/ru/users/igorm |
//|                               https://www.mql5.com/ru/users/igorm |
//+------------------------------------------------------------------+
#property copyright "https://www.mql5.com/ru/users/igorm"
#property link      "https://www.mql5.com/ru/users/igorm"

extern int     NumBars = 40;
extern string  FileName = "som_data.csv";

int start(){
   int i,Max,Min,file_handle;
   double _open[];
   double out,max_min;
   ArrayResize(_open,NumBars);
   file_handle = FileOpen(FileName,FILE_CSV|FILE_WRITE);
   if(file_handle<1){
         Print("Файл ",FileName,"не открыт для записи, ошибка №", GetLastError());
         return(0);
    }
    for(i=1;i<=NumBars;i++) _open[i-1] = Open[i];
    Max = ArrayMaximum(_open);
    Min = ArrayMinimum(_open);
    max_min = _open[Max] - _open[Min];
    if (max_min ==0){
         Print("Деление на ноль, невозможно выполнить код");
         return(0);
    }
    for(i=1;i<=NumBars;i++){
        out = (Open[i]-_open[Min]) / max_min;
        FileWrite(file_handle,out);
    }
return(0);
}
//+------------------------------------------------------------------+

o código é um pouco longo, mas deve ser compreensível sem comentários

SZZ: Sou bom com o Excel, mas muito raramente - a nível de calculadora ))))

 

Obrigado!

O roteiro funciona, os valores estão corretos.

Estou pensando no arquivo SOM agora, vou tentar anexá-lo à EA.

Razão: