MQL4とMQL5のプログラム記事

icon

取引戦略をプログラミングするためのMQL5言語を、ほとんどがコミュニティメンバーによって書かれた数多くの公開記事で学びます。記事は統合、テスター、取引戦略等のカテゴリに分けられていて、プログラミングに関連する疑問への解答を素早く見つけることができます。

新着記事をフォローして、フォーラムでディスカッションしてください。

新しい記事を追加
最新 | ベスト
手動取引のサポーターを作成する
手動取引のサポーターを作成する

手動取引のサポーターを作成する

近年、為替市場の為のトレードロボットの数は、雪だるま式に増えています。これらのトレードロボットの中には、様々な概念や戦略がありますが、負けない人工知能の作成は誰も成し遂げていません。その為、多くのトレーダーは手動取引を支持しています。しかし、このようなスペシャリストの為に、トレードパネルと呼ばれるロボットアシスタントが作成されています。この記事では、トレードパネルの作成例を『ゼロから』ご紹介していきます。
グラフィカルインタフェース V:リストビュー要素(チャプター 2)
グラフィカルインタフェース V:リストビュー要素(チャプター 2)

グラフィカルインタフェース V:リストビュー要素(チャプター 2)

前の章では、縦横スクロールバーを作成するためのクラスを書きました。この章では、それを実装します。縦スクロールバーはそのコンパウンドの一部となるリストビュー要素を作成するためのクラスが記述されます。
グラフィカルインタフェース V: 縦横のスクロールバー(チャプター 1)
グラフィカルインタフェース V: 縦横のスクロールバー(チャプター 1)

グラフィカルインタフェース V: 縦横のスクロールバー(チャプター 1)

MetaTrader環境でのグラフィカルインタフェースを作成するためのライブラリの開発の検討が続きます。シリーズの第一部の最初の記事では、縦横のスクロールバーを作成するためのクラスを作成します。
MQL5言語でのTelegram用ボットの作成
MQL5言語でのTelegram用ボットの作成

MQL5言語でのTelegram用ボットの作成

この記事では、MQL5言語でのTelegram用ボットの作成を順を追って説明していきます。この資料は、トレードロボットを自分のモバイルデバイスに繋げたい人にとって、興味深いものになると思います。記事では、トレードシグナルのリンクの実行、サイト上の情報の検索、取引口座の状態や相場、チャートのスクリーンショットをあなたのモバイルデバイスへ送信するボットの例をご紹介します。
シグナル計算機
シグナル計算機

シグナル計算機

シグナル計算機は、MetaTrader 5のターミナルから直接動作し、ターミナルがシグナルの事前選択とソートを行います。これこそがこの計算機の大きな長所でもあります。これによって、MetaTrader 5のターミナルでは、自分の取引口座と最大限に互換性のあるシグナルのみユーザーに見えることになります。
取引システムのコンポーネントを分析することによる有効性の評価
取引システムのコンポーネントを分析することによる有効性の評価

取引システムのコンポーネントを分析することによる有効性の評価

本稿では、個々の構成要素を分析することで、複合取引システムの有効性を検証していきます。グラフィックであれ、インディケータや何かしらのものをベースにしたものであれ、どんな分析も金融市場取引で成功を収めるための重要な要素の一つです。この記事では、いくつかの独立した簡単な取引システムの検証のようなものと、それらの有効性や並行利用の有用性を分析します。
GUIコントロールのレイアウトとコンテナの使用:CGrid クラス
GUIコントロールのレイアウトとコンテナの使用:CGrid クラス

GUIコントロールのレイアウトとコンテナの使用:CGrid クラス

この記事では、1つのレイアウトマネージャを使用して、レイアウトやコンテナに基づいて、GUI作成の代替方法を提示しています。CGridクラスは、グリッドレイアウトを使用して、他のコンテナやコントロールのコンテナとして機能する補助コントロールです。
ファジーロジックの概要
ファジーロジックの概要

ファジーロジックの概要

ファジーロジックは、数学的論理と集合論の境界を拡張します。この記事では、マムダニ型とスゲノ型モデルを使用して、2つのファジー推論システムを説明し、ファジー理論の基本的な原則を取り扱います。MQL5FuzzyNetライブラリを使用して、これら2つのシステムに基づいてファジーモデルの実装について説明します。
MQL5 でのアサーション
MQL5 でのアサーション

