Mira cómo descargar robots gratis
¡Búscanos en Facebook!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Scripts

Información sobre las entradas y salidas del modelo ONNX - script para MetaTrader 5

Visualizaciones:
3970
Ranking:
(20)
Publicado:
2023.03.27 12:12
Actualizado:
2023.08.25 08:53
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

La función de ejecución del modelo Onnx requiere que se definan los tamaños de entrada y salida. Las funciones OnnxSetInputShape y OnnxSetOutputShape se usan para especificar los tamaños, respectivamente.

No todos los modelos indican entradas y salidas de tamaño fijo. En tales casos, el script mostrará un valor de -1 (menos 1).

   OnnxTypeInfo type_info;

   long input_count=OnnxGetInputCount(session_handle);
   Print("model has ",input_count," input(s)");
   for(long i=0; i<input_count; i++)
     {
      string input_name=OnnxGetInputName(session_handle,i);
      Print(i," input name is ",input_name);
      if(OnnxGetInputTypeInfo(session_handle,i,type_info))
         PrintTypeInfo(i,"input",type_info);
     }

   long output_count=OnnxGetOutputCount(session_handle);
   Print("model has ",output_count," output(s)");
   for(long i=0; i<output_count; i++)
     {
      string output_name=OnnxGetOutputName(session_handle,i);
      Print(i," output name is ",output_name);
      if(OnnxGetOutputTypeInfo(session_handle,i,type_info))
         PrintTypeInfo(i,"output",type_info);
     } 

La selección del modelo en la carpeta MQL5\Files se realiza con la ayuda de la función FileSelectDialog


A continuación, puede ver un ejemplo del funcinamiento del script:

Create model from mnist.onnx with debug logs
ONNX: Creating and using per session threadpools since use_per_session_threads_ is true
ONNX: Dynamic block base set to 0
ONNX: Initializing session.
ONNX: Adding default CPU execution provider.
ONNX: Removing initializer 'Parameter6'. It is no longer used by any node.
ONNX: Removing initializer 'Parameter88'. It is no longer used by any node.
ONNX: Total shared scalar initializer count: 0
ONNX: Removing initializer 'Parameter193_reshape1_shape'. It is no longer used by any node.
ONNX: Removing initializer 'Parameter193'. It is no longer used by any node.
ONNX: Total fused reshape node count: 0
ONNX: Total shared scalar initializer count: 0
ONNX: Total fused reshape node count: 0
ONNX: Removing initializer 'Parameter5'. It is no longer used by any node.
ONNX: Removing initializer 'Parameter87'. It is no longer used by any node.
ONNX: Use DeviceBasedPartition as default
ONNX: Saving initialized tensors.
ONNX: Done saving initialized tensors
ONNX: Session successfully initialized.
model has 1 input(s)
0 input name is Input3
   type ONNX_TYPE_TENSOR
   data type ONNX_DATA_TYPE_FLOAT
   shape [1, 1, 28, 28]
   shape of input data can be reduced to [28, 28]
model has 1 output(s)
0 output name is Plus214_Output_0
   type ONNX_TYPE_TENSOR
   data type ONNX_DATA_TYPE_FLOAT
   shape [1, 10]
   shape of output data can be reduced to [10]

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/43452

Función que Calcula la Reducción Relativa Función que Calcula la Reducción Relativa

La reducción relativa es una relación entre la reducción máxima y el valor del máximo local correspondiente del capital. Es importante utilizar el Drawdown Relativo según el saldo como filtro de optimización.

SCRIPTS PARA EJECUTAR ORDEN DE COMPRA, VENTA Y CERRAR LAS POSICIONES SCRIPTS PARA EJECUTAR ORDEN DE COMPRA, VENTA Y CERRAR LAS POSICIONES

Útiles atajo de teclado que te van agilizar tu operativa del trading. Facilitan la entrada al mercado y el cierre de las operación abiertas. Yo no fui el creador de los scripts, no se quien fue, solo encontré los archivos y tenían un error los solucione para que fueran útiles y efectivos al incorporarlos a la plataforma. Espero no tener problemas por publicarlos, solo quiero aportar a la comunidad.

Ejemplo de uso de un modelo ONNX para reconocer números manuiscritos Ejemplo de uso de un modelo ONNX para reconocer números manuiscritos

Este asesor no comercia. Este sencillo panel, implementado con la ayuda de la biblioteca estándar Canvas, permite dibujar números con el ratón. Los dibujos se reconocen usando el modelo entrenado mnist.onnx.

Programación en MQL5 para tráders: códigos fuente del libro: Parte 1 Programación en MQL5 para tráders: códigos fuente del libro: Parte 1

El primer capítulo del libro presenta el lenguaje y el entorno de desarrollo MQL5. Uno de los principales cambios del lenguaje MQL5 en comparación con MQL4 (el lenguaje de MetaTrader 4) es la compatibilidad con la programación orientada a objetos (POO), lo cual lo hace similar a C++.