MQL4言語のプログラミング例に関する記事

icon

MQL5言語でMetaTraderプラットフォームのインジケータと自動売買ロボットを作成する方法を示すコード例を含む膨大な記事のコレクションにアクセスします。ソースコードは記事に添付されているので、MetaEditorで開いて実行して、アプリがどのように機能するかを確認できます。

これらの記事は自動取引初心者にも、プログラム経験があるプロのトレーダーにも役に立つでしょう。それらは単に例を特徴とするだけではなく、新しいアイデアも含んでいます。

新しい記事を追加
最新 | ベスト
MQL4プログラムの代表的なエラーとその対処法
MQL4プログラムの代表的なエラーとその対処法

MQL4プログラムの代表的なエラーとその対処法

旧バージョンのコンパイラでは、プログラムを強制終了しないために、多くのエラーは実行環境で処理されていました。例えば、ゼロ除算エラーや配列の範囲を越えるなどは重大なエラーです。この重大なエラーがプログラムの強制終了をもたらします。新しいコンパイラのおかげで、実際のエラーソースと潜在的エラーソースを見つけ、コードの質を向上させることができます。この記事では、古いプログラムのコンパイル時に起りうるエラーと、その対処法について検証していきます。
MT4のストラテジーテスターでバイナリーオプションを行う方法
MT4のストラテジーテスターでバイナリーオプションを行う方法

MT4のストラテジーテスターでバイナリーオプションを行う方法

バイナリーオプションストラテジーを構築し、MT4のストラテジーテスターで検証する方法をご紹介します。
初心者向け MQL4 言語はじめに
初心者向け MQL4 言語はじめに

初心者向け MQL4 言語はじめに

この記事シリーズは、プログラミングのことは何も知らないが、最短の時間、最小の労力でできるだけ速く MQL4 言語を学びたいという願いを持つトレーダーを対象としています。みなさんが『オブジェクト指向』、『三次元配列』などのフレーズに恐れをいだいているなら、本稿はそんな人が必要とするものです。レッスンは最大に迅速な結果を出すために作成されています。そのうえ、情報は理解しやすいように提供されています。理論を深く掘り下げすぎることはしませんが、初回レッスンですでに実用的な効用を得ることでしょう。
LinuxにおけるMetaTrader 4
LinuxにおけるMetaTrader 4

LinuxにおけるMetaTrader 4

この記事では、一般的なLinuxバージョン(UbuntuとDebian)にMetaTrader 4をインストールする簡単な方法を示します。これらのシステムは、サーバーハードウェアだけでなく、トレーダーのパーソナルコンピューターでも広く使用されています。
Mac OSでのMetaTrader 4
Mac OSでのMetaTrader 4

Mac OSでのMetaTrader 4

Apple社の製品は、とても高い人気を得ています。MetaQuotes Software Corp.社は、コンピューターテクノロジーの発展に注意深く注目し、iOSデバイス版、つまり、iPhone版のMetaTrader 4とMetaTrader 5用の専用モバイルアプリケーションをすでにリリースしています。MQL4.communityのフォーラムでは、幾度となくMac OSでのMetaTrader 4の起動の可能性についての話題が上がっていました。この記事では、多くの人が愛用するAppleのオペレーションシステムで、いかに簡単にMetaTrader 4を使用できるか解説していきたいと思います。
初心者向け MQL4 言語テクニカルインディケータと組み込み関数
初心者向け MQL4 言語テクニカルインディケータと組み込み関数

初心者向け MQL4 言語テクニカルインディケータと組み込み関数

本稿は『初心者向け MQL4 言語』シリーズの第3弾です。ここでは組み込み関数およびテクニカルインディケータと連携する関数の使い方を学習します。後者はご自身の Expert Advisor やインディケータをさらに発展させる上で基本となるものです。また、簡単な例で、市場参入のためのトレードシグナルの追跡法を見て、インディケータを正しく使用する方法が理解できるようにします。本稿が終わるころには、みなさんはこの言語自体について何か新しいおもしろいことを学んでいることでしょう。
EAのサンプル
EAのサンプル

EAのサンプル

一般的なMACDを使ったEAを例として、MQL4開発の原則を紹介します。
プライスアクション。はらみ足(Inside Bar)トレード戦略の自動化
プライスアクション。はらみ足(Inside Bar)トレード戦略の自動化

プライスアクション。はらみ足(Inside Bar)トレード戦略の自動化

本稿は、はらみ足戦略に基づくメタトレーダー4エキスパートアドバイザーの開発について書かれています。ペンディングとストップオーダーのセッティングルールと、はらみ足と判断する規則についても述べられています。テストと最適化の結果が書かれています。
カスタムインディケータ作成の特徴
カスタムインディケータ作成の特徴

カスタムインディケータ作成の特徴

カスタムインディケータ作成の特徴
トレードにおける角度 さらなる考察が必要です
トレードにおける角度 さらなる考察が必要です

トレードにおける角度 さらなる考察が必要です

本稿では, MT4ターミナルにて角度の測定によるトレード分析のメソッドについて考察します。 この記事では、トレンドの動きの分析に角度を使用する一般的な計画だけでなく、トレード角度の分析の実用的なアプリケーションへの非標準メソッドを実装します。 この記事はまた、トレードに役立つ結論を導き出します。
プライスアクション。つつみ線パターンのトレード戦略を自動化するには
プライスアクション。つつみ線パターンのトレード戦略を自動化するには

プライスアクション。つつみ線パターンのトレード戦略を自動化するには

本稿はつつみ線パターンに基づくメタトレーダー4のためのエキスパートアドバイザーを作成する手順について書かれています。パターン認識のルール、待機注文とストップ注文の設定ルールについても書かれています。テストと最適化の結果もあなたの質となるよう提供します。
開発者諸君、己を守れ!
開発者諸君、己を守れ!

開発者諸君、己を守れ!

知的財産の保護はいまだに大きな問題です。本稿では MQL4 プログラム保護の基本原則について説明します。これら原則により、みなさんの開発結果が盗難にあわないよう、すくなくとも盗人の『仕事』をひじょうに複雑にして行わなくなるようにします。
Meta COT プロジェクト - MetaTrader 4 における CFTC レポート分析の新たな展望
Meta COT プロジェクト - MetaTrader 4 における CFTC レポート分析の新たな展望

Meta COT プロジェクト - MetaTrader 4 における CFTC レポート分析の新たな展望

本稿では、MetaTrader における CFTC レポートデータ(オープンインターネット)の使用について述べます。提案されている META COT プロジェクトを詳しく説明し、必要な情報をロードし処理する方法をお伝えします。プロジェクトに入っている Expert Advisor は本稿で紹介するコンセプトの有効性を分析するのに役立つものです。最後に、なんらかの結論を導き、有用な提案をします。
初心者向け MQL4 言語カスタムインディケータ(パート 2)
初心者向け MQL4 言語カスタムインディケータ(パート 2)

初心者向け MQL4 言語カスタムインディケータ(パート 2)

本稿は『初心者向け MQL4 言語』シリーズの第5弾です。今日はグラフィカルオブジェクトの使用について学習します。それはインディケータを使用する機能を実質的に広げる強力な作成ツールです。また、スクリプトや Expert Advisor でも利用可能です。それからオブジェクトの作成、そのパラメータ変更、エラーチェックについても学習します。もちろん、すべてのオブジェクトの詳細を説明することはできません。ひじょうに数が多いのです。ですが、ご自身で学習できるように必要な知識は得られることでしょう。本稿には複雑なシグナルインディケータの作成の段階的なガイド例を盛り込んでいます。そこでは多くのパラメータは調整可能で、それによりインディケータの表示変更が簡単になります。
Sleep か否か?
Sleep か否か?

Sleep か否か?

EA のアクションの間にポーズを実装する Sleep() 関数の代替使用を提案します検討する方法によりマシンタイム賢い使い方ができます。
MetaTrader4クライアントターミナルを扱う際の初心者が起こすミス
MetaTrader4クライアントターミナルを扱う際の初心者が起こすミス

MetaTrader4クライアントターミナルを扱う際の初心者が起こすミス

ミスは人間につきものです。みな失敗を犯します:多かれ少なかれ、無知や、うっかりしていいたせいでミスを犯します。訪ねていただいた以下の質問にお答えします:ターミナルタイム・テスト結果・ジャーナルへの表示・テスター用履歴・履歴インポート・レバレッジ・トラフィック・ヒント・スケーリング・計算ミス・不当なアカウント・エンプティニュース・価格の変化・不十分な資金・マーケット閉鎖などです。
MT4ビルド600以降のバージョンのデータ構造と保存場所
MT4ビルド600以降のバージョンのデータ構造と保存場所

MT4ビルド600以降のバージョンのデータ構造と保存場所

MT4ビルド600以降のバージョンには、データ構造と保存場所が変更されました。これから、MQL4アプリケーションはプログラムタイプ(エキスパートアドバイザー、指標またはスクリプト)に応じて別のディレクトリに配置されます。ほとんどの場合クライアント端末のデータは端末設置場所から分離された特別なデータフォルダに格納されています。この記事は、どうやって データが転送されるのか、又は、なぜデータ構造と保存場所が変更したのかについて説明しています。
マジックナンバー:オーダー"マジック"識別子
マジックナンバー:オーダー"マジック"識別子

マジックナンバー:オーダー"マジック"識別子

本稿は複数のエキスパートアドバイザーを1つのMT4ターミナルで稼働する際に、相互干渉する問題に取り組んでいます。エキスパートアドバイザーが、”別の”ポジション(手動か他のエキスパートアドバイザーがオープンしたポジション)を修正したりクローズしたりしないように、”固有の”オーダーのみを管理するよう”教える”ようにします。本稿はMQL4のターミナルとプログラミングに関する基本スキルをお持ちのユーザー様向けに書かれています。
トレードシグナルの定性的分析とその選択の仕方
トレードシグナルの定性的分析とその選択の仕方

トレードシグナルの定性的分析とその選択の仕方

この記事では、シグナルプロバイダのパフォーマンス評価について説明します。 従来のアプローチとは若干異なる角度からシグナルトレードの結果を強調する追加項目を提供します。 適切な管理と完全トレードの概念について説明します。 また、得られた結果を用いて、最適な選択にこだわるとともに、複数のシグナルのポートフォリオをします。
高速で再描画しない ZigZag の書き方
高速で再描画しない ZigZag の書き方

高速で再描画しない ZigZag の書き方

ZigZag タイプのインディケータを描くかなりユニバーサルな方法を提案します。この方法にはすでに説明されているZigZag のかなりの部分を含み、この方法で比較的簡単にZigZag を作成することができます。
価格変動の速度と傾向に基づくトレードアイディア
価格変動の速度と傾向に基づくトレードアイディア

価格変動の速度と傾向に基づくトレードアイディア

この記事では、価格変動の速度と傾向に基づいたトレードアイディアについて紹介しています。検証する戦略の持続性を明らかにする目的で、取引エキスパートアドバイザのテストとして、MQL4言語でトレードアイディアの形式化が行われます。また、チェックや研究、最適化をすることによって、記事に書かれている例の最も良いパラメータが明確になります。
MQL4 でダブルスの作業をする
MQL4 でダブルスの作業をする

MQL4 でダブルスの作業をする

本稿では、一般的なプログラムエラーについて考察します。それは MQL4 プログラムでdouble の数字を処理するときに発生するものです。
メタトレーダーでニューラルネットワークを利用する
メタトレーダーでニューラルネットワークを利用する

メタトレーダーでニューラルネットワークを利用する

本稿は、みなさんのコードに複数のニューラルネットワークを取り入れて無料の人工ニューラルネットワークライブラリ(FANN)を活用し、MQL4 コードでニューラルネットワークを簡単に利用する方法をお見せします。
MetaTrader 4 クライアントターミナルのプログラムフォルダ
MetaTrader 4 クライアントターミナルのプログラムフォルダ

