EA N7S_AO_772012 - página 33

 
boing9267 писал(а) >>

Se após a otimização não houver resultados, isso significa que com quaisquer combinações de todos os parâmetros dentro das faixas especificadas com a etapa especificada não há opção, quando o Expert Advisor não falharia, ou simplesmente não negociou devido a condições obrigatórias não preenchidas para a abertura de posições. Tente jogar com o tamanho do lote, perda e tamanho do depósito inicial, e leia algumas páginas atrás e veja o código.

Obrigado. Procurei em todos os postos, mas não encontrei minha versão. Estou seguindo as instruções. Se algo estivesse errado, como funcionaria a otimização de qualquer forma? Durante a otimização, ele realiza algumas transações, embora, como eu entendo, elas sejam dez vezes menos do que deveriam ser... Sobre a saída 0.

E outra coisa, sobre olhar através do código: eu posso muito bem ler chinês, não consigo nem entender onde o tamanho da parada é regulado :).

Agora eu tentei apenas lançar os presets de forma consistente e executá-lo por um mês, não é ótimo, mas funciona! 10 ofícios. E após a otimização, não quer trabalhar de forma alguma.

 
Yay, encontrei as pegadas!
 
Ainda não há muitos negócios, cerca de 15 em um mês no estágio 1. Talvez algo mais precise ser mudado além das paradas, além da almofada entre a cadeira e o computador? Eu tenho 4 casas decimais entre aspas.
 
mpeugep писал(а) >>

Uma observação construtiva a SHOOTER777. Você deve fazer seu próprio perceptron para cada indicador ou fazer um universal para qualquer indicador, porque você usa seu próprio indicador e "as informações são coletadas" através do perceptron do indicador AO.

De que indicador estamos falando? Vou explicar o significado da pergunta. Esta EA usa três prazos para determinar o momento e a direção da entrada. A direção do movimento principal é determinada no H4 e este indicador não está ligado a nenhum Perceptron. Mas as entradas em H1 dependem do outro, exatamente do oscilador AO e não estão logicamente conectadas de forma alguma. Naturalmente, pode ser alterado. Pensei que era tão fácil quanto no H4. A única coisa que você precisa está na função

double iA_C (int pr){int tmfr=60; return(iAO(Symbol(), tmfr, pr));}

para devolver seu indicador.

A universalização só leva a um tempo de otimização mais longo e sensível, portanto, vá em frente. Provavelmente, há mais de uma dúzia de clones desta EA sendo testados agora. Eu gostaria de ouvir opiniões diferentes.

 
andreiuser писал(а) >>

Sim. Boa noite a todos. O indicador mais versátil é uma linha, de preferência uma oblíqua.

Mas falando sério, no início do "posto" havia uma pergunta sobre a escolha do ind.

Pensei que deveria aplicar não um indicador de amostragem, mas um indicador de amostragem. Eu poderia continuar e continuar

Mas não sei aonde isso vai levar e parece trivial. É por isso que eu sugiro

Não se deixe distrair por funções de proteção e múltiplas moedas, mas teste uma moeda com indicadores diferentes.

indicadores. Presumo que SHOOTER tenha feito este trabalho, mas MACD foi utilizado.

O que será que outros?

Obrigado.

É claro que se pode testar um par com indicadores diferentes, como eu fiz no ano passado. Mas no final, o esquema e o algoritmo que encontrei são adequados apenas para dois ou três pares. É impossível testar seis ou oito pares com três ou cinco indicadores por mim mesmo. Mas se um testa um, outro, o terceiro, etc., e depois os compara, todos seriam rentáveis.

 
andreiuser писал(а) >>

Sim. Boa noite a todos. O indicador mais versátil é uma linha, de preferência uma oblíqua.

Mas falando sério, no início do "posto" havia uma pergunta sobre a escolha do ind.

Pensei que deveria aplicar não um indicador de amostragem, mas um indicador de amostragem. Poderíamos continuar e continuar

Mas não sei aonde isso vai levar e parece trivial. É por isso que eu sugiro

Não se deixe distrair por funções de proteção e múltiplas moedas, mas teste uma moeda com indicadores diferentes.

indicadores. Presumo que SHOOTER tenha feito este trabalho, mas MACD foi utilizado.

O que será que outros?

Obrigado.

É claro que se pode testar um par com indicadores diferentes, como eu fiz no ano passado. Mas no final, o esquema e o algoritmo que encontrei são adequados apenas para dois ou três pares. É impossível testar seis ou oito pares com três ou cinco indicadores por mim mesmo. Mas se um testa um, outro, o terceiro, etc., e depois os compara, todos seriam rentáveis.

 

Repetindo o que já passamos ))))

Há tais linhas no código

bool TrBlnc = true; int StrtBlnc = 3000; int DBlnc = 1500; int UBlnc = 4000;

declarou que (TrBlnc = true) está habilitado para controlar o comércio, dependendo do status da equidade.

A negociação pára e não é executada se o saldo for inferior a (DBlnc= 1500) deste valor ou superior a (int UBlnc= 4000).

Controle de execução na função FLG().

E agora, atenção!!! Inicialização

se ( IsOptimization( ) ) TrBlnc = falso;// se ( IsTesting( ) ) TrBlnc = falso;

Isto é, se houver otimização, o controle é desativado, se houver um teste ou uma verificação real, ele é habilitado.

Espero ter explicado bem. Observe o equilíbrio inicial ou remova e desative este controle

 
SHOOTER777 >> :

De que indicador estamos falando? Deixe-me explicar o significado da pergunta. Esta EA usa três prazos para determinar o momento e a direção da entrada. A direção do movimento principal é determinada no H4 e este indicador não está ligado a nenhum perceptron. Mas as entradas em H1 dependem do outro, exatamente do oscilador AO e não estão logicamente conectadas de forma alguma. Naturalmente, pode ser alterado. Pensei que era tão fácil quanto no H4. A única coisa que você precisa está na função

double iA_C (int pr){int tmfr=60; return(iAO(Symbol(), tmfr, pr));}

para devolver seu indicador.

A universalização só leva a um tempo de otimização mais longo e sensível, portanto, vá em frente. Provavelmente, há mais de uma dúzia de clones desta EA sendo testados agora. Eu gostaria de ouvir opiniões diferentes.

Então, você adicionou outro indicador em uma nova versão, sim, você escreveu uma função para ela, onde você devolve seu valor, mas o Perceptron foi escrito para a função iA_C!!!

duplo prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{double qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(1);
if (MathAbs(qw)>at) return(qw);else return(0);}

......................................................................................................

......................................................................................................

vazio H1() { prcptx1 = prcptrnAC(x1,x2,x3,x3,x4,px,tx) ;
prcpty1 = prcptrnAC(y1,y2,y3,y4,py,ty) ;
prcptX1 = prcptrnAC(X1,X2,X3,X4,pX,tX) ;
prcptY1 = prcptrnAC(Y1,Y2,Y3,Y4,pY,tY) ;
Impressão (Flq;)
BuSll (0,1.772012000);
}


 

Encontrei um ponto interessante:

O Expert Advisor faz negócios durante o dia. No final do dia, eu verifico seu desempenho - comparo-o com uma série de testes no mesmo período de tempo. Então é isto que acontece: há diferenças. Isto é, acordos que não são similares aos que são feitos pelo Consultor Especialista anexo ao gráfico, com acordos que são feitos pelo Consultor Especialista no Testador de Estratégia dentro do mesmo período de tempo. No início eu pensei, talvez houvesse algumas irregularidades e olhei para o tronco - é absolutamente claro. Mas depois de reiniciar o terminal (fechado e reaberto) e de funcionar novamente no equipamento de teste, as posições abertas e fechadas coincidiram. Há 3 dias venho observando esta situação.

 
mpeugep писал(а) >>

Então você adicionou outro indicador na nova versão, sim, você escreveu uma função para ela onde você devolve seu valor, mas o perceptron é escrito para a função iA_C!!!!

duplo prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{double qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(1);
if (MathAbs(qw)>at) return(qw);else return(0);}

......................................................................................................

......................................................................................................

vazio H1() { prcptx1 = prcptrnAC(x1,x2,x3,x3,x4,px,tx) ;
prcpty1 = prcptrnAC(y1,y2,y3,y4,py,ty) ;
prcptX1 = prcptrnAC(X1,X2,X3,X4,pX,tX) ;
prcptY1 = prcptrnAC(Y1,Y2,Y3,Y4,pY,tY) ;
Impressão (Flq;)
BuSll (0,1.772012000);
}

Vamos rever isso novamente.

O indicador, que acrescentei na nova versão, foi projetado para determinar a direção da tendência no horizonte de tempo H4 mais alto. Não está de forma alguma relacionado ao perceptron, que determina os pontos de entrada em períodos de tempo menores. O fato de nas primeiras versões eu ter usado tanto o oscilador H4 como o H1 AO é apenas uma escolha minha, uma coincidência se você quiser.
Na função H1 também é possível mudar os perceptrons, independentemente do indicador principal, acho que não é difícil, cada um pode fazê-lo por si mesmo, darei um exemplo mais tarde, mas provavelmente não vou tornar este bloco universal, é muito lento e complicado.

Razão: