![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
¿cómo es posible que en un simple cálculo se redondee un resultado?
¿cómo es posible en un cálculo simple redondear a un resultado?
Depende de lo que quieras hacer:
double MathRound( double valor)
Devuelve el valor redondeado al entero más cercano del valor numérico especificado.
double MathFloor( double x)
La función MathFloor devuelve un valor numérico que representa el mayor entero que es menor o igual que x.
double MathCeil( double x)
La función MathCeil devuelve un valor numérico que representa el menor número entero que es mayor o igual que x.
double NormalizeDouble( double valor, int dígitos)
Redondea el valor de punto flotante a la precisión dada. Devuelve el valor normalizado del tipo double.
Hola,
Me gustaría que me ayudaran a programar una entrada adicional a este ea.
Es un sistema básico de grid/mart que coloca órdenes pendientes por encima y por debajo del precio inicial en incrementos iguales donde el tp para las órdenes de compra es el mismo valor que el sl para las órdenes de venta y viceversa.
Por lo que he podido averiguar, actualmente calcula el tp/sl como (4 * incremento de pips) desde el precio al que se inicia el ea.
Me gustaría una entrada que me permitiera ajustar el tp/sl por X número de pips.
es decir (4 x incremento de pips) + X,
gracias por su ayuda.
Se busca ayuda para esperar a las barras x
Hola a todos
cómo se puede programar lo siguiente :
si se cierra la última Orden, esperar x-Bars para abrir una nueva Orden ?
Gracias.
Saludos
derumuro
Contar barras
Estoy tratando de hacer que mi EA cuente el número de barras dentro de un período determinado (es decir, las últimas 20 barras) que cerraron al alza y a la baja. Se me ocurrió esta sentencia while pero no funciona, siempre imprime Bull Bars:0 Bear Bars:20. ¿Alguna idea de lo que estoy haciendo mal?
// Contar barras alcistas y bajistas
double open, close;
int barras_alcistas=0, barras_bajistas=0;
int bar_count=20; // Barras a contar
if(Volume[0] == 1){ // Sólo comprueba la apertura de la nueva barra
int barras=0;
while(bars < bar_count){
open=iOpen(NULL,0,bars);
close=iOpen(NULL,0,bars);
if(open<close){bull_bars++;} else {bear_bars++;}
barras++;
}
Print("Barras alcistas: ", bull_bars, " Barras bajistas: ", bear_bars);
}
err, lo he resuelto. He cambiado mi while por este y funciona![](https://c.mql5.com/forextsd/smiles/smile.png)
while(bar_count > i){
open=iOpen(NULL,0,i);
close=iClose(NULL,0,i);
if(open<close){bull_bars++;}
if(open>close){bear_bars++;}
i++;
}
Necesito ayuda para escribir el ea - Factor de tiempo para cerrar la orden
si la orden tuvo lugar, take profit=100pips & stop lost=100pips esta escrito en el ea,
me gustaria escribir el factor de tiempo additonal (control) para cerrar la orden como abajo:-
dice que la orden es de compra
-----------------------------
1) si en la primera hora, un precio repentino de 80 pips sucede en 10 minutos dentro de esta hora, cierre la orden;
2) si en la segunda hora, un precio repentino de 70 pips sucede en 10 minutos dentro de esta hora, cierre la orden;
3) si en la tercera hora, un precio repentino de 60 pips sucede en 10 minutos dentro de esta hora, cierre la orden;
4) si en la 4ª hora, el beneficio es de 50 pips, cierre la orden;
5) si en la primera hora, un precio repentino de 60 pips ocurre en 10 minutos dentro de esta hora, cierre la orden;
6) si en la segunda hora, una repentina caída del precio de 70 pips ocurre en 10 minutos dentro de esta hora, cierre la orden;
7) si en la tercera hora, una repentina caída del precio de 80 pips ocurre en 10 minutos dentro de esta hora, cierre la orden;
8) si en la 4ª hora, pierde a 50 pips, cerrar la orden;
¿Puede alguien ayudarme a escribir esto? Tengo problemas para escribir el factor tiempo en la orden de cierre.
Gracias
Rgds,
Hola Chicos,
Tengo una pregunta para ustedes....¿Saben cuál es el código para poner en un Asesor Experto para cerrar todas las operaciones abiertas a cierta hora?...por ejemplo tengo 5 operaciones abiertas y a las 16 GMT el EA debería cerrar todas las operaciones abiertas y no debería abrir nuevas operaciones hasta el día siguiente.
¡Gracias por su ayuda!
Hola mauro269,
if(Hour() = 16) cerrar Orden ( GMT = 16 +/- Servertime, ejemplo 16 +1 = 17) o ver https://www.mql5.com/en/code/8075
y
if(Hour() = 8) abrir nueva Orden
Aquí hay más información: Documentación MQL4
Saludos
derumuro
Al tocar en lugar de al cerrar
BBands_stop_v2 y ###Gann_HiLo_Activator_v2### - ¿puede alguien mejorarlos por favor?
Hay pocos indicadores que cambien su gráfico al tocarlo, sino que la mayoría esperan a que el precio se cierre más allá de su gráfico actual.
Las excepciones son -
El SAR Parabólico es uno.
Bat ATR v2 es uno en la configuración correcta (usando CloseBase=false).
Para mí esto significa que la mayoría de los indicadores son menos fiables.
Cuanto más grande es el marco de tiempo, mayor es el riesgo. Si usted espera una señal clara es a menudo en el otro extremo de una ruptura. Si usted lo toma - es a menudo la peor entrada.
¿Puede alguien modificar BBands_stop_v2 y ###Gann_HiLo_Activator_v2### para que tengan una configuración extra como la que tiene Bats_v2 (usando CloseBase=false), para que cambien el gráfico al tocarlo, por favor?
Los dos cambios anteriores serían un buen comienzo - pero la lista de indicadores que creo que no tienen esta capacidad es enorme
All_Bands_Stop
PriceChannel_Stop_v6.
Todas las envolventes de tendencia.
TrendEnvelopes_v2.
MT4-LevelStop-Reverse-vB0-4.
#MTF_BBands_Stop_v1
ATRStops_v1.1_MTF
ATRStops_v1.1
mtfatrstops
BrainTrend1stopline
BrainTrend2Stopline
ChandelierStops V1
VolitilityPivot
VoltyChannel_Stop_v2
delta-stop
hi-lo_mod
MTF_BrainTrend1
NRTRATRStops
VoltiCanales
etc
etc.....