Bibliotecas: Biblioteca de compatibilidad MQL4 a MQL5

 

Biblioteca de compatibilidad MQL4 a MQL5:

Version 1.2 - MQL5\Include\mql4compat.mqh

Autor: T-1000

 

Hola,

Desafortunadamente, su biblioteca es incompleta y con errores. Estoy tratando de utilizar su biblioteca con este indicador mql4 http://codebase.mql4.com/7472. Sigo sus instrucciones y obtengo 47 errores y 14 advertencias.

JJN-Fibo_with_compat_library.mq5' JJN-Fibo_with_compat_library.mq5 1 1
'mql4compat.mqh' mql4compat.mqh 1 1
'i' - identificador no declarado JJN-Fibo_with_compat_library.mq5 150 8
'ObjectDelete' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 175 4
'ObjectDelete' - recuento de parámetros erróneos JJN-Fibo_with_compat_library.mq5 176 4
'ObjectDelete' - recuento erróneo de parámetros JJN-Fibo_with_compat_library.mq5 177 4
'ObjectDelete' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 178 4
'ObjectDelete' - recuento erróneo de parámetros JJN-Fibo_with_compat_library.mq5 179 4
'ObjectDelete' - recuento de parámetros erróneos JJN-Fibo_with_compat_library.mq5 180 4
'ObjectDelete' - recuento de parámetros erróneos JJN-Fibo_with_compat_library.mq5 181 4
'DisplayDec' - identificador no declarado JJN-Fibo_with_compat_library.mq5 190 4
'ObjectCreate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 196 4
'DisplayDec' - identificador no declarado JJN-Fibo_with_compat_library.mq5 197 100
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 197 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 197 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 198 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 199 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 199 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 200 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 201 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 201 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 202 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 203 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 203 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 204 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 205 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 205 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 206 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 207 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 207 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 208 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 209 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 209 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 214 4
'DisplayDec' - identificador no declarado JJN-Fibo_with_compat_library.mq5 215 104
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 215 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 215 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 216 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 217 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 217 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 218 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 219 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 219 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 220 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 221 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 221 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 222 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 223 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 223 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 224 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 225 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 225 30
'ObjectCreate' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 226 4
'StringConcatenate' - recuento de parámetros erróneo JJN-Fibo_with_compat_library.mq5 227 30
conversión implícita de 'number' a 'string' JJN-Fibo_with_compat_library.mq5 227 30
'ObjectDelete' - recuento de parámetros incorrecto JJN-Fibo_with_compat_library.mq5 99 4
'ObjectDelete' - recuento de parámetros erróneos JJN-Fibo_with_compat_library.mq5 100 4
'ObjectDelete' - recuento de parámetros erróneos JJN-Fibo_with_compat_library.mq5 101 4
'ObjectDelete' - recuento erróneo de parámetros JJN-Fibo_with_compat_library.mq5 102 4
'ObjectDelete' - recuento erróneo de parámetros JJN-Fibo_with_compat_library.mq5 103 4
'ObjectDelete' - recuento erróneo de parámetros JJN-Fibo_with_compat_library.mq5 104 4
'ObjectDelete' - recuento erróneo de parámetros JJN-Fibo_with_compat_library.mq5 105 4
'return' - función 'void' devuelve un valor JJN-Fibo_with_compat_library.mq5 110 4
47 error(es), 14 warning(s) 48 15

 
angevoyageur:

Hola,

Desafortunadamente, su biblioteca es incompleta y con errores. Estoy tratando de utilizar su biblioteca con este indicador mql4 http://codebase.mql4.com/7472. Sigo sus instrucciones y me sale 47 errores y 14 advertencias.

Los nombres de las funciones que están dando errores necesitan ser ajustados añadiendo MQL4 al final de sus nombres para que los errores de compilación desaparezcan.

También he probado ese indicador en MT4, parece que no funciona correctamente allí también.

P.S> Hice algunas actualizaciones menores y ajustes para la biblioteca de compatibilidad por lo que podría agarrar la última versión 1.1 tan pronto como se apruebe. En v1.0 la cadena StringConcatenate() función no funcionaría correctamente, ya que los conflictos entre MQL4 y MQL5 en la forma en que funciona - añadido StringConcatenateMQL4 en v1.1
 
T-1000:
Los nombres de las funciones que están dando errores necesitan ser ajustados añadiendo MQL4 al final de sus nombres para que los errores de compilación desaparezcan.

También he probado ese indicador en MT4, parece que no funciona correctamente allí también.

P.S> Hice algunas actualizaciones menores y ajustes para la biblioteca de compatibilidad por lo que podría agarrar la última versión 1.1 tan pronto como se apruebe. En v1.0 la cadena StringConcatenate() función no funcionaría correctamente, ya que los conflictos entre MQL4 y MQL5 en la forma en que funciona - añadido StringConcatenateMQL4 en v1.1

Gracias por tu respuesta. Comprobaré cuando estará disponible la versión 1.1.

  • Si hay que ajustar muchos nombres de funciones, ya no es una librería de compatibilidad, sería mejor ajustar tu librería para suprimir el sufijo 'MQL4'. Sé que no es posible para todas las funciones (StringConcatenate por ejemplo).
  • Te sugiero que compruebes este tipo de código, ya que WHOLE_ARRAY no está pensado para trabajar con la función Copyxxxx, y el resultado de esta función probablemente no sea el que deseas.
void __Open(double &_Open[])
  {
   ArraySetAsSeries(_Open,true);
   CopyOpen(_Symbol,_Period,0,WHOLE_ARRAY,_Open);  // What is the returned value ?
  }
 

un tres.

y la aplicación de encuestas de indicadores estándar es una basura.

 
cuando compilo el archivo mql4compat.mqh, obtengo un error: Error
 

Esta librería parece no estar actualizada en 2021. Intenté contactar con el autor enviándole mensajes a través de MQL5, pero no obtuve respuesta. Me conecté continuamente al mencionado IRC chan durante más de un mes, pero estuve solo todo este tiempo...

Así que he creado una versión github que corrige advertencia / errores al compilar con MQL5 versión build 2981, así como una biblioteca muy áspera que permite volver a ejecutar un script convertido / EA en MQL4.

Así que consiga la última versión aquí : https://github.com/eromawyn/mql4compat

¡Y no dude en enviarme sus parches si has hecho algo interesante !

GitHub - eromawyn/mql4compat: MQL4 to MQL5 compatibility library
GitHub - eromawyn/mql4compat: MQL4 to MQL5 compatibility library
  • github.com
MQL4 to MQL5 compatibility library. Contribute to eromawyn/mql4compat development by creating an account on GitHub.