Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1275

 
Aleksandr Egorov:

leerlo ya )

Yo también lo he buscado ahora. El artículo es de 2011... Pero, sobre todo, hay una explicación de cómo se generan los ticks en el modo "todos los ticks". Y "Basado en garrapatas reales" habla por sí mismo. Esa es la diferencia.

 
Pregunta sobre el probador.

En el modo de visualización, las impresiones no se muestran. ¿Se supone que esto es así, o estoy haciendo algo mal?
 
¡¡¡Hola a todos!!! Y Feliz Año Nuevo!!! Tengo mi curva de programación en las clases. Y aquí tengo un desconcierto. Tengo en la carpeta #include/ChartObject un archivo de clase -- ChartObjectsLines y contiene no sólo una clase de líneas de tendencia, sino también otras clases con líneas y constructores para todas estas clases. Y aquí está la pregunta, cuya respuesta no he encontrado, ¿resulta que en una clase puede haber muchas clases y constructores para estas clases?
 
Y otra pregunta)) ¿Cómo se obtiene el precio y la fecha de las coordenadas X / Y en la ventana del gráfico?
 
Kira27:
Y otra pregunta))) ¿Cómo puedo obtener el precio y la fecha de las coordenadas X / Y en la ventana del gráfico?

https://www.mql5.com/ru/docs/chart_operations/charttimepricetoxy

https://www.mql5.com/ru/docs/chart_operations/chartxytotimeprice

Документация по MQL5: Операции с графиками / ChartTimePriceToXY
Документация по MQL5: Операции с графиками / ChartTimePriceToXY
  • www.mql5.com
ChartTimePriceToXY - Операции с графиками - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Tengo otra pregunta)) No me mandes a leer el manual, lo he leído más de una vez, todavía no entiendo todo lo que hay en las clases) Hay una clase Trailing Stop para el SAR Parabólico, ubicada en la carpeta Expert\Trailing\ llamada TrailingParabolicSAR.mqh Dime si no es difícil, cómo interactuar con él. Lo entiendo mejor a través de los ejemplos))) Gracias de antemano a los que respondan)
//+------------------------------------------------------------------+
//|                                         TrailingParabolicSAR.mqh |
//|                   Copyright 2009-2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#include <Expert\ExpertTrailing.mqh>
// wizard description start
//+------------------------------------------------------------------+
//| Description of the class                                         |
//| Title=Trailing Stop based on Parabolic SAR                       |
//| Type=Trailing                                                    |
//| Name=ParabolicSAR                                                |
//| Class=CTrailingPSAR                                              |
//| Page=                                                            |
//| Parameter=Step,double,0.02,Speed increment                       |
//| Parameter=Maximum,double,0.2,Maximum rate                        |
//+------------------------------------------------------------------+
// wizard description end
//+------------------------------------------------------------------+
//| Class CTrailingPSAR.                                             |
//| Appointment: Class traling stops with Parabolic SAR.             |
//| Derives from class CExpertTrailing.                              |
//+------------------------------------------------------------------+
class CTrailingPSAR : public CExpertTrailing
  {
protected:
   CiSAR             m_sar;            // object-indicator
   //--- adjusted parameters
   double            m_step;           // the "speed increment" parameter of the indicator
   double            m_maximum;        // the "maximum rate" parameter of the indicator

public:
                     CTrailingPSAR(void);
                    ~CTrailingPSAR(void);
   //--- methods of setting adjustable parameters
   void              Step(double step)       { m_step=step;       }
   void              Maximum(double maximum) { m_maximum=maximum; }
   //--- method of creating the indicator and timeseries
   virtual bool      InitIndicators(CIndicators *indicators);
   //---
   virtual bool      CheckTrailingStopLong(CPositionInfo *position,double &sl,double &tp);
   virtual bool      CheckTrailingStopShort(CPositionInfo *position,double &sl,double &tp);
  };