MetaTrader 4 クライアントターミナルのプログラムフォルダ

本稿では、MetaTrader 4 クライアントターミナルのプログラムフォルダの内容を説明します。本稿は、クライアントターミナル操作の詳細をすでに理解し始めた方に有用です。
DLLを経由したメタトレーダーターミナルの管理
DLLを経由したメタトレーダーターミナルの管理

DLLを経由したメタトレーダーターミナルの管理

本稿は通知機能の設定をする例を紹介しながら補助DLLライブラリを経由してメタトレーダーユーザーのインターフェイスを使うことについて書かれています。ライブラリソースコードとスクリプトのサンプルを添付しています。
再起動なしでの MQL4 プログラムの外部パラメータ変更
再起動なしでの MQL4 プログラムの外部パラメータ変更

再起動なしでの MQL4 プログラムの外部パラメータ変更

本稿では、再起動せずオンザフライで MQL4 プログラムの外部パラメータを変更する方法について説明します。
Expert Advisor、スクリプト、インディケータの同期
Expert Advisor、スクリプト、インディケータの同期

Expert Advisor、スクリプト、インディケータの同期

本稿では Expert Advisor、スクリプト、インディケータが含まれるバンドルプログラムを作成する必要性と一般的原則について考察します。
外部世界と情報交換するメタトレーダー4 エキスパートアドバイザー
外部世界と情報交換するメタトレーダー4 エキスパートアドバイザー

外部世界と情報交換するメタトレーダー4 エキスパートアドバイザー

メタトレーダー4・エキスパートアドバイザーと外部世界との情報交換をおこなうための、シンプルで互換性があり、信頼できる解決策情報の提供者と利用者は、それぞれ異なるコンピューターに位置しています。そのため両者の接続はグローバルIPアドレスを使用します。
初心者向け MQL4 言語カスタムインディケータ(パート 1)
初心者向け MQL4 言語カスタムインディケータ(パート 1)

初心者向け MQL4 言語カスタムインディケータ(パート 1)

本稿は『初心者向け MQL4 言語』シリーズの第4 弾です。今日はカスタムインディケータの書き方を学習します。インディケータを特徴で分類する知識を得、この特徴がインディケータにどのように影響するかを確認し、新しい関数や最適化について学び、最後に自分のインディケータを書きます。また、本稿末尾にはプログラミングスタイルのアドバイスもあります。『初心者の方にとって』本稿が最初に読む記事であれば、先行記事を読むのが良いかもしれません。また、この記事では基礎は説明していないので、前の資料を正しく理解できていることを確認してください。
レンジやトレンド相場を例にストラテジーテスターを使ったインジケーターの最適化
レンジやトレンド相場を例にストラテジーテスターを使ったインジケーターの最適化

レンジやトレンド相場を例にストラテジーテスターを使ったインジケーターの最適化

多くの戦略では、レンジか否かを検出することが不可欠です。ストラテジーテスターを使用する方法を示し、ADXを最適化します。同様に、このインジケータがニーズを満たすかどうかを決定し、レンジやトレンドの平均を知ることができます。
WinAPI によるファイル処理
WinAPI によるファイル処理

WinAPI によるファイル処理

MQL4 環境は安全な『サンドボックス』の概念を基にしています。言語を用いたファイルの読み出しと保存は一部の定義済みフォルダでのみ許可されています。これは MetaTrader 4 のユーザーを HDD 上の重要なデータを破壊する潜在的な危険から守ってくれます。ですが、その安全領域を残しておくことが必要な場合もあります。本稿はそれを簡単に正確に行う方法の問題に特化しています。
フラクタルを利用した水平ブレークスルーレベルの描画
フラクタルを利用した水平ブレークスルーレベルの描画

フラクタルを利用した水平ブレークスルーレベルの描画

本稿は、アップ/ダウン フラクタルを用いてサポート/レジスタンス レベルを表示するインディケータの作成について説明します。
インジケーターの外部パラメーターのグラフィックコントロール
インジケーターの外部パラメーターのグラフィックコントロール

