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

 
¡¡¡Buenos días!!! ¿Me podéis decir cómo memorizar una variable para que al encender el ordenador se guarde su valor?
 
¡¡¡Gracias!!!
 

¿Ha pensado alguna vez que todos los indicadores se ajustan al precio, y no al revés?

¿Qué conclusión se puede sacar de esto? Todavía no lo sé).

El precio no depende de los índices.

Los índices dependen del precio.

 
alex12:

¿Ha pensado alguna vez que todos los indicadores se ajustan al precio, y no al revés?

¿Qué conclusión se puede sacar de esto? Todavía no lo sé).

El precio no depende de los índices.

Los índices dependen del precio.


conclusión profunda.

Los indicadores no se ajustan al precio, sino que se construyen en función del mismo.
¿Sientes la diferencia?

 

¡Por favor, ayude a un novato!

El robot no coloca stop losses, no puedo entender por qué, en el cargador escribe un error "ticket inválido para la función OrderClose"

El código en el momento de realizar una operación y colocar un stop loss:

//+------------------------------------------------------------------+
//+----------------------CONTROLANDO UNA OPERACIÓN---------------------+
//+------------------------------------------------------------------+
if (POINT_BUY >= 5)
{
if (OrdersTotal() == 0)
{
int ticket = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 5, kijun_sen-100*Point, Ask+1000*Point, "My order #", 16384, 0, Green);
}
if(ticket < 0)
{
Print("Order not set. Error - #",GetLastError());
return(0);
}
}
//+------------------------------------------------------------------+
//+-------------------------СТАВИМ СПОП ЛОСС-------------------------+
//+------------------------------------------------------------------+
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);

if (POINT_BUY < 5)
{
if (OrdersTotal() == 1)
{
OrderClose(ticket, 0.1, Bid, 5, Red);
}
}
}
return(0);
//+------------------------------------------------------------------+

 
abolk:


conclusión profunda.

Los indicadores no se ajustan al precio, sino que se construyen en función del mismo.
¿siente la diferencia?

Por supuesto que hay una diferencia:

El precio está en primer lugar, y

Indios en Segunda = y nunca al revés.

Esa es la diferencia. Estos últimos siempre dependen de los primeros.

Sin Price, no hay pavos. El precio alimenta a los pavos :)

 
Xaoss1990:

¡Por favor, ayude a un novato!

El robot no coloca stop losses, no puedo entender por qué, en el cargador escribe un error "ticket inválido para la función OrderClose"

El código está en el lugar donde coloco una operación y coloco un stop loss:

//+------------------------------------------------------------------+
//+---------------------ЗАКЛЮЧАЕМ СДЕЛКУ ПОКУПКИ---------------------+
//+------------------------------------------------------------------+
si (POINT_BUY >= 5)
{
if (OrdersTotal() == 0)
{
int ticket = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 5, kijun_sen-100*Point, Ask+1000*Point, "My order #", 16384, 0, Green);
}
if(ticket < 0)
{
Print("Orden no establecida. Error #",GetLastError();
return(0);
}
}
//+------------------------------------------------------------------+
//+-------------------------СТАВИМ СПОП ЛОСС-------------------------+
//+------------------------------------------------------------------+
OrderSelect(0, SELECT_BY_POS, MODE_TRADES);

si (POINT_BUY < 5)
{
if (OrdersTotal() == 1)
{
OrderClose(ticket, 0.1, Bid, 5, Red);
}

}
}
return(0);
//+------------------------------------------------------------------+

En primer lugar, debe seleccionar un pedido https://docs.mql4.com/ru/trading/OrderSelect.

Si quiere cerrar una orden abierta, defina su tipo,

y dependiendo de su tipo, cerrarlo al precio de compra o de venta.


notado - hay un select, entonces en vez de ticket se debería escribir OrderTicket()


En general, el código es un poco feo: seleccionar una orden, luego comprobar el número de órdenes, y luego eliminar la orden que está abierta.

órdenes abiertas: busque entre las órdenes desde la primera hasta la última - encuentre la correcta en la búsqueda - y luego elimínela


Además, ¿por qué utilizar la función de orden de cierre si la tarea es modificar
 
abolk:

primero tiene que seleccionar la orden https://docs.mql4.com/ru/trading/OrderSelect.

Si hay que cerrar una orden abierta, defina su tipo,

y dependiendo de su tipo, cerrarlo al precio de compra o venta.


Me he dado cuenta de que hay un select, entonces en lugar de ticket se debería escribir OrderTicket()


En general, el código es un poco feo: seleccionar una orden, luego comprobar el número de órdenes, luego eliminar la orden que está abierta.

Por lo general: recorre los pedidos desde el primero hasta el último - encuentra el correcto en la búsqueda - y luego elimínalo


Además, ¿por qué utilizar la función de orden de cierre si la tarea es modificar

Soy un novato, sólo estoy aprendiendo)))) Gracias por los consejos.
 


Chicos, ¿podéis decirme por qué puede haber un error de no poder abrir un indicador en un EA?

Esta condición se cumple:

-Lista de parámetros (si es necesario). Los parámetros transmitidos deben coincidir con el orden de declaración y el tipo de variables externas (extern) del indicador personalizado.

int Criterion()                        // Пользовательская функция
  {
   int P= Price ;                   // 
   int L= Length;            // 
      int D=  Displace;                 //
   int F= Filter;              // 
   int C= Color ;                 // 
   int CB= ColorBarBack;              // 
   double Dev = Deviation;   
   
   double
   Cycle=4,
   M_0, M_1,                           // Значение MAIN на 0 и 1 барах
   S_0, S_1,                           // Значение SIGNAL на 0 и 1 бар
   St_M_0, St_M_1,                     // Значение MAIN на 0 и 1 барах
   St_S_0, St_S_1;                     // Значение SIGNAL на 0 и 1 бар
   
//--------------------------------------------------------------- 4 --
   // Параметры технич. индикат:
   //--------------------------------------------------------------
   double MA=iCustom(NULL,0,"NonLagMA_v5",P,L,D,F,C,CB,Dev,0,1);
   double Up=iCustom(NULL,0,"NonLagMA_v5",P,L,D,F,C,CB,Dev,1,1);
   double Dw=iCustom(NULL,0,"NonLagMA_v5",P,L,D,F,C,CB,Dev,2,1);
...