Redactaré un asesor de forma gratuita - página 120

 
¡Hola! ¿Puede alguien ajustar el asesor?
 
Hola. Por favor, ayúdame a escribir un EA. Es realmente bueno. Lamento no poder publicar mi idea. Si puedes ayudar, envíame un mensaje privado. Se lo agradecería mucho.
 
kasdamato222:
Hola. Por favor, ayúdame a escribir un EA. Es realmente bueno. Lo siento, pero no puedo publicar mi idea. Te agradecería mucho que me ayudaras enviando un mensaje privado.

Si la idea es muy buena, paga a un programador para que plasme tu idea en un Expert.

 
Hola, puede aconsejar que podría ayudar a enganchar el indicador ASK para el comercio de automóviles utilizando MT2auto comercio. El indicador da una señal, dibuja una flecha y da una alerta, pero cuando instalo MT2 en el gráfico no lo ve y por tanto no copia las señales. creo que tengo que corregir algo en la configuración del indicador ASK o cambiar el formato de la flecha. estoy dispuesto a agradecer la ayuda cualificada. Gracias.
Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Торговые советники и собственные индикаторы - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Среди программ для автоматического трейдинга можно выделить две большие категории: торговые роботы и индикаторы. Первые предназначены для совершения торговых операций на рынках, а вторые — для анализа котировок и выявления закономерностей в их изменении. При этом индикаторы могут использоваться непосредственно в роботах, образуя полноценную...
 
Necesito un simple EA en mql5. Al principio de su trabajo, deben aparecer 2 botones de compra/venta, pulsando uno de ellos se abrirá una operación con parámetros predefinidos y un número mágico. Una vez pulsado el botón, debería desaparecer hasta el momento en que no haya posiciones abiertas en el gráfico dado. Si ha llegado el momento, deberían aparecer los botones.
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
Sysmart:
Necesito un simple EA en mql5. Al principio de su trabajo, debería haber 2 botones de compra/venta, pulsando uno de ellos debería abrirse una operación con parámetros predefinidos y un número mágico. Una vez pulsado el botón, debería desaparecer hasta el momento en que no haya posiciones abiertas en el gráfico dado. Si ha llegado el momento, deberían aparecer los botones.

Hice un panel de dos botones:Abrir Cerrar Panel

Abrir Cerrar Panel

yAbrir Cerrar Panel 2

Abrir Cerrar Panel 2


Excepto que los botones no desaparecían ni se bloqueaban.

Open Close Panel
Open Close Panel
  • www.mql5.com
Сама панель содержит три кнопки: 'BUY', 'SELL' и 'CLOSE'. Рассчитана на ручную торговлю - быстро открывать позиции с заданным уровнем Стоп лосс и Тейк профит, а также для быстрого закрытия всех позиций. Архив "Open Close Panel.zip" необходимо распаковать в отдельную папку в папку MQL5/Experts. Содержание архива:
 
Sysmart:
Necesitamos un simple Asesor Experto en mql5. Al principio de su trabajo, deben aparecer 2 botones de compra/venta, pulsando uno de ellos, debe abrirse una operación con parámetros que están predefinidos y número mágico. Una vez pulsado el botón, debería desaparecer hasta el momento en que no haya posiciones abiertas en el gráfico dado. Si ha llegado el momento, deberían aparecer los botones.

abre, elimina los botones - si no hay posiciones, aparecerán los botones.

ejemplo-(simplemente, poner cada cosa en su sitio).

//+------------------------------------------------------------------+
//|                                               удалить кнопки.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
#define  InpMagic 19789876535
//---
#include <Trade\PositionInfo.mqh>
//---
CPositionInfo  m_position; // trade position object
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   if(ObjectFind(0,"BUY")==0)
     {
      ObjectDelete(0,"BUY");
     }
   if(ObjectFind(0,"SELL")==0)
     {
      ObjectDelete(0,"SELL");
     }
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(ObjectGetInteger(0,"BUY",OBJPROP_STATE)!=0)
     {
      ObjectSetInteger(0,"BUY",OBJPROP_STATE,0);

      //--- сюда BUY

      if(ObjectFind(0,"BUY")==0)
        {
         ObjectDelete(0,"BUY");
        }
      if(ObjectFind(0,"SELL")==0)
        {
         ObjectDelete(0,"SELL");
        }
      PlaySound("ok.wav");
     }
   if(ObjectGetInteger(0,"SELL",OBJPROP_STATE)!=0)
     {
      ObjectSetInteger(0,"SELL",OBJPROP_STATE,0);

      //--- сюда SELL

      if(ObjectFind(0,"BUY")==0)
        {
         ObjectDelete(0,"BUY");
        }
      if(ObjectFind(0,"SELL")==0)
        {
         ObjectDelete(0,"SELL");
        }
      PlaySound("ok.wav");
     }
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
  }
