Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 449

 
abeiks:

¿Cuántas barras del gráfico actual desde la última hora conocida del servidor (TimeCurrent()) hasta un día concreto por la primera barra de apertura deese día (TimeDay(Time[80])?


iBarShift debería ayudar
 
pu6ka:

iBarShift debería ayudar

He luchado todo el día y todavía no lo he conseguido. Experiencia equivocada para mí y más. :)

¿Puede alguien escribir esta función?

 
abeiks:

He luchado todo el día y todavía no lo he conseguido. Experiencia equivocada para mí y más. :)

¿Puede alguien escribir esta función?

     int n = 0;                                           // индекс дня, в данном случае 0 - текущий день
datetime DayTime = iTime(NULL, PERIOD_D1, n);             // Начало дня "n" в секундах
     int cb = iBarShift(NULL,0,DayTime);                  // Получим на текущем ТФ индекс бара
 
Stells:

Buenas tardes.

No entiendo cómo funciona esto

03:00:24 '9473965': orden de venta de 0,01 GBPUSD de apertura a 0,00000 sl: 1,65314 tp: 0,00000 fallida [S/L o T/P no válidos].

con este código

por qué el precio de apertura es cero


¿Fue esta noche? Entonces lo más probable es que su stoploss estuviera por debajo del precio de apertura y para una orden de venta el precio del stoploss debería ser más alto.
 
pu6ka:


Está un poco mal. Necesito obtener el inicio del día "n" en segundos específicamente de esta función TimeDay(Time[80]), pero no me funciona.

 

Quería evaluar la historia de los agujeros.
Hizo esto:

int start() 
{
  if(Time[0] > prev_time ) 
  {
    if( iTime(NULL, PERIOD_M1,0)-iTime(NULL, PERIOD_M1,1) > 200000)
    {
      n=n+1;
      Print("n =",n ,"");
    }
    prev_time = Time[0];
  } 
  
  return (0);
}

¿Entiendo correctamente que iTime cuenta en segundos y 200.000 = 2,31 días?

¿Es posible hacerlo? (Parece que funciona, sólo se han detectado 6 piezas)

 
abeiks:

Está un poco mal. Necesito obtener el inicio del día "n" en segundos específicamente de esta función TimeDay(Time[80]), pero no me funciona.


Específicamente de esta función TimeDay(Time[80]), tengo que hacer algunos cálculos intermedios más. Todavía tienes la barra de tiempo [80]. La forma más sencilla sería esta:

     int n = iBarShift(NULL,PERIOD_D1,Time[80]);          // индекс дня, которому принадлежит время бара - Time[80]
datetime DayTime = iTime(NULL, PERIOD_D1, n);             // Начало дня "n" в секундах
     int cb = iBarShift(NULL,0,DayTime);                  // Получим на текущем ТФ индекс первого бара дня "n"
 
sv.:

He estado pensando en evaluar la historia de los agujeros.

Aquí hay un script muy útil, lo he estado usando durante años. Si se carga el archivo de cotizaciones, hay que cambiar dos parámetros para evitar hurgar en la configuración. Están resaltados en la captura de pantalla con un marco rojo.

Para lanzarlo sobre cualquier gráfico y esperar un par de segundos, hasta que aparezca el mensaje donde está el archivo con el informe.

 
addict:

la orden de compra se abre una vez, pero para la venta el número de órdenes vuelve a ser infinito


Escriba una función como la siguiente

int inicio()

if( OrdersTotal()==0 && CountTrades()==0)

{

OrderSend ("EURUSD",OP_BUYLIMIT,l,1.36000,5,0,1.36000+tp*Point,"my order",1);

OrderSend ("EURUSD",OP_BUYSTOP,l,1.36000,5,0,1.36000+tp*Point,"my order",1);

si no

{
OrderSend ("EURUSD",OP_SELLLIMIT,l,1.36000,5,0,1.36000-tp*Point,"my order",2);
OrderSend ("EURUSD",OP_SELLSTOP,l,1.36000,5,0,1.36000-tp*Point,"my order",2);
}

}

return(0);

}

//+------------------------------------------------------------------+

int CuentaOfertas()

{

int cuenta = 0;

for(int trade = OrdersTotal()-1; trade >=0; trade--)

{

OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);

if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)

cuenta++;

}

}

return(count);

 
pu6ka:


Específicamente a partir de esta función TimeDay(Time[80]), hay que hacer algunos cálculos intermedios más. Todavía tienes el tiempo de la barra detiempo[80]. Sería más fácil hacerlo así:


Gracias. :)

Razón de la queja: