Errores, fallos, preguntas - página 2681

 

Hola colegas.

Puede que no sea el primero en hacer esta pregunta. He escrito en otro hilo, pero no he recibido respuesta de los desarrolladores. ¿Por qué el valor real del pip en XAUUSD es de 1USD?

La función SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE) muestra persistentemente 0.1USD

Y cómo contar el drawdown, el beneficio y otras cosas, mientras los pares de divisas muestran el valor normal del tick.

Terminal Z.I. MT5

 
Andrey Kaunov:

Hola colegas.

Puede que no sea el primero en hacer esta pregunta. Escribí en otro hilo, pero no obtuve respuesta de los desarrolladores. ¿Por qué el valor real del pip en XAUUSD es de 1USD?

La función SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE) muestra persistentemente 0.1USD

Y cómo contar el drawdown, el beneficio y otras cosas, mientras los pares de divisas muestran el valor normal del tick.

Terminal Z.U. MT5

Debería preguntar a su corredor, estos datos los rellena el corredor...

 
Error de MT5 (build 2366), error de compilación al acceder a unmétodo estático de una clase a la que se accede mediante un tipo de argumento de función de plantilla.

template<typename _Tp>
struct It_g{
   class Opt{
      template<typename _It>
      static void test(_It &it){               
         _Tp p = it.p;                  
      };
   };
   
   _Tp p;
};

template<typename _Tp>
class V{
public:
   struct It : public  It_g<_Tp>{};
   It b;
};


template<typename T>
class GetStructType{
public:
   struct type : public T{};
};

template<typename _It>
void test(_It &it){
   GetStructType<_It>::type::Opt::test(it);   // Ok
   
   _It::Opt opt;
   opt.test(it);                              // Ok
   
   _It::Opt::test(it);                        // '_It' is not a class, struct or union | 'Opt' is not a class, struct or union
}

class ClassA{};


void OnStart(){ 
   V<int> v1;
   test(v1.b);
   
   V<ClassA*> v2;
   test(v2.b);
   
   V<int>::It it3;
   test(it3);
   
   V<ClassA*>::It it4;
   test(it4);
}
 
Bug MT5 (build 2366), error de compilación debido al uso incorrecto de namespace y scope en el constructor de la plantilla al llamar a la clase base.
El problema se produce cuando se utiliza el mismo nombre de clase: en el espacio de nombres global, en la clase interna y cuando se hereda como clase base.

template<typename T>
struct B{
   char data;
   
   B(){}
   B(int){}
};


template<typename T>
class A{
public:
   struct __reverse_iterator : public B<T>{
      __reverse_iterator() : B<T>(1){}                 // Ok
      
      template<typename TT>
      __reverse_iterator(const TT& n) : B<T>(n){}      //'<' - template mismatch
   };
   
   struct B : public __reverse_iterator{
      B() : __reverse_iterator(){}
      B(int n) : __reverse_iterator(n){}
   };
};

   
void OnStart(){  
   A<int>::B it_1();      // Ok
   A<int>::B it_2(1);     // Compile Error
}


En C++, todo funciona haciendo referencia explícita al espacio de nombres global. C++ en línea:https://onlinegdb.com/BJIV6frUI
En MQL esto no se puede hacer - Error de compilación, error en la definición interna de la clase - no hay posibilidad de hacer referencia explícita al espacio de nombres global cuando se especifica una clase base(no se ha solucionado en MT5(build 2366)).

También hay un problema en el constructor cuando se llama a la clase base que está relacionado con el error presentado anteriormente -https://www.mql5.com/ru/forum/1111/page2680#comment_15546487.
Tenga en cuenta que "funciona" tanto con el espacio de nombres como con las clases internas.

 
Vladimir Pastushak:

Deberías preguntar a tu corredor, es el corredor quien rellena los datos...

Ya veo, gracias Vladimir.

 

¿No funciona la secadora en el probador? - No he encontrado nada sobre este tema en la ayuda.

MarketBookAdd (Symbol ()) se suscribe al vaso y da true, pero el evento OnBookEvent (const string &symbol) no llega ni una sola vez durante toda la prueba.

 
Andrey Dik:

¿No funciona la secadora en el probador? - No he encontrado nada sobre este tema en la ayuda.

MarketBookAdd (Symbol ()) se suscribe al vaso y da true, pero el evento OnBookEvent (const string &symbol) no llega ni una sola vez en toda la prueba.

No funciona. Y no hay historia de la copa.

 

¿alguien puede decirme qué es el error 533?

asumió que la versión donde se compiló es más nueva - pidió actualizar. no ayudó.

 
Igor Zakharov:

¿alguien puede decirme qué es el error 533?

asumió que la versión donde se compiló es más nueva - pidió actualizar. no ayudó.

La integridad de ex5 está rota.

¿De dónde has sacado este ex5?

Ilyas podrá responder con más detalle si le envía este experto

Ilyas
Ilyas
  • www.mql5.com
Профиль трейдера
 
Slava:

La integridad de ex5 se ha visto comprometida.

¿De dónde has sacado este ex5?

Ilyas podrá responder con más detalle, si le envía este experto

Lo compilé en la compilación 2361. en la terminal donde se compiló - funciona. lo envié por skype a otra persona para que lo probara (sin el código fuente) - error 533.

No puedo devolvérselo, así que subí el 2366 y lo recompilé de nuevo (con el mismo nombre).

añadido: skype lo guardó. lo enviará.

added2: la recompilación a 2366 provoca el mismo error. He enviado la fuente y la compilación a Ilyas.