Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1446
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Aquí tienes un experto. Crea una base (si no existe ya) y escribe en ella la hora actual una vez por segundo.
No hay Print() en el código.
Lo ejecuté en 10 pares, se produjeron errores:
Para obtener un error debes cerrar y reiniciar MT5 entonces todos los Asesores Expertos comienzan a trabajar sincronizadamente.
Sería bueno:
1. Para entender cómo deshacerse de este error.
2. Inventar un mecanismo de plantilla que la cola en caso de indisponibilidad de la base.
Resolví el punto 2 añadiendo Sleep() con tiempo aleatorio, pero parece una muletilla.
ACTUALIZACIÓN: Volví a subir el archivo, el primero tenía un error.
Ay, mis conocimientos no son suficientes. Sólo lo suficiente para darse cuenta de que se está imprimiendo un error
DatabaseExecute(db, sql);
No hay posibilidad de comprobar la disponibilidad antes de crear una consulta.
La base de datos se abre, pero no es posible crear una consulta.
registro de terminal
registro de terminales
Supongo que he encendido los registros, no puede calcular el lote. No entiendo por qué no quiere calcular en real?
Supongo que encendí los registros, no puede calcular el lote. No entiendo por qué no quiere calcular en real?
No hay registros, por lo que puede haber muchas veces más conjeturas.
Como una opción, cuando el comercio de cruces, si en la visión general del mercado no está seleccionado par con la moneda del depósito, no el comercio.
Por ejemplo, el comercio de EURJPY, la moneda de depósito USD, en la visión general del mercado debe estar presente EURUSD y USDJPY.
No hay registros, así que podría haber muchas más conjeturas.
Como una opción, cuando el comercio de cruces, si el par con la moneda de depósito no está seleccionado en la visión general del mercado, no va a operar.
Por ejemplo, el comercio EURJPY, la moneda de depósito USD, en la visión general del mercado debe estar presente EURUSD y USDJPY.
Cuenta en USD pro cent, comercio XAUUSD
Hola a todos. No puedo dibujar una flecha en la primera barra usando buffers en MQL5.
En MQL4, hago lo siguiente:
Declaro una variable global double XX[];
escribir en init:
SetIndexBuffer(0,XX);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,108);
En Oncalculate escribo:
XX[1]=Alta[1]; Me sale una flecha dibujada sobre la vela 1. y ya está
Hago lo mismo en MQL5
Declaro una variable global double XX[];
escribo en init:
SetIndexBuffer(0,XX,INDICATOR_DATA);
PlotIndexSetInteger(0,PLOT_ARROW,108);
En Oncalculate escribo:
XX[1]=iAlto[1]; - no dibuja
XX[1]=iHigh(Symbol(),PERIOD_CURRENT,1); - tampoco dibuja.
Por supuesto, incluso en la cabecera se especifica:
#property indicator_buffers 1
#property indicator_plots 1
#property indicador_tipo1 DRAW_ARROW
#propiedad indicator_color1 clrGreen
#propiedad indicator_width1 1
¡¡¡¡¿Qué estoy haciendo mal, por favor dígame !!!!
XX[1]=alto[1]; - no dibujar
¡¡¡¡¿Qué estoy haciendo mal, por favor dígame !!!!
Que tal esto
o así:
¿Qué te parece esto?
O así:
Gracias, de hecho en On Calculate - funciona.
Pero ¿y si el mismo punto, pero debe ser implementado en una función separada?
Es decir
void funkc_()
{
Aquí no hay acceso a RATES_TOTAL y HIGH ? ¿Y qué hacer en esta situación?
}
En general, MQL5 es realmente más complicado e incomprensible que MQL4, por supuesto "para mí"
Hola, Vyacheslav Pronenko
En la función sólo tienes que pasar lo que necesites en los parámetros: