Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
- Visualizaciones:
- 892
- Ranking:
- Publicado:
- 2015.08.07 14:58
- Actualizado:
- 2016.11.22 07:33
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
La clase CTimeControl ha sido diseñada para usarse en los asesores con objeto de establecer y comprobar la duración permitida del comercio.
Ejemplo de uso:
Activación:
#include "TimeControl.mqh"
Constructor por defecto:
CTimeControl timeControl;
Constructor para establecer el día de la semana:
CTimeControl timeControl(false, true, true, false, false, false, false);
Constructor que aplica las matrices con los días de la semana y la hora de comercio para cada día:
bool arrDaysSetting[7] = { false, true, true, false, false, false, false};
int arrStartHours[7] = { 0, 15, 14, 0, 0, 0, 0};
double arrStartMinutes[7] = { 0, 15, 14, 0, 0, 0, 0};
int arrStopHours[7] = { 23, 13, 21, 23, 23, 23, 23};
double arrStopMinutes[7] = { 0, 15, 14, 0, 0, 0, 0};
CTimeControl timeControl2( arrDaysSetting, arrStartHours, arrStartMinutes, arrStopHours, arrStopMinutes);
Para leer/establecer los parámetros de cada día, es posible utilizar la enumeración ENUM_DAY_OF_WEEK para indicar el día de la semana:
bool bMonday = timeControl.GetDay(MONDAY);
timeControl.SetDay(MONDAY, true);// establecer el lunes
timeControl.EnableDay(MONDAY); // activar el lunes
timeControl.DisableDay(MONDAY); // desactivar el lunes
int iStartHour, iStopHour;
double dStartMinute, dStopMinute;
timeControl.GetTradingTime(MONDAY, iStartHour, dStartMinute, iStopHour, dStopMinute);
Además, es posible usar funciones específicas para cada día de la semana:
bool bMonday = timeControl.GetMonday();
timeControl.SetMonday(true); //establecer el lunes
timeControl.EnableMonday(); //activar el lunes
timeControl.DisableMonday(); //desactivar el lunes
Función principal de comprobación del permiso de comercio (para la hora actual del servidor)
if ( timeControl.IsTradingTime() == true )
{
//código
}
else
{
//código
}
Asimismo, se puede transmitir la variable del tipo datetime:
datetime date = D'24.02.2015 12:30:27';
if ( timeControl.IsTradingTime(date) == true )
{
//código
}
else
{
//código
}
Traducción del inglés realizada por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/en/code/12484

El indicador construye flechas de búffer hacia arriba/abajo en la ventana del gráfico.

Indicador de señal de semáforo que forma señales al cambiar la dirección del movimiento del indicador BinaryWave.

Este indicador es una versión de FractalZigZagNoRepaint para MQL5, que muestra los máximos y mínimos locales.

Indicadores Smoothed RSI y RSI of Moving Average.