//+------------------------------------------------------------------+
//| Check for long position closing                                  |
//+------------------------------------------------------------------+
bool CheckObject(void)
  {
//---
   bool res=false;
     {
      ObjectCreate(0,"BUY",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"BUY",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-102);
      ObjectSetInteger(0,"BUY",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"BUY",OBJPROP_TEXT,"BUY");
      ObjectSetInteger(0,"BUY",OBJPROP_BGCOLOR,clrMediumSeaGreen);

      ObjectCreate(0,"SELL",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"SELL",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-50);
      ObjectSetInteger(0,"SELL",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"SELL",OBJPROP_TEXT,"SELL");
      ObjectSetInteger(0,"SELL",OBJPROP_BGCOLOR,clrDarkOrange);
      res=true;
     }
//--- result
   return(res);
  }
//+------------------------------------------------------------------+
Archivos adjuntos:
 
Alexsandr San:

abre, elimina los botones - si no hay posiciones, aparecerán los botones.

ejemplo-(sólo para poner todo en su sitio).

En el propio Asesor Experto Lot Balanse Profit.mq544 kb

Aquí -

//+------------------------------------------------------------------+
//| Close selected position                                          |
//+------------------------------------------------------------------+
void ClosePosition(const string symbol)
  {
   if(InitTrade(symbol))
      m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbo
   PlaySound("ok.wav");
   CheckObject();
  }
//+------------------------------------------------------------------+

esto sería probablemente redundante

------------------------------------------------------------------------------------

La segunda opción es cómo puedes arreglar las cosas

//+------------------------------------------------------------------+
//|                                               удалить кнопки.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
#define  InpMagic 19789876535
//---
#include <Trade\PositionInfo.mqh>
//---
CPositionInfo  m_position; // trade position object
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   if(ObjectFind(0,"BUY")==0)
     {
      ObjectDelete(0,"BUY");
     }
   if(ObjectFind(0,"SELL")==0)
     {
      ObjectDelete(0,"SELL");
     }
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   CheckButon();
//---
   if(!m_position.Select(Symbol()))
     {
      CheckObject();
     }
//---
  }
//+------------------------------------------------------------------+
//| Check for long position closing                                  |
//+------------------------------------------------------------------+
bool CheckButon(void)
  {
//---
   bool res=false;
     {
      if(ObjectGetInteger(0,"BUY",OBJPROP_STATE)!=0)
        {
         ObjectSetInteger(0,"BUY",OBJPROP_STATE,0);

         //--- сюда BUY

         if(ObjectFind(0,"BUY")==0)
           {
            ObjectDelete(0,"BUY");
           }
         if(ObjectFind(0,"SELL")==0)
           {
            ObjectDelete(0,"SELL");
           }
         PlaySound("ok.wav");
        }
      if(ObjectGetInteger(0,"SELL",OBJPROP_STATE)!=0)
        {
         ObjectSetInteger(0,"SELL",OBJPROP_STATE,0);

         //--- сюда SELL


         if(ObjectFind(0,"BUY")==0)
           {
            ObjectDelete(0,"BUY");
           }
         if(ObjectFind(0,"SELL")==0)
           {
            ObjectDelete(0,"SELL");
           }
         PlaySound("ok.wav");
        }
      res=true;
     }
//--- result
   return(res);
  }
//+------------------------------------------------------------------+
//| Check for long position closing                                  |
//+------------------------------------------------------------------+
bool CheckObject(void)
  {
//---
   bool res=false;
     {
      ObjectCreate(0,"BUY",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"BUY",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-102);
      ObjectSetInteger(0,"BUY",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"BUY",OBJPROP_TEXT,"BUY");
      ObjectSetInteger(0,"BUY",OBJPROP_BGCOLOR,clrMediumSeaGreen);

      ObjectCreate(0,"SELL",OBJ_BUTTON,0,0,0);
      ObjectSetInteger(0,"SELL",OBJPROP_XDISTANCE,ChartGetInteger(0,CHART_WIDTH_IN_PIXELS)-50);
      ObjectSetInteger(0,"SELL",OBJPROP_YDISTANCE,37);
      ObjectSetString(0,"SELL",OBJPROP_TEXT,"SELL");
      ObjectSetInteger(0,"SELL",OBJPROP_BGCOLOR,clrDarkOrange);
      res=true;
     }
//--- result
   return(res);
  }
//+------------------------------------------------------------------+

---------------------------

¡¡¡Asesor Experto adjunto con la segunda opción !!!

Archivos adjuntos:
 
Alexsandr San:

En el propio experto Lot Balanse Profit.mq544 kb

Aquí -

esto es probablemente innecesario

------------------------------------------------------------------------------------

La segunda opción es cómo puedes poner las cosas en su sitio

---------------------------

¡¡¡El Asesor Experto adjunto con la segunda opción !!!

Hay muchas cosas innecesarias en el experto, con mis conocimientos no podré eliminar lo innecesario.

 
Sysmart:

Hay muchas cosas innecesarias en el Asesor Experto, con mis conocimientos no podré eliminar lo innecesario.

Así que lo he masticado - todo lo que tienes que hacer es insertarlo todo en tu código https://www.mql5.com/ru/forum/35071/page120#comment_16528116

Tienes que insertar todo lo que necesitas en élPero elLote Profit.mq545 kb. (Todavía necesita un montón de cosas para ser insertado)