Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Facebook!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Bibliotecas

Classe de Rede Neural RBF - biblioteca para MetaTrader 5

Visualizações:
2039
Avaliação:
(46)
Publicado:
2014.01.14 15:26
Atualizado:
2016.11.22 07:33
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

A classe implementa a rede neural de funções de base radial (Função Base de Rede Radial - RBFN).

Aqui será representado a realização do clássico RBFN, que consiste em duas camadas de neurônios: os neurônios da camada escondida com função de ativação radialmente simétrica, a camada de saída linear e a função de ativação sigmóide.

A função de ativação da camada de saída é automaticamente selecionada para treinamento da rede, dependendo dos dados de saída de teste. A tangente hiperbólica se aplica para o intervalo de -1 a 1 , para o intervalo de 0 .. 1 aplica-se o sigmóide. Se os dados de saída do teste estão fora do intervalo -1 .. 1, a função de ativação não é utilizada.

A criação da rede é declarada para ser um construtor paramétrico classe.

CNetRBF * net =novo CNetRBF (o tamanho do vetor de entrada, o número máximo de neurónios na camada escondida, o tamanho do vetor de saída);

Ao criar uma rede, o número máximo de neurónios na camada escondida é definida o que se pode ser utilizado da rede. O número real de neurónios requeridas é determinada pela rede de aprendizagem.

A rede de aprendizagem é fornecida, chamando o método Learn (o número de padrões de aprendizagem, array de dados de entrada, array de dados de saída, o número de ciclos de aprendizagem, o erro máximo de aprendizagem).

Os dados de entrada e saída de aprendizagem estão localizados em um array unidimensional, vetor por vetor. O processo de aprendizagem é limitado pelo número de epochs de aprendizagem ou do erro admissível.

O método de aprendizagem retorna os seguintes valores:

      0 - aprendizagem em rede completa e o resultado da aprendizagem pode ser verificada através das variáveis ​​de classe: mse - Erro de aprendizagem, epoch - número de ciclos realizados e neurônios - número de neurônios na camada oculta;
-3 - Neurônios não são suficientes na camada oculta;

     -4 - Memória não é suficiente.

O método Calculate (array de entrada, array de resposta da rede) é usado para obter a resposta da rede.

Salve (abra o arquivo com o manipulador FILE_WRITE e o flag FILE_BIN) e carregue (abra o arquivo com o manipulador file_read e a flag FILE_BIN), os métodos são destinados a salvar a rede para um arquivo e carregar a rede a partir do arquivo, respectivamente. A topologia de rede, erros de aprendizagem e pesos do array são salvos no arquivo. Se os parâmetros da topologia de rede carregada diferem dos parâmetros da topologia de rede estabelecida, a rede não será carregada e o método de carregar retornará falso.

O uso da classe é mostrada nos modelos: Test_RBFN_XOR - funçao de aprendizagem de rede "excluindo OR", Test_RBFN_MUL_ADD - Rede de aprendizagem para multiplicação e adição de números inteiros. Está implícito que os arquivos de classe e exemplo são colocados em uma pasta.

Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/1267

OsHMA OsHMA

O oscilador OsHMA é um indicador que mede a diferença entre dois HMA (entre duas Hull Moving Averages).

PriceChanel_HTF PriceChanel_HTF

Indicador Canal de Preço. Ele desenha uma linha com os valores de preço máximo e mínimo para as últimas N barras de um período de tempo maior do que o do gráfico.

LeManChanel LeManChanel

Indicador que exibe os possíveis limites e a direção da barra projetando o futuro de uma barra.

LeManSystem LeManSystem

Sistema que utiliza o canal interno de máximas e mínimas.