無料でロボットをダウンロードする方法を見る
Twitter上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
ライブラリ

Logify - Library for log management - MetaTrader 5のためのライブラリ

ビュー:
40
評価:
(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) ビュー
MQL5フリーランス このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動

Logifyは、EAとインジケータのデバッグ、トラッキング、モニタリングを簡素化するために設計されたMQL用のロギングライブラリです。ログレベル、柔軟なフォーマット、複数のハンドラをサポートし、構造化され、カスタマイズ可能で、整理されたログをチャート上またはターミナルで直接提供します。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データベースにログを保存

例えば、グラフィック+ファイル+コンソールのように、1つまたは複数のハンドラを同時に使用することができます。


🛠️ ログフォーマット

フォーマットパターンの例

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

使用可能なトークン:

  • {レベル名}:レベル名 (DEBUG、INFO、ERRORなど)
  • {msg}:メインメッセージ
  • {args}: 追加の引数または詳細
  • {timestamp} タイムスタンプ(秒単位) (Unix Time)
  • {date_time}: 書式付き日時 (hh:mm:ss など)
  • {level} レベルの数値コード (0 = DEBUG, 1 = INFO...)
  • {オリジン} ログ呼び出しで定義されたオリジンまたはコンテキスト
  • {ファイル名} ソースファイル名(利用可能な場合)
  • {関数} 呼び出された関数の名前
  • {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

このExpert Advisor(EA)は、FXと暗号市場の両方で1分足(M1)チャート上の高頻度取引用に設計されています。RSIとローソク足のパターンを使用して売買シグナルを識別し、市場のボラティリティに基づいたダイナミックなストップロス、テイクプロフィット、トレイリングストップレベルで自動的に取引を実行します。

Rsi Engulfing Bar V2 Rsi Engulfing Bar V2

Rsiインジケータ

MetaTrader 5の標準最適化機能を拡張するテスター用スクリプト MetaTrader 5の標準最適化機能を拡張するテスター用スクリプト

これは、MetaTrader 5の標準的な最適化機能を拡張するテスタースクリプトで、複雑なユーザー定義の基準(サンプル内期間とサンプル外期間の分離、高度な指標と統計テスト)に従ってストラテジーを評価することができます。