[ARCHIVO] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 3. - página 478

 

Hola.

Me pueden ayudar a poner una expresión dll -ku, como:

datetime FT = TimeCurrent();
int      reb=12;

Gracias de antemano.

 
nemo811:

Hola.

Me pueden ayudar a poner una expresión dll -ku, como:

Gracias de antemano.

Retirado, lo tengo.
 

¡Hola!

Tal vez alguien ha tenido este problema en MQL5. A veces (en un caso de cada cien) el EA no puede eliminar una orden pendiente hasta que yo mismo elimine manualmente todas las órdenes pendientes. En este caso simplemente no se elimina ningún error. ¿O tal vez alguien más los quita? Si alguien está dispuesto a ayudar, si es necesario le enviaré el nombre de usuario y la contraseña y el número de cuenta con "pedidos atrapados". Gracias de antemano.

void OnTick()
{
Solicitud MqlTradeRequest;
MqlTradeResult resultado;
MqlTradeCheckResult checkResult;
//------ borrar el pedido ------
request.action=TRADE_ACTION_REMOVE;
//request.order=OrderGetTicket(0);
request.order=8273050; // especificar explícitamente que no se borre todo
if(OrderCheck(request,checkResult))
{
Alert(request.order);
Alert(request.action);
OrderSend(request,result);
}
si no
{
Alert("Error: ",checkResult.retcode);
}
}

 
Andreyu:

¡Hola!

¿Alguien ha tenido este problema en MQL5? A veces (en un caso de cada cien) el EA no puede eliminar una orden pendiente hasta que yo mismo elimine manualmente todas las órdenes pendientes. En este caso simplemente no se elimina ningún error. ¿O tal vez alguien más los quita? Si alguien está dispuesto a ayudar, si es necesario le enviaré el nombre de usuario y la contraseña y el número de cuenta con "pedidos atrapados". Gracias de antemano.

Te has equivocado de foro.
 
Reshetov:
Su principal problema es que iBars no carga los precios, sino el número de barras conocidas para un periodo determinado. Y, como acabo de comprobar, lo hace de forma bastante correcta tanto en el probador como en el gráfico.

no descarga, sino que devuelve los ya descargados.

Me temo que no has leído bien mi pregunta o que la he entendido mal.

¿Puede darme el código que ha utilizado para comprobar su declaración?

 
palladin:

De todos modos, esta es la pregunta,

Tengo un indicador multiperiodo.

Para optimizar los cálculos, utilizo el siguiente bucle



// TimeFrames[i] массив с периодами

for (i=0; i<NumTimeFrames; i++)

{
if (total_bars[i] != iBars(instrument, TimeFrames[i]) )
{

// тут вычисления индиктора

total_bars[i] = iBars(instrument, TimeFrames[i]);
}

}



El principal problema es que iBars no carga los precios de otros períodos que no sean el actual...

todos los trucos de MQL como IndicatorCounted y RefreshRates

sólo funcionan para el período actual, es decir, iBars toma del historial y éste sólo se carga al cambiar el período en el gráfico. ¿Qué hacer? ¿Tiene MQL alguna herramienta para cargar barras de otros periodos (diferentes al actual) en segundo plano?


p.d. espero no estar divagando ((

¿Cómo se responde sin saber que NumTimeFrames TimeFrames[i] está vacío o qué?

Escriba de forma más completa, cómo, o más bien qué leer si no hay nada. Dé el código completo, de lo contrario lo más probable es que "roa el granito de la ciencia",,,,)) if(true)continue; else return("Sleep("+7*1000*60*60+")";

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int TimeFrames[]={0,1,5,15,30,60}; 
int NumTimeFrames=ArraySize(TimeFrames);
int total_bars[]; ArrayResize(total_bars,NumTimeFrames);
string instrument="EURUSD";
for(i=0; i<NumTimeFrames; i++)
  {
   if(total_bars[i]!=iBars(instrument,TimeFrames[i]))
     {
       total_bars[i]=iBars(instrument,TimeFrames[i]);
     }
  }
 
Hola, el problema es el siguiente ejemplo a las 00.00 GMT se ponen las órdenes pendientes y a las 10.00 gmt por ejemplo hay que eliminar estas órdenes si no se han abierto. o si se abrió una, hay que dejarla y eliminar el resto? la pregunta es cómo saber si la orden se disparó o no?
 
¿Pueden decirme si hay alguna forma de hacer que OrdersHistoryTotal() sea igual a cero? ¿Es necesario reinstalar MT4? Porque si sólo abro un nuevo gráfico, no ayuda
 
CLAIN:
¿Pueden decirme si hay alguna forma de hacer que OrdersHistoryTotal() sea igual a cero? ¿Es necesario reinstalar MT4? Porque si sólo abro un nuevo gráfico, no ayuda

Para ello tienes que abrir una nueva cuenta
 
frixer:
Hola, el problema es el siguiente ejemplo a las 00.00 GMT se colocan las órdenes pendientes y a las 10.00 gmt por ejemplo estas órdenes deberían ser eliminadas si no se han abierto. O si se ha abierto una, debería dejarse y eliminar el resto? La pregunta es ¿cómo puedo saber si la orden ha funcionado o no?

Si haces un pedido pendiente, recuerda el billete. Si no hay una orden pendiente, pero hay una orden de mercado del tipo en el que se convierte la orden pendiente y sus entradas coinciden, entonces la orden pendiente se ha activado.

Por ejemplo: usted coloca una posición BuyStop. La función devuelve el billete de la orden de juego - se guarda en una variable o en una matriz.

Supongamos que tiene el billete 1.

Se comprueba si hay una orden BuyStop pendiente. Si no se encuentra, entonces se comprueba si hay una posición de compra. Si es así, compare el billete anotado con la posición de compra. Si coinciden, significa que el BuyStop pendiente se transforma en Buy de mercado.