metaeditor(64)?.exe tiene un compilador incorporado, ¿no? Por su parte, mql(64)?.exe es ese compilador "independiente" y autónomo.
Por eso mi pregunta era correcta y tu respuesta era "En cualquier caso, no se hacen colocaciones inteligentes de archivos ex? desde la línea de comandos. Sólo el editor puede hacerlo y sólo en modo ventana". responde perfectamente.
Windows 10, MT4 Build 854 títulos extraños (en lugar de propagación dice "!"), no se traducen todos los elementos del menú y hay un elemento de menú vacío:
#import "Test.dll"void f( constint& x[] );
#import
voidOnStart()
{
int x[ 1 ] = { 1 };
int y = x[ 0 ];
Print( "y=", y ); // здесь y = 1
f( x );
Print( "y=", y ); //а здесь y = 2, но я его явно не менял
}
Está claro que f() está mal descrita en #import, pero la cuestión no es qué ha cambiado x, sino qué ha cambiado y.
Tal vez tenga sentido que el compilador considere que x es volátil (en el sentido de no optimizar el código que afecta a las variables pasadas por referencia a funciones llamadas desde la .dll). Teniendo en cuenta que la ausencia de dicha optimización será prácticamente imperceptible, mientras que sus consecuencias serán significativas para el resultado.
Windows 10, MT4 Build 854 títulos extraños (en lugar de propagación dice "!"), no se traducen todos los elementos del menú y hay un elemento de menú vacío:
Podría estar equivocado, pero NULL cuando se utiliza para poner a cero las variables, inicializa la variable con cero.
En la ayuda dice
Синтаксически тип void является фундаментальным типом наравне с типами char, uchar, bool, short, ushort, int, uint, color, long, ulong, datetime, float, double и string.
Этот тип используется либо для указания того, что функция не возвращает значения, либо в качестве параметра функции обозначает отсутствие параметров.
Предопределенная константная переменная NULL имеет тип void. Она может быть присвоена переменным любых других фундаментальных типов без преобразования.
Также допускается сравнение переменных фундаментальных типов со значением NULL
Teóricamente, cuando se utiliza NULL, la variable debe estar vacía como en el caso de la variable de tipo cadena y no contener ni 0, ni -, ni +.
Cuando se inicializa una variable de tipo string text = NULL; la variable está vacía y se le asigna 0 cuando se inicializan otros tipos.
Tengo una carpeta de prueba que está en expertos, contiene el código fuente y el archivo excerset con el nombre de prueba.
Tengo un archivo con nombre test (también con source y excerset) en la carpeta principal, así que cuando compilo este último, el primero se instala en el terminal para el test.
Es decir, quiero probar el Asesor Experto con el nombre y la ubicación Xperts\\Test pero el terminal establece automáticamente Xperts\Test cada vez durante la compilación por lo que tengo que reorganizar el EA cada vez.
Elijo cSymbolInfo.Name(symbol) correctamente en el código antes de llamar a TickValue(). El código funciona para otros instrumentos, por ejemplo, EURUSD.
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Ha iniciado sesión. La autenticación de dos factores se ha desactivado. Vuelva a configurarla y escanee un nuevo código QR, o continúe con la autenticación de dos factores desactivada.
metaeditor(64)?.exe tiene un compilador incorporado, ¿no? Por su parte, mql(64)?.exe es ese compilador "independiente" y autónomo.
Por eso mi pregunta era correcta y tu respuesta era "En cualquier caso, no se hacen colocaciones inteligentes de archivos ex? desde la línea de comandos. Sólo el editor puede hacerlo y sólo en modo ventana". responde perfectamente.
Por eso, de hecho, le doy las gracias.
La ruta de búsqueda fijada en el MetaEditor como R:\N
Aparece en los resultados de la búsqueda como R:\\\N-ES.
No afecta al funcionamiento, pero compruebe si hay errores ocultos (por ejemplo, puede introducir la ruta R:\\\\\\\)
Windows 10, MT4 Build 854 títulos extraños (en lugar de propagación dice "!"), no se traducen todos los elementos del menú y hay un elemento de menú vacío:
Está claro que f() está mal descrita en #import, pero la cuestión no es qué ha cambiado x, sino qué ha cambiado y.
Tal vez tenga sentido que el compilador considere que x es volátil (en el sentido de no optimizar el código que afecta a las variables pasadas por referencia a funciones llamadas desde la .dll). Teniendo en cuenta que la ausencia de dicha optimización será prácticamente imperceptible, mientras que sus consecuencias serán significativas para el resultado.
Windows 10, MT4 Build 854 títulos extraños (en lugar de propagación dice "!"), no se traducen todos los elementos del menú y hay un elemento de menú vacío:
Podría estar equivocado, pero NULL cuando se utiliza para poner a cero las variables, inicializa la variable con cero.
En la ayuda dice
Teóricamente, cuando se utiliza NULL, la variable debe estar vacía como en el caso de la variable de tipo cadena y no contener ni 0, ni -, ni +.
Cuando se inicializa una variable de tipo string text = NULL; la variable está vacía y se le asigna 0 cuando se inicializan otros tipos.
Windows 10, MT4 Build 854 título extraño (en lugar de propagación dice "!")
¡spread es un nombre demasiado amplio, en MT5 tanto en Overview como en la ventana Quotes siempre ha sido !
¡spread es un nombre demasiado amplio, en MT5 tanto en la Visión General como en la ventana de Cotizaciones siempre ha sido !
Hay otro error interesante en la versión 854
Tengo una carpeta de prueba que está en expertos, contiene el código fuente y el archivo excerset con el nombre de prueba.
Tengo un archivo con nombre test (también con source y excerset) en la carpeta principal, así que cuando compilo este último, el primero se instala en el terminal para el test.
Es decir, quiero probar el Asesor Experto con el nombre y la ubicación Xperts\\Test pero el terminal establece automáticamente Xperts\Test cada vez durante la compilación por lo que tengo que reorganizar el EA cada vez.
Esto es molesto...
Hola comerciantes,
Por favor, ayúdenme a resolver un problema:
La función SymbolInfoDouble( _Symbol,SYMBOL_TRADE_TICK_VALUE) para el instrumento #IBM_L devuelve 0.
LiteForex MT5 Terminal x64 build 1150 (Liteforex Investments Limited).
Moneda de la cuenta EUR.
Script de prueba en la aplicación.
El diario muestra:
2015.08.12 22:23:51.930 TestTickValue (#IBM_L,H1) Tick value = 0.00000.
Necesito este valor para calcular el volumen de operaciones.
double lots = loss * cSymbolInfo.TickSize() / ( priceDiff * cSymbolInfo.TickValue() );
Elijo cSymbolInfo.Name(symbol) correctamente en el código antes de llamar a TickValue(). El código funciona para otros instrumentos, por ejemplo, EURUSD.