Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1534
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
Así es como se cierra el pedido
Haz lo que escribí arriba...
O bien, publique el código de OnTick()
Así es como se cierra el pedido
Esta estructura debe ser
Esta estructura debe ser
Si no me equivoco, se puede escribir de la siguiente manera
Bueno, gracias por el consejo, lo comprobaré esta noche e informaré más tarde.
si se establece UseTimeLimit en la configuración al iniciar el búho, entonces
esta función es mejor en OnInit() en lugar de OnTick()
Si no me equivoco, se puede escribir así
En realidad lo escribo así.
if(TimeHour(time[i])>=Time_Start&&TimeHour(time[i])<TimeFinish)
o incluso más simple
if(Hour()>=Time_Start&&Hour()<TimeFinish)
Buenas tardes, ¿podrían decirme cómo promediar correctamente la línea del indicador? La curva básica con periodo Per_1 se dibuja normalmente ( Buffer_1[]), hasta que añado un bloque de promediado simple con Buffer_2[] con periodo de promediado Per_2.
int OnCalculate(parámetros por defecto)
{
int i, j, límite;
if(rates_total <= Per_1)
return(0);
//La última barra calculada será recalculada
limit = rates_total - prev_calculated - Per_1;
if(prev_calculado > 0)
límite++;
//calcular y rellenar los buffers de los indicadores
for(i=0; i < límite; i++)
{
//Calcular la línea principal del indicador
Buffer_1[i] = Fórmula de la curva
double Suma = 0;
for(j = i; j < Per_2 + i; j++)
{
//Calcular la línea de promedio
Suma += Buffer_1[j];
Buffer_2[i] = Suma / Per_2;
}
}
return(rates_total);
}
¡Buenas tardes!
Insertar código
Aquí parece estar la respuesta a su preguntaEse es el problema, sólo abre y cierra las órdenes starthour->stophour
Porque no se puede negociar después del stophour
Llevo mucho tiempo escribiendo la lógica de la apertura antes del cierre, el arrastre y otros mantenimientos de posición. En la mayoría de los casos es cierto, antes de abrir algo más, hay que comprobar lo que ya está abierto.
Tu lógica es correcta, sólo tienes que intercambiar los bloques:
Insertar código
Aquí parece estar la respuesta a su pregunta¡Genial! Funciona, ¡gracias!