Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 3236

 
No entanto, o tópico de criação de pipelines personalizados e sua conversão para ONNX é muito interessante, importante e merece um ou até mesmo vários artigos no fórum.
 

Se eu entendi corretamente, o esquema de trabalho com o ONNX simplificado é o seguinte:

MQL5_Input_Data -> ONNX -> MQL5_TS, onde:

MQL5_Input_Data - aquisição de dados

ONNX - modelo (rede neural com coeficientes de peso)

MQL5_TS - manipulador e sistema de negociação.


Não está claro como o modelo ONNX é executado, se ele é executado diretamente pelo MT5 ou se o Python deve ser usado para essa finalidade.

 
Andrey Dik #:

Se eu entendi corretamente, o esquema de trabalho com o ONNX é simplificado da seguinte forma:

MQL5_Input_Data -> ONNX -> MQL5_TS, onde:

MQL5_Input_Data - recebimento de dados

ONNX - modelo (rede neural com coeficientes de peso)

MQL5_TS - manipulador e sistema de negociação.


Não está claro como o modelo ONNX é executado, se ele é executado diretamente pelo MT5 ou se o Python deve ser usado para isso.

O MT5 o executa. A saída é apenas um exe do bot. Como um recurso, ele é arquivado.
 
Andrey Dik #:

Se eu entendi corretamente, o esquema de trabalho com o ONNX é simplificado da seguinte forma:

MQL5_Input_Data -> ONNX -> MQL5_TS, onde:

MQL5_Input_Data - recebimento de dados

ONNX - modelo (rede neural com coeficientes de peso)

MQL5_TS - manipulador e sistema de negociação.


Não está claro como o modelo ONNX é executado, se ele é executado diretamente pelo MT5 ou se o Python deve ser usado para isso.

Meu entendimento é o seguinte:. Onnx - o modelo produz apenas
Sinal (grosso modo, um número ou um conjunto de números), e o próprio terminal MT5 faz a negociação.
Por meio da função OrderSend()
 
Andrey Dik #:

Não está claro como o modelo ONNX é executado, se ele é executado diretamente pelo MT5 ou se o Python precisa ser envolvido para isso.

Aparentemente, ele é executado por meio do onnxruntime da Microsoft, que está incluído no MT5. Houve um breve momento em que foi necessário adicionar algumas dlls à raiz do terminal para executar o modelo.

GitHub - microsoft/onnxruntime: ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
GitHub - microsoft/onnxruntime: ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
  • microsoft
  • github.com
ONNX Runtime is a cross-platform inference and training machine-learning accelerator . ONNX Runtime inference can enable faster customer experiences and lower costs, supporting models from deep learning frameworks such as PyTorch and TensorFlow/Keras as well as classical machine learning libraries such as scikit-learn, LightGBM, XGBoost, etc...
 
Maxim Dmitrievsky #:
O MT5 faz isso. Acho que Renat escreveu sobre isso, mas não me lembro como ele é costurado no corpo do bot depois. A saída é apenas um exe do bot.

Se um EA com ONNX for apenas um exe, como os organizadores saberão que o ONNX está sendo usado?

Ou, "não se preocupe, eles saberão!"?)))

 
Andrey Dik #:

Se um EA com ONNX for apenas um exe, como os organizadores saberão que o ONNX está sendo usado?

Ou, "não se preocupe, eles saberão!"))))

Não, o modelo é adicionado como um recurso. Você pode adicioná-lo como um arquivo separado - tudo está descrito no manual.
 
Andrey Dik #:

Se um EA com ONNX for apenas um exe, como os organizadores saberão que o ONNX está sendo usado?

Ou, "não se preocupe, eles saberão!"?)))

🤷‍♂️
 
Aleksey Nikolayev #:
Não, o modelo é adicionado como um recurso.

Bem, é isso que estou dizendo, o modelo como um recurso é incorporado no EA exe, o exe é enviado ao organizador. Qualquer coisa pode estar no exe, até a ausência do modelo ONNX))))

 
Andrey Dik #:

Bem, é isso que estou dizendo: o modelo como um recurso é incorporado ao EA exe, o exe é enviado ao organizador. Qualquer coisa pode estar no exe, até a ausência do modelo ONNX)))

))

Não, há algumas mensagens sobre o lançamento do ONNX. E eles aceitarão modelos, não exeshniks, e depois executarão modelos no mesmo modelo para todos.