Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 611

 
Alexander Mikryukov:

Buenas tardes. ¿Puedes decirme qué pasa? Quiero colorear los niveles de Fibo en diferentes colores, pero no están coloreados de ninguna manera. A continuación se muestra el código de lo que estoy haciendo. Gracias de antemano por la ayuda.

Hay una respuesta en la página 603.

Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам
  • 2018.08.18
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 
Alexey Viktorov:

La página 603 tiene la respuesta.

¡¡¡¡Pero por qué no funciona, ya que parece estar escrito correctamente!!!!

       ObjectCreate(0,"Fb_"+InpName,OBJ_FIBO,window,time1,price1,time2,price2);
            ObjectSet("Fb_"+InpName,OBJPROP_COLOR,clrDimGray);
            ObjectSet("Fb_"+InpName,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("Fb_"+InpName,OBJPROP_LEVELS,levels);
            ObjectSet("Fb_"+InpName,OBJPROP_RAY_RIGHT,false);
            for(int k=0;k<levels;k++)
              {
               //--- значение уровня
               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,k,values[k]);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,k,colors[k]);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,k,styles[k]);
               ObjectSetFiboDescription("Fb_"+InpName,k,deskript[k]);
              }
 
Alexander Mikryukov:

¡¡¡¡Pero por qué no funciona, ya que parece estar escrito correctamente!!!!

Hubo una discusión aquí. Por favor, no repitas la misma pregunta en todo el foro.

 
Esto tampoco funciona (:
            ObjectCreate(0,"Fb_"+InpName,OBJ_FIBO,window,time1,price1,time2,price2);
            ObjectSet("Fb_"+InpName,OBJPROP_COLOR,clrDimGray);
            ObjectSet("Fb_"+InpName,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("Fb_"+InpName,OBJPROP_LEVELS,6);
            ObjectSet("Fb_"+InpName,OBJPROP_RAY_RIGHT,false);
           
               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,0,1);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,0,clrDarkGray);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,0,STYLE_DOT);
               ObjectSetFiboDescription("Fb_"+InpName,0,"100");

               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,1,0.236);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,1,clrGreen);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,1,STYLE_DOT);
               ObjectSetFiboDescription("Fb_"+InpName,1,"23.6 [%$]");

               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,2,0.382);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,2,clrRed);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,2,STYLE_DOT);
               ObjectSetFiboDescription("Fb_"+InpName,2,"38.2 [%$]");
 
//+-------------------------------------------------------------------------------------+
//| Savin.mq4 |
//| Copyright 2014, Gnatenko Global Group, VADIMBETMAN Inc.
//| http://vadimbetman.ucoz.com |
//+-------------------------------------------------------------------------------------+
#property copyright "Copyright 2014, Gnatenko Global Group, VADIMBETMAN Inc.
#enlace de propiedad "http://vadimbetman.ucoz.com"
//+-------------------------------------------------------------------------------------+
//externamente int TakeProfit = 20;
extern int StopLoss = 100;
//+-------------------------------------------------------------------------------------+
//| función de inicialización de expertos |
//+-------------------------------------------------------------------------------------+
void init(){
//----
//----
}
//+-------------------------------------------------------------------------------------+
//| función de desinicialización experta |
//+-------------------------------------------------------------------------------------+
void deinit(){
//----
//----
}
//+-------------------------------------------------------------------------------------+
//| función de inicio experto |
//+-------------------------------------------------------------------------------------+
void start(){
//----
doble Toma1 = Pregunta+20 *Punto;
doble Toma2 = Pregunta+0 *Punto;
double Take3 = Ask-20 *Point;
double Take4 = Ask-40 *Point;
double Take5 = Ask-60 *Point;
double Stop = Bid-StopLoss *Punto;
if(PedidosTotal()==0){
OrderSend(Symbol(),0,0.01,Ask,30,Stop,Take1,",0,0,CLR_NONE);
OrderSend(Symbol(),2,0.02,Ask-20*Point,30,Stop,Take2,",0,0,CLR_NONE);
OrderSend(Symbol(),2,0.04,Ask-40*Point,30,Stop,Take3,",0,0,CLR_NONE);
OrderSend(Symbol(),2,0.08,Ask-60*Point,30,Stop,Take4,",0,0,CLR_NONE);
OrderSend(Symbol(),2,0.16,Ask-80*Point,30,Stop,Take5,"",0,0,CLR_NONE);
}
}
//----
//+-------------------------------------------------------------------------------------+

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

¿Puede añadir

cuando cualquier orden se cerró en la toma de beneficios, todas las órdenes pendientes y urgentes deben ser cerradas.

 

SanNneK:

...

¿Puede añadir

Cuando cualquier orden se cerró en Take Profit, todas las órdenes pendientes y de emergencia deben ser cerradas.

Se trata de una ayuda para resolver problemas cuando no puedes hacerlo tú mismo, no de una sociedad altruista.

Si necesitas que alguien lo escriba por ti, puedes hacerlo aquí.

 
@Artyom Trishkin Necesito escribir un código cuando cualquier orden alcanza el take profit, todas las demás órdenes pendientes y habituales cerradas, no necesito otros asesores
 
SanNneK:
@Artyom Trishkin Necesito escribir el código cuando cualquier orden llega a tomar ganancias, todas las demás órdenes pendientes y habituales cerradas, no necesito otros asesores.

Empieza a escribir código. Lo que no puedas hacer, pídelo, muéstramelo en tu código y te ayudarán.

 
Buenas tardes Chicos, por favor aconsejen donde encontrar información. La tarea consiste en determinar el rango de precios y abrir órdenes sobre su penetración. Hay dos métodos para determinar este rango. La primera forma es determinar el mínimo y el máximo en los intervalos de tiempo especificados. La segunda forma es buscar los primeros fractales dirigidos de manera diferente en un marco de tiempo específico y se negocia este rango. No encuentro algoritmos similares que se ajusten a mis necesidades. (Por favor, ayúdame...)
 

Escribí un código para que cuando se dispare el take profit de la primera orden de compra, se cierren todas las órdenes pendientes, pero no funciona, resaltado en azul lo que no funciona

void start(){

//----

doble Toma1 = Pregunta+20 *Punto;

doble Toma2 = Pregunta+0 *Punto;

double Take3 = Ask-20 *Point;

double Take4 = Ask-40 *Point;

double Take5 = Ask-60 *Point;

double Stop = Bid-StopLoss *Punto;

if(PedidosTotal()==0){

OrderSend(Symbol(),0,0.01,Ask,30,Stop,Take1, "sdsdasdadwadawd",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.02,Ask-20*Point,30,Stop,Take2, "awda",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.04,Ask-40*Point,30,Stop,Take3, "awdawd",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.08,Ask-60*Point,30,Stop,Take4, "awdawd",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.16,Ask-80*Point,30,Stop,Take5, "awdawdawda",0,0,CLR_NONE);

}


if(OP_BUY==Toma1)

{

OrderDelete(2);

}

if(OP_BUY==Toma1)

{

OrderDelete(3);

}

if(OP_BUY==Toma1)

{

OrderDelete(4);

}

if(OP_BUY==Toma1)

{

OrderDelete(5);

return(0);

}


}

Razón de la queja: