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

 
Artyom Trishkin:

Copiado. ¿Y cuánto se copia se comprueba?

Si está utilizando un indicador con suavizado, requiere unas cuantas barras más de las que espera para calcular. Por lo tanto, el hecho de haber copiado no significa que los datos estén copiados y totalmente disponibles.

Es más fácil comprobar el tamaño del array y salir de OnTick() si no tiene el tamaño requerido.

¿Y cómo hacerlo, si en el modo de optimización no se da salida, pero en el modo normal todo funciona?
la salida a un archivo funcionará?

 
Sergey Likho:
¿Pueden darme una fórmula universal para calcular el precio de equilibrio si hay comisiones y swaps en una operación?

Hay una fórmula sencilla que funciona para las cotizaciones con 5 dígitos y el depósito en usd

Lote x beneficio en pips = beneficio en $.

Si se trata de una compra, y hay swaps y comisiones en la operación, el precio de equilibrio será un poco más alto que el precio de apertura
(Si no hay swaps ni comisiones, el umbral de rentabilidad es el precio de apertura)

Pero si el instrumento es exótico o la cotización es de 4 o 2 cifras o la moneda del depósito es la libra. La fórmula anterior no es útil.
¿Existe una fórmula universal?

Si te interesa, aquí tienes un gran código que lo tiene todo en cuenta - https://www.mql5.com/ru/forum/58229#comment_1603761

Как получить усредненную цену позиции по двум (или более) лотам с разными ценами?
Как получить усредненную цену позиции по двум (или более) лотам с разными ценами?
  • 2015.05.01
  • www.mql5.com
Другими словами среднюю цену открытия позиции, при наличии нескольких лотов по разной цене.
 
Por favor, dígame por qué la orden más abierta no está cerrada. He hecho todo lo que debería haber hecho, pero sólo quita el orden de la lista
int TimeSec;
//+------------------------------------------------------------------+
void start(){
if(NewSecRun()==false){return;} 
fOrderClose();}
//+------------------------------------------------------------------+
bool NewSecRun(){
if(TimeSec!=TimeSeconds(TimeCurrent())){
    TimeSec=TimeSeconds(TimeCurrent());
return (true);}   return (false);}  
//+------------------------------------------------------------------+
int fMarketOrders(int type){
   int c=0,aBuyCount=0,aSellCount=0;
     for(int i=0;i<OrdersTotal();i++){
       if(OrderSelect(i,SELECT_BY_POS)){
            switch(OrderType()){
               case OP_BUY:aBuyCount++;break;
               case OP_SELL:aBuyCount++;break;
              }}else{return(-1);}}
   if(type==OP_BUY)c=aBuyCount;if(type==OP_SELL)c=aSellCount;
   return(c);}
//+------------------------------------------------------------------+
void fOrderClose(){     Comment("       ",fMarketOrders(OP_BUY)+fMarketOrders(OP_SELL) );
      if((fMarketOrders(OP_BUY)+fMarketOrders(OP_SELL))>=500){
          for(int i=0;i<OrdersTotal();i++){
          if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
          if(OrderType()==OP_SELL || OrderType()==OP_BUY){
    if( OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE) || OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE)){return;} }}} }  }
    
 
void fOrderClose()...
for
(int i=0;i<OrdersTotal();i++){           if(OrderSelect(i

Aquí, supongo.

 
Galim_V:

Aquí, supongo.

esta función parece seleccionar la primera transacción. Así es como lo quiero. ¿Pasa algo?

 
Rustam Bikbulatov:

esta función parece seleccionar la primera transacción. Así es como lo quiero. ¿Pasa algo?

No soy un maestro, pero no veo ningún otro cierre aquí. Seleccionando desde el Total.
 
            switch(OrderType()){
               case OP_BUY:aBuyCount++;break;
               case OP_SELL:aBuyCount++;break;

Aquí es donde aBuyCount se acumula "fuertemente" y aSellCount no se acumula en absoluto.

 
Vladimir:

Aquí es donde aBuyCount se acumula "fuertemente" y aSellCount no se acumula en absoluto.

Gracias. ¡Ni siquiera me di cuenta! ¡No lo creo, pero tal vez sea por eso!

 

¡Buenas tardes!

Compré un indicador en la web de mql5, para el terminal MT4, lo instalé, todo funcionaba... pero hace un tiempo dejó de funcionar... He estado hablando con el desarrollador, el soporte técnico de Forex Club (tengo su terminal), no fueron capaces de ayudarme. No han podido ayudarme. El servicio técnico me ha enviado al foro de mql.5.

 
paka76:

¡Buenas tardes!

Compré un indicador en la web de mql5, para el terminal MT4, lo instalé, todo funcionaba... pero hace un tiempo dejó de funcionar... He estado hablando con el desarrollador, el soporte técnico de Forex Club (tengo su terminal), no fueron capaces de ayudarme. No han podido ayudarme. El servicio técnico me ha enviado al foro de mql.5.

Al vendedor de este indicador.

Razón de la queja: