Watch how to download trading robots for free
Find us on Telegram!
Join our fan page
Join our fan page
You liked the script? Try it in the MetaTrader 5 terminal
- Views:
- 504
- Rating:
- Published:
- 2025.04.11 08:54
-
Need a robot or indicator based on this code? Order it on Freelance Go to Freelance
CTsLogger is a simple and flexible logging system specifically designed for creating and debugging trading systems in MQL5. The main advantage of CTsLogger is the ability to temporarily enable debug mode for specific modules or code sections while maintaining a lower global logging level. This allows you to get detailed logging of specific code areas without "drowning" in a flood of messages, and then disable it with a single command.
Key Benefits
- Ease of Use: Minimal initialization and easy invocation of logging methods
- Debugging Flexibility: Ability to enable debug mode for individual modules even with a low global logging level
- Hierarchical Structure: Support for hierarchical module identifiers for logical organization
- State Management: Ability to pause and resume debug mode without losing settings
- Reliability: Continues to work even with file system errors (graceful degradation to terminal output)
- Minimal Dependencies: Works independently without requiring other components
Logging Levels
CTsLogger supports 4 logging levels, in order of increasing detail:
- LOG_LEVEL_ERROR - errors only
- LOG_LEVEL_WARNING - warnings and errors
- LOG_LEVEL_INFO - informational messages, warnings, and errors
- LOG_LEVEL_DEBUG - debug messages, informational messages, warnings, and errors
Complete API
Creation and Initialization
- CTsLogger() - constructor
- ~CTsLogger() - destructor
- Initialize(string logFileName, bool logToTerminal = true) - logger initialization
- SetGlobalLogLevel(ENUM_LOG_LEVEL level) - setting the global logging level
Logging Methods
- Error(string moduleId, string message) - error logging
- Warning(string moduleId, string message) - warning logging
- Info(string moduleId, string message) - information message logging
- Debug(string moduleId, string message) - debug message logging
Basic Debug Mode Control
- EnableDebugMode(string moduleId) - enable debug mode for a module
- DisableDebugMode(string moduleId) - disable debug mode for a module and all its child modules
- IsInDebugMode(string moduleId) - check if debug mode is enabled
- EnableDebugModeAll() - enable debug mode for all modules
- DisableDebugModeAll() - disable global debug mode while preserving module settings
Advanced Debug Mode Control
- PauseDebugMode() - temporarily pause debug mode for all modules
- ResumeDebugMode() - resume debug mode for previously configured modules
- IsDebugModePaused() - check if debug mode is paused
- ResetDebugModules() - completely reset all debug modules
- HasChildDebugModules(string parentModule) - check for child modules in debug mode
See CTsLogger-ReadMe.txt for more information.

Chande Kroll Stop indicator - stop levels for short and long positions.

changing character prices on an interval

This is a simple mean reversion EA

Candle Signature with Example | For Research and Development