インジケーターの外部パラメーターのグラフィックコントロール

インジケーターの外部変数は、パラメーターが変更できる特別なウィンドウを用いてコントロールされ、そのインジケーターは再度使用されます。これらの操作の不便さは、スクリーン上に必要なパラメータを表示させ、視覚的にインジケータを管理する必要性を生み出しました。
インディケータコードから Expert Advisor コードへの変換インディケータストラクチャ
インディケータコードから Expert Advisor コードへの変換インディケータストラクチャ

インディケータコードから Expert Advisor コードへの変換インディケータストラクチャ

本稿はインディケータコードを Expert Advisor コードへ変換し、カスタムインディケータの呼び出しなく、Expert Advisor 内で必要なインディケータ値を計算するためのプログラムコード全体を使って Expert Advisor を書く方法に特化して述べます。本稿はインディケータストラクチャの一般的なスキーム、Expert Advisor におけるインディケータバッファの列挙、関数 IndicatorCounted() の置換を提供し述べます。対象とする読者はすでに MQL4 言語でのプログラム経験をお持ちの方です。
新しいMQL4のオフラインチャート
新しいMQL4のオフラインチャート

新しいMQL4のオフラインチャート

新しいバージョンのMQL4では、履歴データの保存方法が変更され、MqlRates構造体が新たに追加されました。MqlRates構造体は、Time、Open、Low、High、Close、Volumeなどの値を保存するのに役立ちます。長年にわたってトレーダーは、オフラインチャートを作成する為にHSTファイルに自分のデータを集めて書き込む、自分のプログラムをMQL4で作成していました。各トレーダーは、以前にコンパイルされた全てのEX4ファイルが、新しいMetaTrader4ターミナルで、以前と同様に動作すると確信していることでしょう。
外部指標のためのアラートとコメント
外部指標のためのアラートとコメント

外部指標のためのアラートとコメント

各テクニカル指標の売買シグナルのデータの受信方法や、[コメント]・[アラート]画面の表示方法について説明します。
初心者向け MQL4 言語シンプルなフレーズにおける難しい質問
初心者向け MQL4 言語シンプルなフレーズにおける難しい質問

初心者向け MQL4 言語シンプルなフレーズにおける難しい質問

本稿は『初心者向け MQL4 言語』シリーズの第2弾です。より複雑で高度な言語構成を考察し、新しいオプションを学習し、日々の実践にそれらが応用されるか見ていきます。新しいサイクルタイプである 'while' と、新しい条件タイプ 'switch'、演算子 'break' と 'continue' を取得します。また、自分の関数を書き、多次元配列を処理する方法を学習します。そして仕上げには、プリプロセッサの説明です。
エラー 146 (「トレードコンテキスト ビジー」) と、その対処方法
エラー 146 (「トレードコンテキスト ビジー」) と、その対処方法

エラー 146 (「トレードコンテキスト ビジー」) と、その対処方法

この記事では、MT4において複数のEAの衝突をさける方法を扱います。ターミナルの操作、MQL4の基本的な使い方がわかる人にとって、役に立つでしょう。
新しいMetaTrader 4ビルド600以降へのアップデート
新しいMetaTrader 4ビルド600以降へのアップデート

新しいMetaTrader 4ビルド600以降へのアップデート

4ターミナル(build600以降)の、ユーザーデータの保存場所が変更されました。以前は、全てのプログラムやテンプレート、プロフィールなどがターミナルのインストールディレクトリに直接保存されていましたが、これからは特定のユーザーターミナルの動作に必要不可欠なデータは、データフォルダと呼ばれる別個の特別なフォルダに保存されます。この記事では、よくある質問についての回答を集めました。
CSV ファイルを介した MetaTrader 4 と Matlab 間の連携
CSV ファイルを介した MetaTrader 4 と Matlab 間の連携

CSV ファイルを介した MetaTrader 4 と Matlab 間の連携

CSV ファイルを介した MetaTrader 4 と Matlab 間のデータ配列交換作成法の段階的手順。