Consegui a conversão para modelos ONNX para LightGBM no python 3.10 e 3.11, com os pacotes onnxmltools e onnxconverter_common. A saída funcionou apenas no python 3.10 com o pacote onnxruntime, que não se encaixou no 3.11. Talvez algo tenha mudado nas últimas três semanas.
É uma pena que o ME5 não ofereça suporte ao lançador python py.
O que mudar, que números em que intervalo inserir, etc. Trabalho mecânico, por favor
instrumento/timeframe e datas em copy_rates_range, número de preços de fechamento de entrada para a previsão (aqui time_step = 120 e input_shape=(120,1) em model.add(Conv1D)), - nesse caso, é o número de preços de fechamento por hora no qual a próxima previsão de preço se baseia.
a arquitetura dos modelos em si, por exemplo
model = Sequential() model.add(LSTM(units = 50, return_sequences = True, input_shape = (time_step, 1))) model.add(Dropout(0.2)) model.add(LSTM(units = 50, return_sequences = True)) model.add(Dropout(0.2)) model.add(LSTM(units = 50, return_sequences = True)) model.add(Dropout(0.2)) model.add(LSTM(units = 50)) model.add(Dropout(0.2)) model.add(Dense(units = 1)) model.compile(optimizer='adam',loss= 'mse',metrics=[rmse()])
parâmetros do EA
input double InpLots = 1.0; // Valor dos lotes para abrir a posição input bool InpUseStops = true; // Usar stops nas negociações input int InpTakeProfit = 500; // Nível de TakeProfit input int InpStopLoss = 500; // Nível de StopLoss
o próprio algoritmo de negociação, etc.
instrumento/timeframe e datas em copy_rates_range, o número de preços de fechamento de entrada para a previsão (aqui time_step = 120 e input_shape=(120,1) em model.add(Conv1D)) nas alterações do EA
a arquitetura dos modelos em si, por exemplo
Parâmetros do EA
o próprio algoritmo de negociação, etc.
Obrigado
instrumento/timeframe e datas em copy_rates_range, o número de preços de fechamento de entrada para a previsão (aqui time_step = 120 e input_shape=(120,1) em model.add(Conv1D)) nas alterações do EA
a arquitetura dos modelos em si, por exemplo
Parâmetros do EA
o próprio algoritmo de negociação, etc.
Você poderia me dizer onde posso jogar esses arquivos? (Eu os baixei do site, e não há instalador, apenas arquivos em uma pasta).
Os cálculos de GPU foram realizados em uma placa de vídeo NVIDIA GeForce GeForce RTX 2080 Ti usando as bibliotecas ... e CUDNN 8.1.0.7.
Você poderia me dizer onde posso jogar esses arquivos? (Eu os baixei do site, e não há instalador, apenas arquivos em uma pasta).
Há um vídeo Configurando CUDA, CUDNN, Keras e TensorFlow no Windows 11 para aprendizado profundo de GPU sobre como instalá-los
No primeiro comentário do vídeo, observe que você precisa especificar explicitamente a versão 2.10.0 do TensorFlow.
- 2022.01.05
- www.youtube.com
Há um vídeo configurando CUDA, CUDNN, Keras e TensorFlow no Windows 11 para aprendizagem profunda com GPU sobre como instalá-los
Já está!
Você poderia me dizer o que devo experimentar aqui?
O que mudar, quais números em qual intervalo inserir, etc. Trabalho mecânico, por favor
Não vale a pena fazer experimentos aqui, pois essa previsão não difere de uma previsão ingênua (o valor do preço de fechamento anterior é considerado uma previsão). Nesse caso, você realmente obtém quase o menor erro de aprendizado (RMS), o que não diz nada sobre a capacidade de previsão do modelo. Em vez disso, trata-se de um exemplo didático no ONNX de que até mesmo uma arquitetura complexa pode ser facilmente transferida para o terminal. Não sei o que os autores desse artigo sobre pesquisa de arquiteturas de redes neurais para previsão de séries temporais estavam fumando :) aqui ou a estimativa é necessária de forma adequada, ou a classificação em vez da regressão.
Opções de métricas para experimentos
- Pablo Cánovas
- medium.com
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Uso de modelos ONNX em MQL5 foi publicado:
O ONNX (Open Neural Network Exchange) é um padrão aberto para a representação de modelos de redes neurais. Neste artigo, consideraremos o processo de criação do modelo SNN-LSTM para previsão de séries temporais financeiras e o uso do modelo ONNX criado em um Expert Advisor MQL5.
Há duas maneiras de criar um modelo: Você pode usar o OnnxCreate para criar um modelo a partir de um arquivo ONNX ou o OnnxCreateFromBuffer para criá-lo a partir de um array de dados.
Se o modelo ONNX for usado como recurso em um EA, será necessário recompilar o EA sempre que o modelo for alterado.
Nem todos os modelos têm tensor de entrada e/ou saída de tamanhos totalmente definidos. Normalmente, essa é a primeira dimensão responsável pelo tamanho do pacote. Antes de executar um modelo, você deve especificar explicitamente os tamanhos usando as funções OnnxSetInputShape e OnnxSetOutputShape.
Os dados de entrada do modelo devem ser preparados da mesma forma que foram feitos no treinamento do modelo.
Autor: MetaQuotes