Errores, fallos, preguntas - página 1330

 

¿Por qué, al compilar el indicador, todos los ajustes de este indicador que están en los gráficos se restablecen a los valores predeterminados?

 
iZer0:

Buenas tardes, por favor, pueden guiar al nuevo. Yo uso MT5 no para operar, sino como fuente de algunos datos "aleatorios" (y ni siquiera preguntes por qué, no es mi capricho). ¿Es posible obtener datos históricos medidos en ticks (necesito datos de oferta y demanda varias veces por segundo). ¿Qué debo hacer? Sé que cuando se prueba un indicador MT5 bombea datos - ¿cómo usar esto?

Tengo la tarea de escribir un indicador personalizado que envíe los ticks actuales a un determinado servicio (no es un problema). No he encontrado en ningún sitio cómo obtener datos históricos en ticks pero no en M1.

En el probador, puede obtener ticks M1 intra-barra. El terminal los simula. ¿Cómo de aleatorio es? No lo sé. Hablando de MT4. Debería ser lo mismo en MT5.
OnTick()
{Print("Bid=",Bid);}

En la pestaña "Registro" del probador de estrategias, vea el valor del precio y la hora de llegada.

Archivos adjuntos:
2107.PNG  7 kb
 

MT4/845, Windows 7/64bit. Hice un guión:

#property strict
double value=1/2;
//---
void OnStart()
  {
   Print("value = ",DoubleToString(value));
  }

Se imprime en los registros:

2015.07.22 10:13:26.134 Prueba EURUSD,H1: valor = 0.00000000

y debería ser 0,50000000.

 
Deberías escribir 1.0/2 o 1/2.0 o 1.0/2.0 entonces será lo esperado.
 
Аноним:
Deberías escribir 1,0/2 o 1/2,0 o 1,0/2,0 entonces será lo esperado.
Sí, tus consejos me han ayudado. Aunque parece que incluso sin .0 debería funcionar.
 

¿Por qué methaquotes ha deshabilitado la función de subir cotizaciones desde el servidor del concesionario? Ahora sólo es posible subir desde las metacotizaciones.

Pero ni siquiera esto se puede hacer, porque el mensaje dice que no hay citas.

Por supuesto, está ausente, porque ¿por qué las metacitas tienen citas con sufijos?

Por ejemplo, los sufijos en los nombres de los pares de divisas son utilizados por fortfs, roboforex, eksness, etc.

 
Maxim Khrolenko:
Sí, tus consejos me han ayudado. Aunque parece que funcionaría sin el 0.
Conversión implícita de double a int.
 

Resultado diferente: este es un resultado cuestionable

#import "Test.ex5"
        void f( uint, uint );
#import
        void f( uint, int  )   { Print( __FUNCSIG__ ); }
void OnStart()
{
        uint a = 0;
        f( 1, a ); //вызывается f(uint,int) - что само по себе сомнительно
}
y esto es normal
        void f( uint, uint )    { Print( __FUNCSIG__ ); }
        void f( uint, int  )    { Print( __FUNCSIG__ ); }
void OnStart()
{
        uint a = 0;
        f( 1, a ); //вызывается f(uint,uint) - нормально
  
}
¿qué diferencia hay?
 
A100:
pero por lo demás está bien, ¿qué diferencia hay?
Si he entendido bien, el compilador debería bloquearse y no compilar en absoluto. Debido a que hay uint uint, hay uint int, y int, uint se pasan a la función, la incertidumbre, sin embargo.
 
Аноним:
Si he entendido bien, el compilador debería bloquearse y no compilar en absoluto. Debido a que hay uint uint, hay uint int, y int, uint se pasa a la función, la incertidumbre, sin embargo.

https://www.mql5.com/ru/docs/basis/function/functionoverload

Cita: "La función encontrada debe ser la mejor opción entre las demás para al menos un argumento y, al mismo tiempo, para los demás argumentos debe ajustarse tan bien como las demás."

Entonces, ¿cuál es la mejor opción para llamar a f(int,uint) aquí?

Pista: el resto del argumento en este caso es el primero

Документация по MQL5: Основы языка / Функции / Перегрузка функций
Документация по MQL5: Основы языка / Функции / Перегрузка функций
  • www.mql5.com
Основы языка / Функции / Перегрузка функций - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Razón de la queja: