Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 337

 
tara:

Muletas, imho.
+
 

¡Buenas tardes!

¿Puede decirnos cómo funciona la biblioteca como conjunto de funciones utilizadas?

Es decir, al llamar a las funciones de una biblioteca en dos EAs, colgando en diferentes pares - para cada EA se cargará e inicializará su propia instancia de la biblioteca?

¿O esperar que las mismas variables (internas) de la biblioteca se utilicen de forma competitiva?

Simplemente, he construido algunas funciones en la biblioteca (*.mqh no quiero), y estas funciones utilizan variables / matrices declaradas en la biblioteca para almacenar los datos reales . Estos datos son comunes a todos los símbolos, pero pueden ser modificados en momentos aleatorios por cualquiera de los EAs activos. Cuando se ejecuta un EA - todo está bien, pero cuando se ejecutan dos EAs - sale una mierda rara (datos desordenados), y tengo la sospecha de que el acceso competitivo a las variables está torcido.

 
Mr.Profit:

¡Buenas tardes!

¿Puede decirnos cómo funciona la biblioteca como conjunto de funciones utilizadas?

Es decir, al llamar a las funciones de una biblioteca en dos EAs, colgando en diferentes pares - para cada EA se cargará e inicializará su propia instancia de la biblioteca?

¿O esperar que las mismas variables (internas) de la biblioteca se utilicen de forma competitiva?

Simplemente, he construido algunas funciones en la biblioteca (*.mqh no quiero), y estas funciones utilizan variables / matrices declaradas en la biblioteca para almacenar los datos reales . Estos datos son comunes a todos los símbolos, pero pueden ser modificados en momentos aleatorios por cualquiera de los EAs activos. Cuando se ejecuta un EA - todo está bien, pero cuando se ejecutan dos EAs - aparecen algunas grietas incomprensibles (datos desordenados), y tengo la sospecha de que el acceso competitivo a las variables está torcido.

Aquí.
 

Como sabes, la línea inferior del terminal contiene la siguiente información, por ejemplo

Saldo: 211721,72 Fondos: 101193,75 Colaterales: 55595,98 Libre: 45481,77 Nivel: 181,81% -110643, 34 (aproximadamente)

Sin embargo, en uno de mis terminales, en una cuenta de céntimos reales, sólo aparece la siguiente información, aunque hay posiciones abiertas:

Saldo: 211721,72 Fondos: 101193,75 -110643,34

¿Cuál puede ser la razón? Gracias por su atención.

 
borilunad:

En el probador MarketInfo() no funciona, y Bid y Ask son lentos y distorsionados. Por lo tanto, siguiendo el consejo de Xrust'a los obtengo de iClose(NULL,0,0):


Ya he escrito mucho, lo he pasado por el probador para asegurarme de que no había errores lógicos, y... Sólo ahora he descubierto que MarketInfp() no funciona en mi probador.

¿Qué es lo que estoy comprobando con tanto cuidado entonces? ¿Cómo funciona para mí?

¡Shaitan!

 
TarasBY:
Tut.


Gracias.

¿Cómo funciona esto en el caso de un EA que se cierne sobre dos pares? Es decir, ¿el módulo de llamada es uno (expert.ex4) o dos (dos instancias en ejecución)?

 
Mr.Profit:


Gracias.

¿Cómo funciona esto en el caso de un EA que se cierne sobre dos pares? Es decir, ¿el módulo de llamada es uno (expert.ex4) o dos (dos instancias en ejecución)?

A diferencia de las bibliotecas del sistema, las bibliotecas personalizadas (MQL4) se cargan para cada módulo de llamada por separado, independientemente de si la biblioteca llamada fue cargada por cualquier otro módulo. Por ejemplo, el módulo caller.ex4 llama a funciones de las bibliotecas lib1.ex4 y lib2.ex4. A su vez, la biblioteca lib1.ex4 llama a funciones de la biblioteca lib2.ex4. En este caso, se cargará una copia de la biblioteca lib1.ex4 y dos copias de la biblioteca lib2.ex4, a pesar de que todas las llamadas provienen del módulo caller.ex4.
Para cada EA (no importa cuántos de ellos están colgados en los gráficos) su propio módulo de llamada (archivo EA).
 
¿Puede decirme por favor si encontré el indicador MACD_Histogram.mq4 por el enlace https://www.mql5.com/ru/code donde encontrar el manual del indicador? Básicamente entendí que puedo operar por flechas pero quiero saber que otros indicadores muestran en él. Si alguien tiene algún enlace donde pueda leer o mirar por favor responda o envíe un correo a Aleks-R-13@yandex.ru Gracias
 
TarasBY:
Para cada EA (no importa cuántos de ellos están colgados en los gráficos) tiene su propio módulo de llamada (archivo EA).

Para aclarar finalmente la confusión, he escrito un EA de prueba y una biblioteca.

El Asesor Experto simplemente emite a Comment el valor actual de la variable de la biblioteca, además para EURUSD incrementa el valor de la variable. La recepción de la variable y su incremento se implementa a través de funciones de la biblioteca.

Como resultado, el comentario sobre el EURUSD muestra el valor cambiante, mientras que en el otro símbolo no lo hace.

Por lo tanto, es correcto decir que para cada instancia (y no un archivo) del EA, se carga su propia instancia de la biblioteca EX4.

 
tara:

Muletas, imho.
Las dentaduras postizas malas son peores.