Hola,
Según entiendo del artículo, la función "setBokerOffset ()" debería funcionar también en el probador de estrategias, pero no funciona.
void OnTick()
{
//---
bool isTimeSet = setBokerOffset();
if(!isTimeSet)
{
Alert("setBokerOffset failed");
return;
}
}
array out of range in 'DealingWithTime.mqh' (201,21)
¿Tiene la "La alternativa utilizando a través de variables de entrada" la única manera de obtener tiempos correctos en el probador de estrategia?
¿Tiene la "La alternativa utilizando a través de variables de entrada" la única manera de conseguir tiempos correctos en el probador de estrategia?
Buen artículo. Sin embargo, se plantea un problema: ¿cómo determinar que un corredor/agente está cambiando de invierno/verano sin ponerse en contacto con su servicio técnico?
- ¿Por qué no preguntar?
- El software sabe cuándo es verano/invierno en EE.UU. y en la UE y lo utiliza para calcular el cambio de horario del corredor.
Buen artículo. Sin embargo, se plantea un problema: ¿cómo determinar que un corredor/agente está cambiando de invierno/verano sin ponerse en contacto con su servicio técnico?
.
- www.mql5.com
- ¿Por qué no pregunta?
- El software sabe cuándo es verano/invierno en EE.UU. y la UE y lo utiliza para calcular la compensación del corredor.
1. Porque el soporte no siempre da la información correcta. Usted mismo señaló esto sobre el distribuidor Alpari. + es sobrecarga: averiguar de cada distribuidor la transición. Porque entonces no se puede crear una buena solución, no sé con quién está discutiendo el usuario final.
2. Bueno, más o menos, sí, pero si el concesionario no hace la transición de invierno a verano y viceversa, entonces se obtiene alguna cosa extraña en los cálculos.
Intenté modificar un poco tu biblioteca, pero al parecer algo salió mal. Pensé que el código debe conducir al hecho de que el Asesor Experto detecta automáticamente la hora GMT y comercia de acuerdo a GMT, no de acuerdo con el servidor del corredor. No estoy seguro de si el código es óptimo, pero la solución parece funcionar. Sin embargo, en aquellos corredores que no cambian la hora - hay algunos cálculos incorrectos.
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
Artículo publicado Gestionando el Horario (Parte 2): Funciones:
Determinando la compensación del bróker y la hora GMT de forma automática. En lugar de pedir ayuda a su bróker, de quien probablemente recibirá una respuesta insuficiente (quién estaría dispuesto a explicar dónde se ha metido la hora faltante), simplemente nos fijaremos en cómo estos calculan sus precios en las semanas de cambio horario, pero evitando engorrosos cálculos manuales: un programa se encargará de ello, después de todo, ¿para qué tenemos un PC?
Antes de las funciones en el archivo de inclusión DealingWithTime.mqh (y después de la sustitución de la macros), declararemos las variables necesarias como variables globales:
Estas variables DST_USD, DST_EUR... contendrán el cambio horario real de los EE.UU., la UE, etcétera, y serán actualizados y configurados por nuestras funciones. En el horario de invierno, que es el horario normal, serán iguales a cero: la hora no se cambia en ese periodo.
Después de ello, tendremos las variables para la próxima vez que se produzca el cambio de hora. Se necesitarán principalmente para saber cuándo requerimos un nuevo cálculo para ahorrar los recursos de la CPU:
Analizaremos la situación rusa más adelante en este mismo artículo.
Esta estructura y su variable global son el corazón de todo. :)
Asignaremos las compensaciones del bróker para los tres periodos relevantes y la duración del mercado fórex estará abierta en estos periodos, tanto para el valor real como para un conjunto de sencilla verificación, si los valores han sido asignados. La variable global se llama OffsetBroker, y la encontraremos varias veces.
Autor: Carl Schreiber