//+------------------------------------------------------------------+
//| Constructor                                                      |
//+------------------------------------------------------------------+
void CTrailingPSAR::CTrailingPSAR(void) : m_step(0.02),
                                          m_maximum(0.2)

  {
  }
//+------------------------------------------------------------------+
//| Destructor                                                       |
//+------------------------------------------------------------------+
void CTrailingPSAR::~CTrailingPSAR(void)
  {
  }
//+------------------------------------------------------------------+
//| Create indicators.                                               |
//+------------------------------------------------------------------+
bool CTrailingPSAR::InitIndicators(CIndicators *indicators)
  {
//--- check pointer
   if(indicators==NULL)
      return(false);
//--- add object to collection
   if(!indicators.Add(GetPointer(m_sar)))
     {
      printf(__FUNCTION__+": error adding object");
      return(false);
     }
//--- initialize object
   if(!m_sar.Create(m_symbol.Name(),m_period,m_step,m_maximum))
     {
      printf(__FUNCTION__+": error initializing object");
      return(false);
     }
//--- ok
   return(true);
  }
//+------------------------------------------------------------------+
//| Checking trailing stop and/or profit for long position.          |
//+------------------------------------------------------------------+
bool CTrailingPSAR::CheckTrailingStopLong(CPositionInfo *position,double &sl,double &tp)
  {
//--- check
   if(position==NULL)
      return(false);
//---
   double level =NormalizeDouble(m_symbol.Bid()-m_symbol.StopsLevel()*m_symbol.Point(),m_symbol.Digits());
   double new_sl=NormalizeDouble(m_sar.Main(1),m_symbol.Digits());
   double pos_sl=position.StopLoss();
   double base  =(pos_sl==0.0) ? position.PriceOpen() : pos_sl;
//---
   sl=EMPTY_VALUE;
   tp=EMPTY_VALUE;
   if(new_sl>base && new_sl<level)
      sl=new_sl;
//---
   return(sl!=EMPTY_VALUE);
  }
//+------------------------------------------------------------------+
//| Checking trailing stop and/or profit for short position.         |
//+------------------------------------------------------------------+
bool CTrailingPSAR::CheckTrailingStopShort(CPositionInfo *position,double &sl,double &tp)
  {
//--- check
   if(position==NULL)
      return(false);
//---
   double level =NormalizeDouble(m_symbol.Ask()+m_symbol.StopsLevel()*m_symbol.Point(),m_symbol.Digits());
   double new_sl=NormalizeDouble(m_sar.Main(1)+m_symbol.Spread()*m_symbol.Point(),m_symbol.Digits());
   double pos_sl=position.StopLoss();
   double base  =(pos_sl==0.0) ? position.PriceOpen() : pos_sl;
//---
   sl=EMPTY_VALUE;
   tp=EMPTY_VALUE;
   if(new_sl<base && new_sl>level)
      sl=new_sl;
//---
   return(sl!=EMPTY_VALUE);
  }
//+------------------------------------------------------------------+
 
Kira27:
Tengo otra pregunta)) Por favor no me manden a leer las instrucciones, las he leído muchas veces, todavía no entiendo todas las clases) Hay una clase Trailing Stop para el SAR Parabólico, ubicada en la carpeta Expert\Trailing\ y llamada TrailingParabolicSAR.mqh Por favor díganme como usarla. Lo entiendo mejor a través de los ejemplos))) Gracias de antemano a los que respondan)

Un ejemplo de uso se da en [carpeta dta]\MQL5\Experts\Advisors\ExpertMAPSAR.mq5

 
Vladimir Karputov:

Un ejemplo de uso se da en [carpeta dta]\MQL5\Experts\Advisors\ExpertMAPSAR.mq5

¡¡¡Gracias!!!

 
User_mt5:
Pregunta sobre el probador.

En el modo de visualización, las impresiones no se muestran. ¿Se supone que esto es así, o estoy haciendo algo mal?
No creo que nadie lo sepa.
Razón de la queja: