Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 738
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
El mensaje sigue apareciendo en el minuto 12.
Insertar la impresión, al principio de la función donde se rellena el array
y mostrar el número de valores en la segunda dimensión
Puedo decir de todo que NomNews entra en el bucle While ya en un estado mayor que 999. Entonces tienes que averiguar por qué ocurre y restablecer esta variable en algún lugar.
Para comprobarlo, escríbalo al principio del bucle:
Sí, en el minuto 11 la impresión es de 1000.
Insertar la impresión, al principio de la función donde se rellena el array
y mostrar el número de valores en la segunda dimensión
Lo inserté al principiodel bucle While y obtuveRango infinito= 1000. ¿Lo inserté en el lugar equivocado?
¿Qué es este número (o función?): datetime TimeNewsFunck(int nomf)
{
string s=NewsArr[0][nomf];
string time=StringConcatenate(StringSubstr(s,0,4),".",StringSubstr(s,5,2),".",StringSubstr(s,8,2)," ",StringSubstr(s,11,2),":",StringSubstr(s,14,4));
return((datetime)(StringToTime(time) + GMTplus*3600))
}
¿Y de dónde saca el valor de int nomf? No pude encontrarlo.
Lo inserté al principiodel bucle While y obtuveRango infinito= 1000. ¿Lo puse en el lugar equivocado?
¿Y qué es este número (o función): datetime TimeNewsFunck(int nomf)
{
string s=NewsArr[0][nomf];
string time=StringConcatenate(StringSubstr(s,0,4),".",StringSubstr(s,5,2),".",StringSubstr(s,8,2)," ",StringSubstr(s,11,2),":",StringSubstr(s,14,4));
return((datetime)(StringToTime(time) + GMTplus*3600))
}
¿Y de dónde saca el valor de int nomf? No lo he encontrado.
Y luego está la función que he intentado pero no he conseguido averiguar. ¿Puede ser el origen del problema?
Y luego hay una función que no he podido descifrar, por más que lo he intentado. ¿Quizá ahí radica el problema?
Sólo el autor lo descubrirá por sí mismo. Será mejor que envíes el código de OnTick()
Sí, en el minuto 11 dio la impresión 1000.
Intenta sustituir
con esta línea.
Exceso((2*psd*usd)*((2*psd*usd)-C))/(C-1)) en la fórmula.
Exponenciación: ^0,5 no es *0,5
Si no hay una sola operación en el símbolo buscado y majik, o no hay una sola ganancia o pérdida, o sólo hay un par (C=1), obtendremos la división por 0.
Antes de la fórmula propiamente dicha, debe comprobar que psd y usd son > 0, y que C !=1
Los pares rentables se calculan con beneficio > 1, pérdida < 1, con beneficio=1 no se analizan, es decir, el 1 también tiene que incluirse en algún lugar de este o aquel grupo.
En su función, sería mejor seleccionar primero los números de transacción que coincidan con el símbolo y el número mágico y luego comprobar si su número ha cambiado, si es así - recalcular zn, si no - devolver zn (zn en este caso no se pone a cero y comprobar != 0 no será necesario al imprimir)
El búho deja de funcionar, porque depende de las variables ww y nn, y cuando su función funciona, cambian y rompen el algoritmo del búho.
No se habría compilado nada si hubiera habido un error de diseño del código.Sólo puedo decir gracias. Este es el único lugar de Runet donde me ayudaron.
Ahora la impresora genera lo siguiente "Stop_Ma_v_5.1 EURUSD,M15: == Z-count equals = -nan(ind)" . ¿Podría indicar qué significa y el código que debe devolver el número?
Código :
Chicos de Mql5, ¿podéis ayudarme a hacer una solicitud para cerrar una posición en una cuenta de cobertura? Situación: abierta la posición de COMPRA, necesitamos cerrarla con Límite de Venta. Pregunta: ¿Cómo puedo escribir correctamente una solicitud, para cerrar exactamente la posición elegida, y no para abrir nuevas VENTAS bloqueando las COMPRAS? Por favor, escriba un código con comentarios. Gracias de antemano.
Cierre por una orden abierta de otra orden abierta para el mismo símbolo pero en sentido contrario.
OrdenarCerrarPor(
intticket,// número de orden a cerrar
intopposite,// número de la orden opuesta
colorarrow_color// color
);
Parámetros
billete
[in] Número de orden único de la orden que se va a cerrar.
frente a
[Un número de secuencia único de la orden opuesta.
color_flecha
[El color de la flecha de cierre en el gráfico. Si este parámetro no está presente o su valor es CLR_NONE, la flecha no se muestra en el gráfico.
Valor devuelto
Devuelve true si la función tuvo éxito o false si hubo un error. Para obtener la información del error, llame a GetLastError().
Ejemplo:
if(iRSI(NULL,0,14,PRICE_CLOSE,0)>75)
{
OrderCloseBy(order_id,opposite_id;)
return(0);
}
P.D. Este hilo sólo analiza MQL4
Sólo puedo decir gracias. Este es el único lugar en Runet, donde ayudaron.
Ahora la impresora genera lo siguiente "Stop_Ma_v_5.1 EURUSD,M15: == Z-Account Equals = -nan(ind)". ¿Podría indicar qué significa y el código que debe devolver el número?
Código :
El cierre de una orden abierta por otra orden abierta para el mismo instrumento, pero en sentido contrario.
boolOrdenarCerrarPor(
intticket,// número de orden a cerrar
intopposite,// número de la orden opuesta
colorarrow_color// color
);
Parámetros
billete
[Un número secuencial único de la orden que se está cerrando.
frente a
[Un número de secuencia único de la orden opuesta.
color_flecha
[El color de la flecha de cierre en el gráfico. Si falta este parámetro o su valor es CLR_NONE, la flecha no se muestra en el gráfico.
Valor devuelto
Devuelve true si la función tuvo éxito o false si hubo un error. Para obtener la información del error, llame a GetLastError().
Ejemplo:
if(iRSI(NULL,0,14,PRICE_CLOSE,0)>75)
{
OrderCloseBy(order_id,opposite_id;)
return(0);
}
P.D. Este hilo sólo analiza MQL4
No. Cualquier pregunta sobre mql4 así como sobre mal5 se maneja aquí en este hilo, porque el propósito principal era ayudar no sólo con algoritmos y códigos sino también facilitar la migración de mql4 a mql5.