[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 388

 
Chiripaha:
Me pregunto qué pasará. : )) Normalmente estos agujeros se forman justo en el servidor del propio broker y en intentos similares de arreglarlos no he tenido éxito. Si el corredor no lo arregla, no hay nada que bombear.
¡Pero en otra MT4 en la Demo del mismo broker no hay ningún agujero!
 
borilunad:
¡Pero en otra MT4 en demo del mismo broker no hay ningún agujero!

la palabra clave es demo.

He tenido docenas de estos casos con diferentes corredores... Esta es una situación común.

 
Escuchen, profesionales. No sois suficientes y os estáis enfrentando, estáis llegando al punto del cuerpo a cuerpo. ¿Acaso aprecia todo el contenido local? ¿Quieres que te enseñe los foros donde no hay tales profesionales?Integer está caliente en sus manos, he estado en una pelea antes, lo conozco. Comprendo lo que tenemos y lloro por lo que no tenemos. Pero golpear a toda una persona por el hecho de que se equivocó en una cosa, a pesar de que cada uno de ustedes tiene el trabajo, y bastante bueno - por lo menos irrazonable, por no decir peor.
 
sdm:
Necesito ayuda 1 cómo saber el precio de la orden de venta abierta o pendiente 2 cómo comprobar si hay una orden de venta abierta o pendiente al precio que he especificado



Sólo con revisar todos los pedidos. Por ejemplo, así:

#property copyright "Copyright 2013, Mikhail <Sepulca> Kozhemyako"
#property link      "ua3xcm@obninsk.com"
extern int MAGIC=1234;
int init()
 {
  return(0);
 }
int deinit()
 {
  return(0);
 }
int start()
 {
  int NoL,NoS,NoBS,NoSS,NoBL,NoSL,n,i;
  double MaxSellOpenPrice,MaxSellStopOpenPrice,MaxSellLimitOpenPrice,MinBuyOpenPrice,MinBuyLimitOpenPrice,MinBuyStopOpenPrice;
  NoL=0;NoS=0;NoBS=0;NoSS=0;NoBL=0;NoSL=0;
  MaxSellOpenPrice=0.0;MaxSellStopOpenPrice=0.0;MaxSellLimitOpenPrice=0; MinBuyOpenPrice=99999999.9;MinBuyStopOpenPrice=9999999.9;MinBuyLimitOpenPrice=9999999.9;
// Перебираем все ордера
  n=OrdersTotal();
  for (i=n-1; i>=0; i--)
   {
    if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
     {
      if(OrderMagicNumber()==MAGIC && OrderSymbol()==Symbol())
       {
        if(OrderType()==OP_BUY) 
         {
          NoL++;MinBuyOpenPrice=MathMin(MinBuyOpenPrice,OrderOpenPrice());
         }
        if(OrderType()==OP_SELL)
         {
          NoS++;MaxSellOpenPrice=MathMax(MaxSellOpenPrice,OrderOpenPrice());
         }
        if(OrderType()==OP_BUYSTOP) 
         {
          NoBS++;MinBuyStopOpenPrice=MathMin(MinBuyStopOpenPrice,OrderOpenPrice());
         }
        if(OrderType()==OP_SELLSTOP)
         {
          NoSS++;MaxSellStopOpenPrice=MathMax(MaxSellStopOpenPrice,OrderOpenPrice());
         }
        if(OrderType()==OP_BUYLIMIT) 
         {
          NoBL++;MinBuyLimitOpenPrice=MathMin(MinBuyLimitOpenPrice,OrderOpenPrice());
         }
        if(OrderType()==OP_SELLLIMIT)
         {
          NoSL++;MaxSellLimitOpenPrice=MathMax(MaxSellLimitOpenPrice,OrderOpenPrice());
         }
       }
     }
   }
// Смотрим чего есть в наличии
  if(NoL>0)// Если есть активные лонги
   {
   }
  if(NoS>0)// Если есть активные шорты
   {
   }
  if(NoBL>0)// Если есть лонги-отложеннники лимитники
   {
   }
  if(NoSL>0)// Если есть шорты отложенники лимитники
   {
   }
  if(NoBS>0)// Если есть лонги-отложенники стоповые
   {
   }
  if(NoSS>0)// Если есть шорты отложенники стоповые
   {
   }
// Соответственно в  переменных получаете мин/макс цену.
  return(0);
 }
 
borilunad:

Gracias. Pero hay puestos vacantes, ¿o eso está bien? Lo intentaré ahora.

Lo siento, ¿cómo puedo borrar sólo desde el principio del agujero? Se puede borrar todo en F2, pero en cuanto pulso M1, ¡todas las citas aparecen inmediatamente con el mismo agujero! Entonces, ¿cómo se borra sólo desde el principio del agujero?


No pasará nada con los puestos. Desde el comienzo del agujero - vea a qué hora comienzan los agujeros, en la tabla de historia hay una columna con la fecha, úsela para mirar hacia arriba desde la fecha deseada (usando la tecla Shift). El archivo de citas es Menú principal - Herramientas - Archivo de citas.
 
Integer:

No pasará nada con los puestos. Desde el comienzo del agujero - vea a qué hora comienzan los agujeros, en la tabla de historia hay una columna con la fecha, úsela para mirar hacia arriba desde la fecha deseada (usando la tecla Shift). El archivo de citas está en Menú principal - Herramientas - Archivo de citas.
Gracias Dmitriy! Ya he dado las gracias por encima y he informado de lo que tengo! No sé cómo, pero lo principal es que hay 0 errores y todas las comillas están en su sitio. ¡Pero estos volúmenes causan errores todo el tiempo! ¿Qué tal si no los usas? No los utilizo en mi código. Gracias de nuevo.
 

Tengo nombres de tipo cadena - h0 h1 h2 etc. Dependiendo del nombre encontrado, necesito hacer una enumeración swith(Nombre).

¿Cómo hacerlo correctamente?

Intenté usar el preprocesador, pero no funcionó. : (

#define h0   0
#define h1   1
#define h2   2
#define h3   3      

      string Имя_Остатке;

      switch (Имя_Остатке)
         {
          case h0:  break;
          case h1:  break;
          case h2:  break;
          case h3:  break;
         }
 
No puedes, el interruptor sólo funciona con ints. Pon los nombres en un array, y opera con índices.
 
FAQ:
No funcionará, el conmutador sólo funciona con ints. pon los nombres en un array, y opera con índices.

¡Muchas gracias!

Lo tengo - ¡Lo tengo! : )))) Es decir, a través de una matriz.

 

Desgraciadamente, los 1minutos han vuelto a desaparecer del todo, sólo están ahí en la carta, y en el cuaderno de bitácora está garabateando cada décima de segundo:

15:55:39 Gestor de memoria: no puede asignar 206924212 bytes de memoria
15:55:39 HistoryBase: no hay suficiente memoria 'EURUSD1' [4702734 bares]
15:55:39 Gestor de memoria: no puede asignar 206924212 bytes de memoria
15:55:39 HistoryBase: no hay suficiente memoria 'EURUSD1' [4702734 bares]
15:55:39 Gestor de memoria: no puede asignar 206924212 bytes de memoria
15:55:39 HistoryBase: no hay suficiente memoria 'EURUSD1' [4702734 bares]

¡500й!