A TROCA DE IDÉIAS - página 11

 
Vinin:
mavérico:
FION:

Victor, você já lidou com os mapas Kohonen? Ainda não encontrei nenhum "peixe" compreensível para NS multicamadas. Eu gostaria de sentir algo concreto, mesmo que não funcione bem para avaliação. Novamente - treinamento de grade, quantos parâmetros o computador pode manter? Embora entrando nestas "rubricas" ..., há o perigo de ficar preso lá. Basicamente, podemos otimizar a grade limitando os parâmetros usando o mesmo conjunto de indicadores.


Em algum lugar aqui (no fórum), eu postei um conselheiro não kohonen, mas redes estratificadas

Acho que servirá como um peixe.


Você poderia ser mais específico? Deve ter ficado pelo caminho.


Treinamento de redes neurais - todos os tipos de pensamentos gerais aqui

"Usando inteligência artificial na MTS" - aqui está um especialista ligado ao meu posto

Eu vi seu código, aprendi algo, em particular sobre a normalização dos dados indicadores, mas em geral não consegui entender a estrutura, fiquei preso em arrays.

As matrizes em matrizes são realmente complicadas :( A ausência de objetos ou pelo menos estruturas em MQL dificulta seriamente o processo neste sentido. Ou a matriz está tão embalada que não pode ser entendida sem meio litro, ou a embalagem é clara, mas o código é assustador :(

Se você não entender as arrays, por favor, pergunte-me. Vou tentar lembrar e explicar.

 
maveric:
Vinina:
mavérico:
FION:

Victor, você já lidou com os mapas Kohonen? Ainda não encontrei nenhum "peixe" compreensível para NS multicamadas. Eu gostaria de sentir algo concreto, mesmo que não funcione bem para avaliação. Novamente - treinamento de grade, quantos parâmetros o computador pode manter? Embora entrando nestas "rubricas" ..., há o perigo de ficar preso lá. Basicamente, podemos otimizar a grade limitando os parâmetros usando o mesmo conjunto de indicadores.


Em algum lugar aqui (no fórum) eu postei uma dica Não kohonen, mas redes multicamadas

Acho que servirá como um peixe.


Você pode ser mais específico? Deve ter ficado pelo caminho.


Treinamento de redes neurais - todos os tipos de pensamentos gerais aqui

"Usando Inteligência Artificial na MTS" - há um especialista ligado ao meu posto

Eu vi seu código, aprendi algo, em particular sobre a normalização dos dados indicadores, mas em geral não consegui entender a estrutura, fiquei preso em arrays.

As matrizes em matrizes são realmente complicadas :( A ausência de objetos ou pelo menos estruturas em MQL dificulta seriamente o processo neste sentido. Ou a matriz está tão embalada que não pode ser entendida sem meio litro, ou a embalagem é clara, mas o código é assustador :(

Se você não entender as arrays, por favor, pergunte-me. Vou tentar lembrar e explicar.

Eu vi esse código, olhei através dele e me lembrei dele. Foi baseado no código em C. Traduzido e adaptado. As funções comerciais foram acrescentadas.

Não estou interessado em redes de distribuição reversa por enquanto. Não tenho capacidade técnica suficiente para uma rede normal. Um pequeno não tem efeito.

Eu quero e já comecei a redesenhar o Expert Advisor (leva muito tempo para otimizá-lo); eu o farei auto-treinamento. A camada Kohonen é usada apenas para compressão de dados. Eu tenho que decidir sobre a taxa de compressão. Até agora eu tomei demais, novamente devido à capacidade técnica.

 

2 Vinina

Yurixx:
Vinina:

Recomendo a leitura de F. Wasserman Neurocomputer Science: Theory and Practice . Está muito bem escrito. Se você precisar, eu posso enviá-lo por e-mail. Eu posso ler não apenas este livro, mas também outros livros.


Se não é muito incômodo, eu também sou. Meu endereço está no meu perfil.

Recentemente cheguei à conclusão de que, sem NS, meu sistema não pode ser ensinado a negociar corretamente. Como tenho visto, sou um mau professor. :-) Tenho uma idéia, que precisa de um agrupamento adequado de dados, com o qual meu sistema funciona. Bem, tanto quanto sei, eles podem ser agrupados usando uma rede Kohonen. Mas minhas primeiras tentativas de superar tudo isso ainda não levaram a nenhum resultado. Eu sei muito pouco sobre isso. Preciso ler algo bom que combine tanto as idéias claramente expostas quanto os bons exemplos de uso prático.

Eu li todo o fio de tecido na NS, mas não é o meu nível. Necessidade de preencher os espaços em branco imediatamente.


Repito mais uma vez meu pedido. A menos, é claro, que sua oferta tenha sido para alguns poucos selecionados.

 
Yurixx:

2 Vinina

Yurixx:
Vinina:

Recomendo a leitura de F. Wasserman Neurocomputer Science: Theory and Practice . Está muito bem escrito. Se você precisar, eu posso enviá-lo por e-mail. Eu posso ler não apenas este livro, mas também outros livros.


Se não é muito incômodo, eu também sou. Meu endereço está no meu perfil.

Recentemente cheguei à conclusão de que, sem NS, meu sistema não pode ser ensinado a negociar corretamente. Como tenho visto, sou um mau professor. :-) Tenho uma idéia, que precisa de um agrupamento adequado de dados, com o qual meu sistema funciona. Bem, tanto quanto sei, eles podem ser agrupados usando uma rede Kohonen. Mas minhas primeiras tentativas de superar tudo isso ainda não levaram a nenhum resultado. Eu sei muito pouco sobre isso. Preciso ler algo bom que combine tanto as idéias claramente expostas quanto os bons exemplos de uso prático.

Eu li todo o fio de tecido na NS, mas não é o meu nível. Necessidade de preencher os espaços em branco imediatamente.


Repito mais uma vez meu pedido. A menos, é claro, que sua oferta tenha sido para alguns poucos selecionados.


Enviado.
 
Vinin:
Yurixx:


Repito mais uma vez meu pedido. A menos, é claro, que sua oferta tenha sido para alguns poucos selecionados.


Enviado.

Estranho, ainda não o recebi.
 
Yurixx:
Vinina:
Yurixx:


Repito mais uma vez meu pedido. A menos, é claro, que sua oferta tenha sido para alguns poucos selecionados.


Enviado.

Estranho, ainda não o recebi.

Devo enviá-lo novamente?
 
Vinin:
Yurixx:
Vinina:
Yurixx:


Repito mais uma vez meu pedido. A menos, é claro, que sua oferta tenha sido para alguns poucos selecionados.


Enviado.

Estranho, ainda não o recebi.

Devo enviá-lo novamente?
Obrigado, agora eu peguei.
 

Olá a todos. Proponho a utilização do chamado "Trend Detector de tendências". Eu não esperava um resultado tão bom deste meu achado. Acidentalmente o cegou - coloque-o dentro. Eu inseri esta parte em quase todos os Expert Advisor e até mesmo um Expert Advisor perdedor produz algum lucro! Diminui o número de negócios contra a tendência (na maioria das vezes perdendo) e aumenta muito o parâmetro de Rentabilidade do Expert Advisor, muitas vezes para pelo menos dois! Isto significa que fora do período de otimização temos muito mais chances de ter lucro!

Eis a idéia: pegamos os indicadores BearsPower e BullsPower (bulls power e bear power) e os comparamos uns com os outros. Mas basta compará-las - é uma dor no pescoço. Fazê-lo de forma programática é incômodo. É por isso que eu coloco MA neles e comparo os valores de MA em barra zero! Basta somar estes valores = Delta. Além disso, tudo é simples. Se DELTA ..>0 - a tendência é para cima. Caso contrário, está indo para baixo!

Só precisamos acrescentar à condição para comprar se ((Delta>=0) && ... ...

E na condição de Venda - se ((Delta<=0) && ... ...

Em parâmetros externos de qualquer Expert Advisor, inserir :

//-----------------------------------------------------------
extern int     PeriodPower    =13;
extern int     Period_Bulls   =11;
extern int     Period_Bears   =10;
//-----------------------------------------------------------
Não é necessário inseri-lo. Mas então você tem que pegar estes parâmetros e inserir valores numéricos em vez de nomes de variáveis diretamente no código. E aqui está o bloco em si:
//================ Определитель тренда ============================ 
 double Bears_array[50]; int cx=0; while (cx<51)
 {Bears_array[cx]= iBearsPower(NULL, 0, PeriodPower,PRICE_CLOSE,cx); cx++; }
 ArraySetAsSeries(Bears_array,true);
 double MA_Bears =iMAOnArray(Bears_array,0,Period_Bears,1,MODE_SMMA,0); 
 
 double Bulls_array[50]; int lx=0; while (lx<51)
 {Bulls_array[lx]= iBullsPower(NULL, 0, PeriodPower,PRICE_CLOSE,lx); lx++; } 
 ArraySetAsSeries(Bulls_array,true);
 double MA_Bulls =iMAOnArray(Bulls_array,0,Period_Bulls,1,MODE_SMMA,0); 
 
 double Delta = MA_Bears + MA_Bulls;
 /*Comment ("Delta ", Delta ,"\n") */
//===================================================================

Aqui está um exemplo de como um EA trabalha com o Trend Detector. Podemos ver que, no caso de uma tendência de alta, as posições de compra são abertas, e vice-versa.

Talvez alguém tenha sugestões para melhorar e aperfeiçoar o projeto. Gostaria de saber o quão promissor este detector de tendências será.

 
leonid533.
Favor me informar - estes parâmetros (13,11,10) são encontrados para GBPJPY e TF - M30?
 
leonid553:

Olá a todos. Proponho a utilização do chamado "Trend Detector de tendências". Eu não esperava um resultado tão bom deste meu achado. Acidentalmente o cegou - coloque-o dentro. Eu inseri esta parte em quase todos os Expert Advisor e até mesmo um Expert Advisor perdedor produz algum lucro! Diminui o número de negócios contra a tendência (a maioria dos quais perdendo) e aumenta consideravelmente o parâmetro de Rentabilidade do Expert Advisor, muitas vezes para pelo menos dois! Isto significa que fora do período de otimização temos muito mais chances de ter lucro!

Eis a idéia: pegamos os indicadores BearsPower e BullsPower (bulls power e bear power) e os comparamos uns com os outros. Mas basta compará-las - é uma dor no pescoço. Fazê-lo de forma programática é incômodo. É por isso que eu coloco MA neles e comparo os valores de MA em barra zero! Basta somar estes valores = Delta. Além disso, tudo é simples. Se DELTA ..>0 - a tendência é para cima. Caso contrário, está indo para baixo!

Só precisamos acrescentar à condição para comprar se ((Delta>=0) && ... ...

E na condição de Venda - se ((Delta<=0) && ... ...

Em parâmetros externos de qualquer Expert Advisor, inserir :

//-----------------------------------------------------------
extern int     PeriodPower    =13;
extern int     Period_Bulls   =11;
extern int     Period_Bears   =10;
//-----------------------------------------------------------
Não é necessário inseri-lo. Mas então você tem que pegar estes parâmetros e inserir valores numéricos em vez de nomes de variáveis diretamente no código. E aqui está o bloco em si:
//================ Определитель тренда ============================ 
 double Bears_array[50]; int cx=0; while (cx<51)
 {Bears_array[cx]= iBearsPower(NULL, 0, PeriodPower,PRICE_CLOSE,cx); cx++; }
 ArraySetAsSeries(Bears_array,true);
 double MA_Bears =iMAOnArray(Bears_array,0,Period_Bears,1,MODE_SMMA,0); 
 
 double Bulls_array[50]; int lx=0; while (lx<51)
 {Bulls_array[lx]= iBullsPower(NULL, 0, PeriodPower,PRICE_CLOSE,lx); lx++; } 
 ArraySetAsSeries(Bulls_array,true);
 double MA_Bulls =iMAOnArray(Bulls_array,0,Period_Bulls,1,MODE_SMMA,0); 
 
 double Delta = MA_Bears + MA_Bulls;
 /*Comment ("Delta ", Delta ,"\n") */
//===================================================================

Aqui está um exemplo de como um EA trabalha com o Trend Detector. Podemos ver que, no caso de uma tendência de alta, as posições de compra são abertas, e vice-versa.

Talvez alguém tenha sugestões para melhorar e aprimorar o projeto. Gostaria de saber o quão promissor este detector de tendências será.

1. um mostra posição de Alto[] em relação ao EMA, o segundo mostra posição de Baixo em relação ao EMA, então eu acho que devemos introduzir limiares (níveis de significância). Compare a Delta não com zero, mas com esses limiares.

2. Você tem um pequeno erro em seu código. As variáveis cx e lx não podem ser iguais a 50, a condição deve ser cx<50 e lx<50. Há uma série de ultrapassagens.

Razão: