Uma biblioteca rápida e gratuita para o MT4, muito para o deleite de quem trabalha com redes neurais - página 3

 

Deixe-me fazer algumas pequenas perguntas aos profissionais:

1. O que os parâmetros AnnsNumber, AnnInpit, delta afetam (em geral ).

2. Quais são os limites para mudá-los.

3. faz sentido otimizá-los.

Também, por alguma razão desconhecida (para mim), em alguns casos, após o treinamento de uma rede neural no NeuroMACD-fixed.mq4 Expert Advisor

A verificação dos resultados do treinamento utilizando o filtro obtido no conjunto de treinamento não dá nenhum resultado visível.

Para ser mais exato, os resultados antes e depois da aplicação do filtro são absolutamente idênticos.

Qual pode ser a razão?

Desculpem a taffalogia :).

 

Reformulou o EA, limpou os bugs. Colocou-o na base de código. Após verificação pelo moderador, estará disponível em: https://www.mql5.com/ru/code/9386

 
Reshetov >> :


Reformulou o EA, limpou os bugs. Colocou-o na base de código. Após revisão pelo moderador, ela estará disponível em: https://www.mql5.com/ru/code/9386

Feito.

 
Rosh >> :

Feito.

Obrigado por sua prontidão!

 

Servidor: Alpari-Demo

Login: 2033582

Senha de investimento: hfti6op (apenas para visualização)


Estou testando o Expert Advisor https://www.mql5.com/ru/code/9386 em demonstração, aqui estão os primeiros resultados:


Alpari NZ Limited

Conta: 2033582 Nome: Reshetov Moeda: USD 2009 11 de dezembro, 07:18
Transações Fechadas:
BilheteTempo abertoTipoTamanhoItem PreçoS / LT / PTempo de fechamento PreçoComissãoImpostosSwapLucro
616947582009.12.10 06:37compre0.10eurusd1.470651.463151.478152009.12.10 06:441.471330.000.000.006.80
617093202009.12.10 09:00compre0.10gbpusd1.623411.614411.632412009.12.10 12:251.632410.000.000.0090.00
617420382009.12.10 13:00compre0.10gbpusd1.631301.622301.640302009.12.10 16:441.622300.000.000.00-90.00
617325472009.12.10 12:00compre0.10ouro1125.821116.721134.922009.12.11 01:081134.920.000.00-0.6291.00
617492792009.12.10 14:00compre0.10usdjpy88.29387.69388.8932009.12.11 07:0588.8930.000.00-0.1067.50

0.00 0.00 -0.72 165.30
Fechado P/L: 164.58
Comércio Aberto:
BilheteTempo abertoTipoTamanhoItem PreçoS / LT / P
PreçoComissãoImpostosSwapLucro
617241982009.12.10 11:00vender0.10audusd0.915790.922390.90919
0.916880.000.00-1.21-10.90
616968862009.12.10 07:00compre0.10eurusd1.470311.462811.47781
1.473760.000.00-0.0534.50
617720392009.12.10 17:00compre0.10gbpusd1.625381.616381.63438
1.632720.000.00-0.0773.40
617183092009.12.10 10:00compre0.10nzdusd0.728660.719460.73786
0.727670.000.000.28-9.90
617420802009.12.10 13:00vender0.10usdcad1.050381.060181.04058
1.051400.000.00-0.07-9.70
617493372009.12.10 14:00compre0.10usdchf1.026201.017401.03500
1.025640.000.00-0.09-5.46
618080662009.12.11 02:00compre0.10ouro1135.931126.831145.03
1137.870.000.000.0019.40

0.00 0.00 -1.21 91.34

P/L flutuante: 90.13
Ordens de trabalho:
BilheteTempo abertoTipoTamanhoItem PreçoS / LT / PPreço de mercado
Nenhuma transação

Resumo:
Depósito/Retirada: 0.00 Linha de crédito: 0.00
Comércio Fechado P/L: 164.58 P/L flutuante: 90.13 Margem: 248.40
Equilíbrio: 5 264.49 Equidade: 5 354.62 Margem Livre: 5 106.22
 

Olá, Yuri.

Por favor, explique porque duas otimizações separadas de sua EA,

Se eu estiver usando o mesmo período, os mesmos dados, as mesmas configurações de otimização,

produzem resultados completamente diferentes.

Todos os arquivos de treinamento da rede foram apagados e recriados durante a nova otimização.

Achei que os resultados deveriam ser os mesmos ou semelhantes e deveriam variar apenas se algumas condições de otimização forem alteradas (por exemplo, prolongando o período por um dia).

Acontece que a rede é treinada de forma diferente cada vez que as condições e os dados são os mesmos? É normal?

Como posso usá-lo, se o resultado é diferente a cada vez?

Ou eu não fiz algo de acordo com as instruções?

Conselheiro especialista: FANN-EA

Fiz ajustes para otimização:

Moeda: EURUSD

Período: 1M

Intervalo: 01/10/09 - 09/12/09

StopLoss: 10 a 100 passo 1

x: 1 a 5000 etapa 1

Resumidamente os resultados das otimizações (ordenados por lucro máximo):

1ª otimização.

Relatório de Otimização
FANN-EA


Passe Lucro Total de negócios Rentabilidade Pagamento previsto Drawdown $ Lucro
24 880.85 168 1.26 5.24 287.04 30.80
27 788.82 168 1.23 4.70 299.13 29.24
26 696.82 168 1.20 4.15 287.04 34.28
25 696.82 168 1.20 4.15 287.04 34.28
48 696.79 168 1.20 4.15 287.04 29.69
9 696.79 168 1.20 4.15 299.13 36.02
7 696.79 168 1.20 4.15 299.13 36.02
6 696.79 168 1.20 4.15 299.13 36.02
86 696.76 168 1.20 4.15 299.16 31.95
3 696.76 166 1.20 4.20 299.13 36.08
29 696.73 166 1.20 4.20 287.04 32.56

2ª otimização (realizada como nova)

Relatório de Otimização
FANN-EA


Passe Lucro Total de negócios Rentabilidade Pagamento previsto Drawdown $ Lucro
54 1036.25 38 1.86 27.27 300.99 48.67
53 1036.25 38 1.86 27.27 300.99 48.67
50 1036.25 38 1.86 27.27 300.99 48.67
48 1036.25 38 1.86 27.27 300.99 48.67
42 1036.25 38 1.86 27.27 300.99 48.67
38 1036.25 38 1.86 27.27 300.99 48.67
36 1036.25 38 1.86 27.27 300.99 48.67
32 1036.25 38 1.86 27.27 300.99 48.67
29 1036.25 38 1.86 27.27 300.99 48.67
28 1036.25 38 1.86 27.27 300.99 48.67
25 1036.25 38 1.86 27.27 300.99 48.67
23 1036.25 38 1.86 27.27 300.99 48.67
17 1036.25 38 1.86 27.27 300.99 48.67
10 1036.25 38 1.86 27.27 300.99 48.67
4 1036.25 38 1.86 27.27 300.99 48.67
 
mgribachev писал(а) >>

Olá, Yuri.

Por favor, explique por que existem duas otimizações separadas de sua EA,

Se eu quisesse usar este EA pelo mesmo período de tempo, pelos mesmos dados, com as mesmas configurações de otimização,

produzem resultados completamente diferentes.

Toda vez que você dirige o neurônio, ele está afinando bem e essa é a diferença nos resultados, isso é correto...

 

Alguém pode explicar algo nos exemplos da FANN? Em particular, o arquivo cascade_train.c tem este material escrito nele:

    struct fann_train_data *train_data, *test_data;

    ...

    train_data = fann_read_train_from_file("../benchmarks/datasets/two-spiral.train");
    test_data = fann_read_train_from_file("../benchmarks/datasets/two-spiral.test");
    train_data = fann_read_train_from_file("../benchmarks/datasets/parity13.train");
    test_data = fann_read_train_from_file("../benchmarks/datasets/parity13.test");
    train_data = fann_read_train_from_file("../benchmarks/datasets/building.train");
    test_data = fann_read_train_from_file("../benchmarks/datasets/building.test");
Provavelmente não entendo algo, mas parece que cada par subseqüente de treinamento e de carregamento de arquivos de teste irá sobrescrever os anteriores. Por que isso está acontecendo? Além disso, há um vazamento de memória porque o fann_destroy_train(data) não é chamado entre as cargas;

E ainda há mais:

	fann_set_activation_function_output(ann, FANN_LINEAR_PIECE);
	fann_set_activation_function_output(ann, FANN_LINEAR_PIECE_SYMMETRIC);
	fann_set_activation_function_output(ann, FANN_SIGMOID_SYMMETRIC);
	fann_set_activation_function_output(ann, FANN_LINEAR);

	fann_set_train_error_function(ann, FANN_ERRORFUNC_TANH);
	fann_set_train_error_function(ann, FANN_ERRORFUNC_LINEAR);
Qual é o objetivo?
 
Figar0 писал(а) >>

Cada corrida da rede neural termina, essa é a diferença nos resultados, tudo bem...

A segunda otimização foi feita a partir de "0" nos mesmos dados com os mesmos parâmetros.

Os arquivos no diretório ANN da primeira otimização foram removidos antes de executar a segunda otimização.

Não há nada para "aprender" ali, pois é um novo treinamento, mas dá resultados totalmente diferentes.

 
mgribachev писал(а) >>

A 2ª etapa de otimização foi feita a partir de "0" nos mesmos dados com os mesmos parâmetros.

Não há nada para "aprender", pois se trata de um novo treinamento, mas dá resultados completamente diferentes.

Tudo bem também, inicialmente a rede é iniciada com pesos aleatórios, e os ajusta durante a otimização, o treinamento. Pesos iniciais diferentes - resultados finais diferentes.

Z.I. embora minha EA não tenha obtido resultados tão drasticamente diferentes, mas isso poderia depender de muitas condições.

Razão: