共通関数ログ出力とは?ログとは、任意のタイミングでプログラムから出力する文字情報の事を指します。プログラムの処理に直接影響を与えることはありませんが、問題が発生した際にログからその原因を探る、といった用途で使用されます。プログラム内でどの程度のログ出力を行うかは開発者次第ですが、ログ出力が多くなるとプログラムの動作速度が低下してしまう恐れがあります。そのため、開発中のプログラムでは細かい動作内容も含めて多めにログを出力し、完成後のプログラムでは問題の原因を特定するために必要な最低限のログのみを出力する、というのが一般的なログ出力の方法となります。ログを出力するPrint関数ログを出力するには、MQL4で提供されているPrint関数を使用します。Reference引数Print関数の引数には出力したいログの内容を指定し、Print関数を一回呼ぶごとに一行のログが出力されます。引数の数や型についてはAlert関数と同様となりますので、詳細は以下のリンク先をご参照ください。MQL4逆引きリファレンスhttps://www.mql4-encyclopedia.com/alert/戻り値Print関数に戻り値はありません。上記例ではパラメーターで入力された移動平均の期間をログに出力しています。パラメーターはユーザーがプログラムを使用する際に自由に変更することが出来るため、その設定内容が原因で問題が発生することも考えられます。そのようなケースに備えてパラメーターの設定内容をログに出力しておけば、後からどのような設定内容でプログラムを動かしたのかをログから調べることが可能となります。ログの表示プログラムを実行しPrint関数が呼ばれると、MetaTrader4のターミナルウィンドウにある「エキスパート」(バックテストの場合はテスターウィンドウにある「操作履歴」)というタブにログの内容が表示されます。表示内容は「日時」「プログラム名」「プログラムを実行したチャートの通貨ペア」「プログラムを実行したチャートの時間足」「ログ内容(Print関数の引数)」というフォーマットになりますので、複数のプログラムが同時に動作している状況であっても、どのチャートのプログラムが出力したログなのかを特定できるようになっています。逆に言うと、日時やプログラム名、チャートの通貨ペアや時間足はPrint関数の引数に含める必要は無い、ということになりますね。ログファイル出力されたログはデータウィンドウの「MQL4」(バックテストの場合は「tester」)→「Logs」のフォルダ内に日付毎に保存されています。ログファイルは一定期間が過ぎると自動的に削除される仕様となります。重要なログファイルは別のフォルダに移動するなどのバックアップ対策が必要となりますのでご注意ください。ログ出力による動作速度の低下ログを出力するとファイルへの書き込み処理が発生するため、プログラムの動作速度が低下します。実際に速度低下による影響が出るのは主にバックテストであり、通常のプログラム実行においては大量のログを出力しない限りほとんど影響はありません。バックテストによる実行かどうかはIsTesting関数で判定が可能なので、バックテストの完了までに時間がかかってしまう場合は一時的にPrint関数を実行しないようにするのも一つの手段となります。音を鳴らしたい!音を鳴らす、というとアラート表示機能を想像する方も多いと思いますが、今回紹介するのは音「だけ」を鳴らす方法で、アラート表示機能とは異なりポップアップウィンドウは表示しません。そのためメッセージを表示することは出来ませんが、アラート表示機能では出来ない「プログラムごとに好きなサウンドファイルを指定する」ことが可能となります。サウンドフ...記事を読むアラートを表示したい!MetaTrader4のアラートとは、音と共にメッセージ付きのポップアップウィンドウを表示する機能の事を指します。チャートを監視しながら何か別の作業を行う際には必須機能といっても良いくらい、とても便利な機能ですね。このアラート機能ですが、MQL4で作成したプログラムであれば任意のタイミングで表示することが出来ます。今回はMQL4のプ...記事を読むメールを送信したい!MQL4を使用したプログラムでは、任意のタイミングでメールを送信することが出来ます。メールは任意のアドレスに送信可能で、送信先のメールアドレスを登録すればスマートフォンでも受信することが出来ます。条件の達成状況や売買の成功可否をメールで送信することで、メールを受信できる環境下であれば外出先でもその状況を把握することが出来るため、非常に便...記事を読むコメントを表示したい!コメントと言うとブログのコメントのようなものを想像されるかもしれませんが、MetaTrader4のコメントとはチャートの左上に表示される文字情報のことを指します。MQL4のプログラムでコメント機能を使用することで、任意の文字情報を簡単にチャートへ表示することが出来ます。プラットフォームである「MetaTrader4」の機能を拡張するためのプログラム言語です。プラットフォームである「MetaTrader4」の機能を拡張するためのプログラム言語です。MetaTrader4やMQL4についての詳しい内容はこちらもご参照ください。運営者情報サイト運営者:のりプログラムを作成していて「あれ、どうするんだっけ?」と思ったことはありませんか?当サイトはそんな時に答えがきっと見つかるサイトです。詳しい運営者情報はこちらからどうぞ。当サイトではEAやインジケーターの作成代行は承っておりませんが、私も利用させて頂いている信頼できる作成代行サイトさんを紹介します。MQL4逆引きリファレンス.。