请观看如何免费下载自动交易
请在Twitter上找到我们!
加入我们粉丝页
有趣的脚本?
因此发布一个链接 -
让其他人评价
喜欢这个脚本? 在MetaTrader 5客户端尝试它
显示:
56
等级:
(3)
已发布:
\MQL5\Experts\Logify\ \MQL5\Include\Logify\
Logify.mqh (25.24 KB) 预览
\MQL5\Include\Logify\Utils\ \MQL5\Include\Logify\Suppression\ \MQL5\Include\Logify\Handlers\ \MQL5\Include\Logify\Formatter\ \MQL5\Include\Logify\Error\Languages\ \MQL5\Include\Logify\Error\
Error.mqh (0.55 KB) 预览
LogifyError.mqh (14.29 KB) 预览
MQL5自由职业者 需要基于此代码的EA交易或指标吗?请在自由职业者服务中订购 进入自由职业者服务

Logify 是 MQL 的日志库,旨在简化 EA 和指标的调试、跟踪和监控。它直接在图表或终端上提供结构化、可定制和有组织的日志,支持日志级别、灵活格式和多个处理程序。这是一个轻量级、优雅的解决方案,可轻松集成到您的 MQL 项目中。


📦 功能

  • 多种日志级别:调试、信息、警报、错误、致命
  • 直接在图形、终端、文件甚至数据库上显示日志
  • 可定制日志格式和布局
  • 具有多个处理程序的模块化架构
  • 轻量级,易于集成和使用


🚀 安装

  1. 将 /Logify 文件夹复制到:
    MQL5/Include/
  2. 在您的 EA、指标或脚本中包含 Logify:
    #include <Logify/Logify.mqh>
  3. 可以使用 Git 安装,只需访问版本库 并按步骤操作即可。



🔧 快速入门示例

使用默认设置的简单示例:

//+------------------------------------------------------------------+
//| 进口|
//+------------------------------------------------------------------+
#include <Logify/Logify.mqh>
CLogify Logify;
//+------------------------------------------------------------------+
//| 专家初始化函数|
//+------------------------------------------------------------------+
int OnInit()
  {
   //--- 日志示例
   Logify.Debug("Initialization started");
   Logify.Info("Account balance is OK");
   Logify.Alert("Take profit reached");
   Logify.Error("Failed to send order", "Order", "Reason: No money");
   Logify.Fatal("Critical error: Invalid input parameters");

  //---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+

高级示例,自定义处理程序设置。在此示例中,我们将日志记录保存到文件和图表注释中。自定义每个处理程序的设置。

//+------------------------------------------------------------------+
//| 进口|
//+------------------------------------------------------------------+
#include <Logify/Logify.mqh>
CLogify Logify;
//+------------------------------------------------------------------+
//| 专家初始化函数|
//+------------------------------------------------------------------+
int OnInit()
  {
   //-- 配置评论处理程序
   MqlLogifyHandleCommentConfig config_comment;
   config_comment.size = 10;
   config_comment.frame_style = LOG_FRAME_STYLE_SINGLE;
   config_comment.direction = LOG_DIRECTION_UP;
   config_comment.title = "My Expert";

   //--- 创建并配置评论处理程序
   CLogifyHandlerComment *handler_comment = new CLogifyHandlerComment();
   handler_comment.SetConfig(config_comment);
   handler_comment.SetLevel(LOG_LEVEL_DEBUG);
   handler_comment.SetFormatter(new CLogifyFormatter("{date_time} [{levelname}]: {msg}","hh:mm:ss"));
   
   //--- 配置文件处理程序
   MqlLogifyHandleFileConfig file_config;
   file_config.CreateDateRotationConfig("my_expert","logs",LOG_FILE_EXTENSION_LOG,10,100,CP_UTF8);
   
   //--- 创建并配置文件处理程序
   CLogifyHandlerFile *handler_file = new CLogifyHandlerFile();
   handler_file.SetConfig(file_config);
   handler_file.SetLevel(LOG_LEVEL_DEBUG);
   handler_file.SetFormatter(new CLogifyFormatter("{date_time} [{levelname}]: {msg} ({filename} | {origin} | {function})","hh:mm:ss"));
   
   //--- 附加处理程序
   Logify.AddHandler(handler_comment);
   Logify.AddHandler(handler_file);

   //--- 日志示例
   Logify.Debug("Initialization started");
   Logify.Info("Account balance is OK");
   Logify.Alert("Take profit reached");
   Logify.Error("Failed to send order", "Order", "Reason: No money");
   Logify.Fatal("Critical error: Invalid input parameters");
   
   //---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+

要了解每种设置,建议阅读下面的文章,我将在文章中解释库开发的每个步骤:


✔️ 日志级别

级别
描述
调试
用于调试的详细资料
INFO
一般信息
警报
警告或重要事件
错误
需要注意的错误
致命错误
严重错误,停止执行


🖥️ 包括的处理程序

每个处理程序都定义了日志的显示或存储位置。

处理程序
说明
注释
直接在图表上显示日志(注释)
控制台
在 MetaTrader 终端显示日志
文件
将日志保存为 .txt 或 .log 文件
数据库 在本地 SQLite 数据库中存储日志

您可以同时使用一个或多个处理程序,例如图形 + 文件 + 控制台。


🛠️ 日志格式

格式化模式示例:

"{date_time} [{levelname}]: {msg}"

可用标记:

  • {levelname}:级别名称(DEBUG、INFO、ERROR 等)
  • {msg}:主要信息
  • {args} 附加参数或详细信息
  • {timestamp} 以秒为单位的时间戳(Unix 时间)
  • {date_time} 格式化日期和时间(hh:mm:ss 等)
  • {level} 级别的数字代码(0 = DEBUG、1 = INFO...)
  • {origin} 日志调用中定义的原点或上下文
  • {filename} 源文件名称(如果有)
  • {function} 被调用的函数名称
  • {line} 发生日志的代码行号


⚖️ 许可证

MIT 许可 - 个人和商业项目均可免费使用。


👨‍💻 作者

joaopedrodev 开发,致力于使 MQL 开发更加专业、有序和高效。

由MetaQuotes Ltd译自英文
原代码: https://www.mql5.com/en/code/59821

Rsi Ema Engulfing Bar V3 Rsi Ema Engulfing Bar V3

在上升的 Ema 移动平均线下方出现吞没条 - 买入交易 - 买入交易

QuickTrend Scalper QuickTrend Scalper

该智能交易系统(EA)专为在外汇和加密货币市场的 1 分钟(M1)图表上进行高频交易而设计。它使用 RSI 和蜡烛图形态来识别买入和卖出信号,根据市场波动情况自动执行带有动态止损、止盈和追踪止损水平的交易。

Rsi Engulfing Bar V2 Rsi Engulfing Bar V2

Rsi 指标

用于测试人员的脚本,可扩展 MetaTrader 5 的标准优化功能 用于测试人员的脚本,可扩展 MetaTrader 5 的标准优化功能

这是一个测试脚本,可扩展 MetaTrader 5 的标准优化功能,允许您根据复杂的用户定义标准(分为样本内和样本外期间、高级指标和统计测试)评估策略。