Discusión sobre el artículo "Traslado de MQL4 a MQL5" - página 8

 

¿Cómo sonará la cadena MQL4 de la siguiente forma?

spread_ =MarketInfo(Symbol(), MODE_SPREAD)*Punto;

en MQL5?

¡Gracias de antemano!

 
piv_:

¿Cómo sonará la cadena MQL4 de la siguiente forma?

spread_ =MarketInfo(Symbol(), MODE_SPREAD)*Punto;

en MQL5?

¡Gracias de antemano!

Más o menos así

spread=SymbolInfoInteger(symbol,SYMBOL_SPREAD)*Point();
 
Falta iStdOnArray() :) Parece que MT5 es la primera plataforma de autotrading que no tiene estadísticas básicas :) Tratando de hacer algo con MQL5 durante unos días, pero hasta ahora sólo varios problemas como que estaría creando todo el almacén de ingeniería financiera.
 
Todavía no entiendo cómo reemplazar variables predefinidas como High. Low, Ask, Cose, Open.... ¿En cuál de las funciones especiales deben declararse?
[Eliminado]  
buh400:
Todavía no entiendo cómo reemplazar variables predefinidas como High. Low, Ask, Cose, Open.... ¿En cuál de las funciones especiales deben declararse?
High, low, open, close - a través de CopyHigh(), CopyLow(), etc. Bid y ask - a través de SymbolInfoDouble(). - Esto es recuperación de datos. Y debe declarar los arrays a los que recibirá los datos (para las funciones Copy...) y las variables para los valores bid y ask. Decláralas en aquellas funciones donde quieras obtener estos datos (no debes declararlas a nivel global, aunque puedes hacerlo). Por ejemplo, si desea recibir datos en cada tick - en la función OnTick(). Si en la inicialización - OnInit(), etc. Lea la documentación.
 
¡Lo leí, no hay entusiasmo para aprender mcl5! ¡Creo que los corredores no se dará por vencido MT4! ¡Sí, y para mi vida será suficiente! ¡Simplemente no complicar mcl4! ¡Por favor!
 
Al compilar el código de la sección 17, es decir, donde declaramos las constantes, obtenemos un error - 'MODE_MAIN' - enumerator identifier already defined.

 
buh400:
al compilar el código de la sección 17,
dar el enlace de la versión en línea de la ayuda - https://docs.mql4.com/ru
Справочник MQL4 - Документация на MQL4
  • docs.mql4.com
Справочник MQL4 - Документация на MQL4
 
Rashid Umarov:
Dar un enlace desde la versión online de la ayuda - https://docs.mql4.com/ru

este código del artículo - migración de MQL4 a MQL5.

17. Технические индикаторы
Получение значений технических индикаторов в своих экспертах очень подробно рассмотрено в одноимённой статье. В этом справочнике представлен краткий способ обращения к стандартным индикаторам, которого вполне достаточно для получения результата расчёта в одной точке. Для реализации такого механизма, нам потребуется вспомогательная функция:

double CopyBufferMQL4(int handle,int index,int shift)
  {
   double buf[];
   switch(index)
     {
      case 0: if(CopyBuffer(handle,0,shift,1,buf)>0)
         return(buf[0]); break;
      case 1: if(CopyBuffer(handle,1,shift,1,buf)>0)
         return(buf[0]); break;
      case 2: if(CopyBuffer(handle,2,shift,1,buf)>0)
         return(buf[0]); break;
      case 3: if(CopyBuffer(handle,3,shift,1,buf)>0)
         return(buf[0]); break;
      case 4: if(CopyBuffer(handle,4,shift,1,buf)>0)
         return(buf[0]); break;
      default: break;
     }
   return(EMPTY_VALUE);
  }
и объявим следующие константы:
ENUM_MA_METHOD MethodMigrate(int method)
  {
   switch(method)
     {
      case 0: return(MODE_SMA);
      case 1: return(MODE_EMA);
      case 2: return(MODE_SMMA);
      case 3: return(MODE_LWMA);
      default: return(MODE_SMA);
     }
  }
ENUM_APPLIED_PRICE PriceMigrate(int price)
  {
   switch(price)
     {
      case 1: return(PRICE_CLOSE);
      case 2: return(PRICE_OPEN);
      case 3: return(PRICE_HIGH);
      case 4: return(PRICE_LOW);
      case 5: return(PRICE_MEDIAN);
      case 6: return(PRICE_TYPICAL);
      case 7: return(PRICE_WEIGHTED);
      default: return(PRICE_CLOSE);
     }
  }
ENUM_STO_PRICE StoFieldMigrate(int field)
  {
   switch(field)
     {
      case 0: return(STO_LOWHIGH);
      case 1: return(STO_CLOSECLOSE);
      default: return(STO_LOWHIGH);
     }
  }
//+------------------------------------------------------------------+
enum ALLIGATOR_MODE  { MODE_GATORJAW=1,   MODE_GATORTEETH, MODE_GATORLIPS };
enum ADX_MODE        { MODE_MAIN,         MODE_PLUSDI, MODE_MINUSDI };
enum UP_LOW_MODE     { MODE_BASE,         MODE_UPPER,      MODE_LOWER };
enum ICHIMOKU_MODE   { MODE_TENKANSEN=1,  MODE_KIJUNSEN, MODE_SENKOUSPANA, MODE_SENKOUSPANB, MODE_CHINKOUSPAN };
enum MAIN_SIGNAL_MODE{ MODE_MAIN,         MODE_SIGNAL };
 
Me he dado cuenta de que este tema ya se ha tratado y tengo que leer otro artículo:) Mis mensajes pueden ser borrados