MQL5 でのアサーション

この記事では、MQL5でのアサーションの利用について扱います。アサーションメカニズムとアサーションを実装するための一般的なガイダンスを2つの例として提供します。
テクニカル分析におけるトーマス・デマーク
テクニカル分析におけるトーマス・デマーク

テクニカル分析におけるトーマス・デマーク

この記事では、トーマス・デマーク方式によって発見されたTDポイントとTDラインを扱います。この方法については、実用的な使い方が明らかにされています。それに加えて、3つの指標とトーマスデマーク方式の概念を使用して、2つのエキスパートアドバイザーの書き込み処理を行います。
グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)
グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)

グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)

この章では、MQLアプリケーションでのマルチウィンドウインタフェースの作成の可能性をもたらすライブラリの実装を拡張します。また、グラフィカルオブジェクト上でのマウスの左クリックの優先順位のシステムを開発します。これは、要素がユーザのアクションに応答しない場合に発生する問題を回避するために必要です。
グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)
グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)

グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)

シリーズの最初の章は、シンプルボタンと多機能ボタンについてでした。2番目の記事は、アプリケーション内でユーザーがセット(グループ)のうちオプションのいずれかを選択することができる際の要素の作成を可能にする相互接続されたボタンのグループに専念します。
グラフィカルインタフェース III: シンプルなボタンと多機能ボタン(チャプター 1)
グラフィカルインタフェース III: シンプルなボタンと多機能ボタン(チャプター 1)

グラフィカルインタフェース III: シンプルなボタンと多機能ボタン(チャプター 1)

ボタンについて考えましょう。ここでは、簡単なボタン、拡張機能を持ったボタン(アイコンボタンとスプリットボタン)、また相互接続されたボタン(ボタングループとラジオボタン)を作成するためのいくつかのクラスの例を説明していきます。そのうえ、それらの能力を拡大するためのコントロールのために既存クラスにいくつかの追加を導入します。
大きなプログラムでの注文に関する考察
大きなプログラムでの注文に関する考察

大きなプログラムでの注文に関する考察

複雑なプログラムでの注文に関する考察の一般的な原則を研究していきます。
グラフィカルインタフェース  II:メインメニュー要素(チャプターー4)
グラフィカルインタフェース  II:メインメニュー要素(チャプターー4)

グラフィカルインタフェース II:メインメニュー要素(チャプターー4)

これは、グラフィカルインターフェイスに関するシリーズの第二部の最終章です。ここでは、メインメニューの作成を検討します。このコントロールの開発とユーザの行動に正確な反応するライブラリクラスのハンドラ設定が実証されます。また、メインメニューの項目にコンテキストメニューを取り付ける方法についても説明します。そのに加えて、現在非アクティブな要素のブロックも言及されます。
グラフィカルインタフェース  II:ライブラリのイベントハンドラの設定(チャプター3)
グラフィカルインタフェース  II:ライブラリのイベントハンドラの設定(チャプター3)

グラフィカルインタフェース II:ライブラリのイベントハンドラの設定(チャプター3)

以前の記事には、メインメニューの構成部分を作成するためのクラスの実装が含まれています。ここで、主要な基本クラスと作成されたコントロールのクラスでイベントハンドラを細かく見ることにします。また、マウスカーソルの位置に応じたチャートの状態の管理にも特別な注意が払われます。
ユニットテストの助けを借りたコードのクオリティー向上
ユニットテストの助けを借りたコードのクオリティー向上

ユニットテストの助けを借りたコードのクオリティー向上

シンプルなプログラムにさえ信じられないようなエラーがよくあるものです。「どうしてそんなふうになったんだろう?」というのが、そのようなエラーが明らかになったとき最初に思うことです「どうしたらエラーを出さずにすむのだろう?」というのは、あまり頻繁に心に浮かばない第2の問いです。完璧に欠点のないコードを作成するのは不可能です。特に大規模なプロジェクトでは。ですが、ちょうどよいタイミングでエラーを検出するために技術を利用できるものです。本稿では、一般的なユニットテスト方法の助けを借りてコードのクオリティーを向上する方法を説明します。
Expert Advisor 内での Expert Advisor コンテスト
Expert Advisor 内での Expert Advisor コンテスト

Expert Advisor 内での Expert Advisor コンテスト

仮想取引によって、適応型 Expert Advisor を作成することができます。それは実マーケットでトレードをオン、オフするものです。1件の Expert Advisor に複数の戦略を組み合わせます。マルチシステム Expert Advisor は自動でトレーディング戦略を選択します。それは実マーケットで仮想取引の収益性をもとにトレードを行うには最良のものです。この種の方法により、ドローダウンを減少し、マーケットでの作業の収益性を上げることができるのです。実験を行い、結果を他の人と共有してください。多くの人がみなさんの戦略ポートフォリオを知りたがっていると思います。
フィルターの魔法
フィルターの魔法

フィルターの魔法

ほとんどの自動売買システム開発者はなんらかのトレードシグナルフィルター機能を利用しています。本稿では、帯域通過と Expert Advisor 用の個別フィルターの作成と実装を探り、自動売買システムの特性を向上させます。
ろうそく方向の統計的回帰研究
ろうそく方向の統計的回帰研究

ろうそく方向の統計的回帰研究

やってくる短い時間間隔に対して、ろうそく足インディケータの定期的な傾向を基に、1日の特定時刻の市場動向を予想することは可能なのでしょうか?まず第一にそのような発生が検出されるなら、可能です。この疑問はおそらくどのトレーダーの心にも浮かんだことのあるものでしょう。本稿の目的は、ろうそく足の方向の統計的回帰に基づき、特定の時間間隔で市場動向の予想を試みることです。
ニューラルネットワークFANN2MQL のチュートリアル
ニューラルネットワークFANN2MQL のチュートリアル

ニューラルネットワークFANN2MQL のチュートリアル

本稿は、FANN2MQL によるニューラルネットワークの使用方法を簡単な例を用いて説明するために書かれました。
Meta COT プロジェクト - MetaTrader 4 における CFTC レポート分析の新たな展望
Meta COT プロジェクト - MetaTrader 4 における CFTC レポート分析の新たな展望

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

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

開発者諸君、己を守れ!

知的財産の保護はいまだに大きな問題です。本稿では MQL4 プログラム保護の基本原則について説明します。これら原則により、みなさんの開発結果が盗難にあわないよう、すくなくとも盗人の『仕事』をひじょうに複雑にして行わなくなるようにします。
金融証券の重ね合わせとインターフェース
金融証券の重ね合わせとインターフェース

金融証券の重ね合わせとインターフェース

通貨ペアの変動に影響を与える要因が多いほど、その変動を評価し将来を予測するのが困難になります。そのため、通貨ペアの構成要素と時間と共に変化する各国通貨の値をなんとか抽出することができれば、その動向に影響を与える要因数と共に、この通貨を通貨ペアと比較して各国通貨の動きの自由度の範囲を定めることができるかもしれません。結果、その変動推定と将来予測の精度を挙げることになるでしょう。どうすればそれができるのでしょうか?
トレーダーのキット:デコインディケータ
トレーダーのキット:デコインディケータ

トレーダーのキット:デコインディケータ

本稿では、インディケータを装飾する際の主要なタスク、そのソリューションと自動化を見つけ出します。
MеtaTrader 4 と MATLAB エンジン(仮想 MATLAB マシン)間のインタラクション
MеtaTrader 4 と MATLAB エンジン(仮想 MATLAB マシン)間のインタラクション

MеtaTrader 4 と MATLAB エンジン(仮想 MATLAB マシン)間のインタラクション

本稿では DLL ライブラリ- MetaTrader 4 と MATLAB の数学的デスクトップパッケージのインタラクションを可能にするラッパーの作成に関する考察を行います。また落とし穴とそれを克服する方法を説明します。本稿は Borland C++ Builder 6 コンパイラを使用している準備済みの C/C++ プログラマ―を対象としています。
メタトレーダーでニューラルネットワークを利用する
メタトレーダーでニューラルネットワークを利用する

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

本稿は、みなさんのコードに複数のニューラルネットワークを取り入れて無料の人工ニューラルネットワークライブラリ(FANN)を活用し、MQL4 コードでニューラルネットワークを簡単に利用する方法をお見せします。
チャネルアドバンスドモデルWolfe Waves
チャネルアドバンスドモデルWolfe Waves

チャネルアドバンスドモデルWolfe Waves

この記事は、Wolfe Wavesのマーキングパターンの法則を紹介します。波の正しい形成を理解する上で役に立つ正確なマーキングのルールや構築の詳細をご覧になれます。
最小の遅れでの効果的な平均化アルゴリズム:インディケータおよび Expert Advisor での使用
最小の遅れでの効果的な平均化アルゴリズム:インディケータおよび Expert Advisor での使用

最小の遅れでの効果的な平均化アルゴリズム:インディケータおよび Expert Advisor での使用

本稿は私が作成したハイクオリティーなカスタム平均化関数:JJMASeries()、JurXSeries()、JLiteSeries()、ParMASeries()、 LRMASeries()、T3Series()、MASeries()、について説明します。SmoothXSeries() 関数呼び出しによるインディケータ内でのこれら関数の最新の置換法を考察します。
ニューロネット用レシピ
ニューロネット用レシピ

ニューロネット用レシピ

本稿は、『多層』ケーキを焼く初心者を対象としています。
MQL4 でダブルスの作業をする
MQL4 でダブルスの作業をする

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

本稿では、一般的なプログラムエラーについて考察します。それは MQL4 プログラムでdouble の数字を処理するときに発生するものです。
MetaTrader 4 クライアントターミナルのプログラムフォルダ
MetaTrader 4 クライアントターミナルのプログラムフォルダ

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

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

Sleep か否か?

EA のアクションの間にポーズを実装する Sleep() 関数の代替使用を提案します検討する方法によりマシンタイム賢い使い方ができます。
怠惰は進歩への誘因である半自動マーキングテンプレート
怠惰は進歩への誘因である半自動マーキングテンプレート

怠惰は進歩への誘因である半自動マーキングテンプレート

チャート作業例があまたある中で、マニュアルでテンプレートをマーキングする方法があります。トレンドライン、チャンネル、サポート/レジスタンスレベルなど、はチャートに示されます。確かにこの類の作業をする特殊なプログラムがいくつかあります。どの方法を使うかは各自が決めることです。本稿では、検討材料として、マニュアルのマーキング方法に続いて繰り返されるルーチンアクションのエレメントをいくつか自動化する方法を提供します。
自動制御システム(ACS)のコンテキストでのテクニカル分析の考え方、また『逆説』
自動制御システム(ACS)のコンテキストでのテクニカル分析の考え方、また『逆説』

自動制御システム(ACS)のコンテキストでのテクニカル分析の考え方、また『逆説』

本稿は、テクニカル分析の代替の考え方を実証します。それは最新の自動制御理論やテクニカル分析自体の原理に基づくものです。本稿は、実用的なアプリケーションをいくつか使って理論を表現する導入記事です。
コメントによってコード内エラーを判断する方法
コメントによってコード内エラーを判断する方法

コメントによってコード内エラーを判断する方法

本稿では、コメントを基に MQL4 コード内のエラーを検索する方法について説明します。この方法は、ほどほどに大きなコード内のエラーによって生じるコンパイル中に問題が発生する場合に便利であることが判ります。
怠慢は、進歩またはグラフィックスとインタラクティブに作業する方法への刺激
怠慢は、進歩またはグラフィックスとインタラクティブに作業する方法への刺激

怠慢は、進歩またはグラフィックスとインタラクティブに作業する方法への刺激

トレンドライン、フィボナッチレベル、チャートにマニュアルで入れられたアイコンとインタラクティブに動作するインターフェース用インディケータ。それにより、フィボナッチレベルのゾーンを色付きで描画し、価格がトレンドラインを交差する瞬間を表示し、『価格レベル』オブジェクトを管理することができます。
高速で再描画しない ZigZag の書き方
高速で再描画しない ZigZag の書き方

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

ZigZag タイプのインディケータを描くかなりユニバーサルな方法を提案します。この方法にはすでに説明されているZigZag のかなりの部分を含み、この方法で比較的簡単にZigZag を作成することができます。
MQL4 によるHTML チュートリアル
MQL4 によるHTML チュートリアル

MQL4 によるHTML チュートリアル

HTML は今や広く普及している文書タイプです。MetaTrader 4 クライアントターミナルによって、ステートメント、検証レポート、最適化レポートを .htm ファイルとして保存することが可能です。MQL4 プログラムではそのようなファイルから情報を得ることが必要な場合があります。本稿では、HTML からタグ構成や内容を取得する方法のバリエーションの一つを説明します。