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:
- 148
- Ranking:
- Publicado:
- 2025.05.20 11:38
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
CTsLogger es un sistema de registro simple y flexible especialmente diseñado para crear y depurar sistemas de trading en MQL5. La principal ventaja de CTsLogger es la capacidad de habilitar temporalmente el modo de depuración para módulos específicos o secciones de código, manteniendo un nivel de registro global más bajo. Así, puede obtener un registro detallado de ciertas secciones de código sin "ahogarse" en el flujo de mensajes, y luego desactivarlo con un solo comando.
.
CTsLogger soporta 4 niveles de registro, en orden ascendente de detalle:
1. LOG_LEVEL_ERROR - sólo errores
2. LOG_LEVEL_WARNING - advertencias y errores
3. LOG_LEVEL_INFO - mensajes de información, advertencias y errores
4. LOG_LEVEL_DEBUG - mensajes de depuración, mensajes informativos, advertencias y errores
CTsLogger admite identificadores de módulo jerárquicos separados por un punto, lo que permite organizar los módulos en una estructura lógica. La jerarquía puede tener cualquier profundidad de anidamiento.
API completa
Creación e inicialización
- `CTsLogger()` - constructor
- `~CTsLogger()` - destructor
- Inicialize(string logFileName, bool logToTerminal = true)` - inicialización del registrador
- `SetGlobalLogLevel(ENUM_LOG_LEVEL level)` - establece el nivel de registro global
Métodos deregistro
- Error(string moduleId, string message)` - registro de errores
- Warning(string moduleId, string message)` - registro de advertencias
- Info(string moduleId, string message)` - registro de mensajes de información
- Debug(string moduleId, string message)` - registro de mensajes de depuración
Control básico del modo de depuración
- EnableDebugMode(string moduleId)` - habilita el modo de depuración para un módulo
- DisableDebugMode(string moduleId)` - desactiva el modo debug para un módulo y todos sus módulos hijos
- IsInDebugMode(string moduleId)` - comprueba si el modo debug está habilitado
- EnableDebugModeAll()` - activa el modo de depuración para todos los módulos
- DisableDebugModeAll()` - desactiva el modo de depuración global guardando la configuración de los módulos
Control avanzado del modo de depuración
- PauseDebugMode()` - suspensión temporal del modo de depuración para todos los módulos
- ResumeDebugMode()` - reanuda el modo de depuración para los módulos previamente configurados
- IsDebugModePaused()` - comprueba si el modo de depuración está pausado
- ResetDebugModules()` - reinicio completo de todos los módulos de depuración
- `HasChildDebugModules(string parentModule)` - comprueba si los módulos hijos están en modo depuración
Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/58105

Un registrador con la capacidad de registrar módulos específicos o secciones de código

Firma de velas con ejemplo | Para investigación y desarrollo

Este indicador toma divergencias RSI y las traza en buffers para automatizar EAs

Se trata de un sencillo indicador analítico (no señal, calculado una sola vez) que permite probar la hipótesis de que las series temporales de precios representan un "paseo aleatorio", concretamente un "paseo aleatorio" gaussiano. Esto puede ayudar a construir una transformación paramétrica de los incrementos de precios en series temporales distribuidas uniformemente, más estables y predecibles, al menos en términos de volatilidad.