Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 1056
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
Por favor, ayúdenme, no encuentro respuesta a una simple pregunta.
intTimeSeconds(,,,,,)Devuelve el número de segundos transcurridos desde el inicio del minuto de la hora especificada.
Si inserto la hora de apertura del bar en la función
TimeSeconds(iTime(NULL,PERIOD_M5,0))
¿cómo puedo saber que faltan 10 segundos para que se cierre la barra?
Bien, resta el tiempo transcurrido del número de segundos del periodo...
Porque hay que leer la documentación hasta el final. Y hay un ejemplo en él
En la documentación, creo que estos paréntesis "array[]" son innecesarios porque se puede entender por la propia palabra que es un array. :)
Así que resta el tiempo transcurrido del número de segundos en un período...
Muchas gracias, llevo cinco años usando mql4 y no sabía que existía esa función, muchas gracias de nuevo ))
Por desgracia, no sirvió de nada, en la quinta esta comprobación no funciona...((
tampoco sé qué hace la variable que llamé huin?
Muchas gracias, llevo cinco años usando mql4 y no sabía que existía esa función, muchas gracias de nuevo ))
Por desgracia, no sirvió de nada, en la quinta esta comprobación no funciona...((
Así que debería haber especificado... El principio es el mismo.
También puede utilizar CopyTime()...
No... No es así.
¡¡¡¡GUROS DÍGANME!!!! ¿Por qué no se abre una orden de venta? ????
//+------------------------------------------------------------------+
//| Nombre del proyecto ||
//| Copyright 2012, CompanyName |
//| http://www.companyname.net |
//+------------------------------------------------------------------+
#propiedad estricta
//+------------------------------------------------------------------+
//| Función de inicialización de expertos |
//+------------------------------------------------------------------+
entrada doble L=0,01;
input int TakeProfit = 150;
input int StopLoss = 150;
entrada int Magia = 0;
//+------------------------------------------------------------------+
int b=0;
int s=0;
//+------------------------------------------------------------------+
int OnInit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Función de garrapata experta ||
//+------------------------------------------------------------------+
void OnTick()
{
//+------------------------------------------------------------------+
//| Abrir una orden de compra |||
//+------------------------------------------------------------------+
si(b==0)
{
b=Mi_diversión_b();
}
//+------------------------------------------------------------------+
//| Abrir una orden de venta |
//+------------------------------------------------------------------+
si(s==0)
{
double preciob=Mi_diversión_p();
Comentario("El precio de la orden de compra",preciob);
if(preciob==Oferta) /*No se ejecuta por qué*/.
{
s=Mi_diversión_s(preciob);/*NO EJECUTADO, POR QUÉ//
}
}
}
//+------------------------------------------------------------------+
//| función de desinicialización experta |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
}
//+------------------------------------------------------------------+
//| Función personalizada para abrir el primer pedido (compra) ||
//+------------------------------------------------------------------+
int Mi_diversión_b()
{
b=OrderSend(_Symbol,0,0.01,Ask,0,0,",414,0,clrBlue);
volver(b);
}
//+------------------------------------------------------------------+
//| Función definida por el usuario para determinar el precio de la primera orden (compra) |
//+------------------------------------------------------------------+
double Mi_diversión_p()
{
doble pb=0;
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)==true)
if(OrderMagicNumber()==414)
{
pb=Precio abierto del pedido();
}
return(pb);
}
//+------------------------------------------------------------------+
//| Función personalizada para abrir la primera orden (vender) |
//+------------------------------------------------------------------+
int Mi_diversión_s(double preciob)
{
s=EnviarOrden(_Símbolo,1,0.01,preciob,0,0,",0,0,clrRed);
volver(b);
}
//+------------------------------------------------------------------+
Bueno, deberías haber especificado... El principio es el mismo
También puede utilizar CopyTime()...
No... Es un poco diferente.
Gracias, ha funcionado. Variante correcta:
(TimeCurrent() - (datetime) SeriesInfoInteger (NULL , PERIOD_M5 , SERIES_LASTBAR_DATE))>290
¡¡¡Gracias de nuevo, ahora podemos eliminar montañas de código y utilizar esta línea!!! ))
Gracias, ha funcionado. Variante correcta :
(TimeCurrent() - (datetime) SeriesInfoInteger (NULL , PERIOD_M5 , SERIES_LASTBAR_DATE))>290
¡¡¡Gracias de nuevo, ahora podemos eliminar montañas de código y utilizar esta línea!!! ))
Al parecer, no importaba si era el tiempo transcurrido desde la apertura del bar o el tiempo hasta el final del mismo. Esta variante dará exactamente el tiempo transcurrido desde el inicio de la barra y no el tiempo hasta el final de la barra.
¿Y cuál es el número 290? ¿Por qué tenemos que comprobar más de 290?
Aparentemente no importaba si era el tiempo transcurrido desde el inicio de la barra o el tiempo hasta el final de la barra. Esta opción daría exactamente el tiempo transcurrido desde el inicio de la barra, no el tiempo hasta el final de la barra.
¿Cuál es el número 290? ¿Por qué tenemos que comprobar más de 290?
Error de compilación (2): Magia - identificador no declarado
Por favor, ayúdenme a corregir
bool CheckExists(int Tipo)
{
bool Result = True;
for(int = 0; i < OrdersTotal(); i++)
if(OrderSelect(i, SELECT_BY_POS))
if(OrderType() == Type && OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
if(OrderOpenTime() >= Time[0])
Resultado = False;
for(i = 0; i < OrdersHistoryTotal(); i++)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
if(OrderType() == Type &&& OrderOpenTime() >= Time[0]
&& OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
Result = False;
}
return(Result);
}