MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第5回): ケルトナーチャネルのボリンジャーバンド—指標シグナル

MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第5回): ケルトナーチャネルのボリンジャーバンド—指標シグナル

この記事の多通貨エキスパートアドバイザー(EA)は、1つの銘柄チャートからのみ複数の銘柄ペアの取引(注文を出す、注文を決済する、トレーリングストップロスとトレーリングプロフィットなどで注文を管理するなど)ができるEAまたは自動売買ロボットです。この記事では、2つの指標、この場合はケルトナーチャネルのボリンジャーバンド®からのシグナルを使用します。
preview
ケルトナーチャネル取引システムの構築とテスト

ケルトナーチャネル取引システムの構築とテスト

この記事では、金融市場において非常に重要な概念であるボラティリティを利用した取引システムを紹介します。ケルトナーチャネル指標を理解し、それをどのようにコードし、どのように簡単な取引戦略に基づいて取引システムを作成し、様々な資産でテストすることができるかを理解した上で、ケルトナーチャネル指標に基づく取引システムを提供します。
preview
MQL5でONNXモデルをアンサンブルする方法の例

MQL5でONNXモデルをアンサンブルする方法の例

ONNX (Open Neural Network eXchange)は、ニューラルネットワークを表現するために構築されたオープンフォーマットです。この記事では、1つのエキスパートアドバイザー(EA)で2つのONNXモデルを同時に使用する方法を示します。
preview
リプレイシステムの開発—市場シミュレーション(第5回):プレビューの追加

リプレイシステムの開発—市場シミュレーション(第5回):プレビューの追加

現実的で利用しやすい方法で市場リプレイシステムを実装する方法を開発することができたので、プロジェクトを続けて、リプレイの動作を改善するためのデータを追加してみましょう。
preview
リプレイシステムの開発 - 市場シミュレーション(第11回):シミュレーターの誕生(I)

リプレイシステムの開発 - 市場シミュレーション(第11回):シミュレーターの誕生(I)

バーを形成するデータを使うためには、リプレイをやめてシミュレーターの開発に着手しなければなりません。難易度が最も低い1分バーを使用します。
preview
ニューラルネットワークが簡単に(第35回):ICM(Intrinsic Curiosity Module、内発的好奇心モジュール)

ニューラルネットワークが簡単に(第35回):ICM(Intrinsic Curiosity Module、内発的好奇心モジュール)

強化学習アルゴリズムの研究を続けます。これまで検討してきたすべてのアルゴリズムでは、あるシステム状態から別の状態への遷移ごとに、エージェントがそれぞれの行動を評価できるようにするための報酬方策を作成する必要がありました。しかし、この方法はかなり人工的なものです。実際には、行動と報酬の間には、ある程度の時間差があります。今回は、行動から報酬までの様々な時間の遅れを扱うことができるモデル訓練アルゴリズムに触れてみましょう。
preview
リプレイシステムの開発—市場シミュレーション(第2回):最初の実験(II)

リプレイシステムの開発—市場シミュレーション(第2回):最初の実験(II)

今回は、1分という目標を達成するために、別の方法を試してみましょう。ただし、このタスクは思っているほど単純ではありません。
preview
ONNXをマスターする:MQL5トレーダーにとってのゲームチェンジャー

ONNXをマスターする:MQL5トレーダーにとってのゲームチェンジャー

機械学習モデルを交換するための強力なオープン標準形式であるONNXの世界に飛び込んでみましょう。ONNXを活用することでMQL5のアルゴリズム取引にどのような変革がもたらされ、トレーダーが最先端のAIモデルをシームレスに統合し、戦略を新たな高みに引き上げることができるようになるかがわかります。クロスプラットフォーム互換性の秘密を明らかにし、MQL5取引の取り組みでONNXの可能性を最大限に引き出す方法を学びましょう。ONNXをマスターするためのこの包括的なガイドで取引ゲームを向上させましょう。
DoEasyライブラリのグラフィックス(第80部): 「幾何学的アニメーションフレーム」オブジェクトクラス
DoEasyライブラリのグラフィックス(第80部): 「幾何学的アニメーションフレーム」オブジェクトクラス

DoEasyライブラリのグラフィックス(第80部): 「幾何学的アニメーションフレーム」オブジェクトクラス

本稿では、前の記事のクラスのコードを最適化し、指定された数の頂点を持つ正多角形を描画するための幾何学的アニメーションフレームオブジェクトクラスを作成します。
preview
DoEasy - コントロール(第6部):パネルコントロール、内部コンテンツに合わせたコンテナサイズの自動変更

DoEasy - コントロール(第6部):パネルコントロール、内部コンテンツに合わせたコンテナサイズの自動変更

本稿では、Panel WinFormsオブジェクトの作業を続け、パネル内にあるDockオブジェクトの一般的なサイズに合わせた自動サイズ変更を実装します。さらに、銘柄ライブラリオブジェクトに新しいプロパティを追加します。
preview
デマーカーによる取引システムの設計方法を学ぶ

デマーカーによる取引システムの設計方法を学ぶ

最も人気のあるテクニカル指標によって取引システムを設計する方法についての連載の新しい記事へようこそ。今回は、デマーカー(DeMarker)指標による取引システムの作り方を紹介します。
preview
DoEasy-コントロール(第18部):TabControlでタブをスクロールする機能

DoEasy-コントロール(第18部):TabControlでタブをスクロールする機能

この記事では、ヘッダーバーがコントロールのサイズに収まらない場合に備えて、TabControl WinFormsオブジェクトにヘッダースクロールコントロールボタンを配置します。また、トリミングされたタブヘッダーをクリックしたときのヘッダーバーのシフトを実装します。
preview
ニューラルネットワークが簡単に(第56回):核型ノルムを研究の推進力に

ニューラルネットワークが簡単に(第56回):核型ノルムを研究の推進力に

強化学習における環境の研究は喫緊の課題です。いくつかのアプローチについてすでに見てきました。この記事では、核型ノルムの最大化に基づくもう一つの方法について見てみましょう。これにより、エージェントは新規性と多様性の高い環境状態を特定することができます。
preview
ニューラルネットワークの実験(第7回):指標の受け渡し

ニューラルネットワークの実験(第7回):指標の受け渡し

指標をパーセプトロンに渡す例。この記事では、一般的な概念について説明し、最も単純な既製のエキスパートアドバイザー(EA)と、それに続く最適化とフォワードテストの結果を紹介します。
preview
ニューラルネットワークが簡単に(第52回):楽観論と分布補正の研究

ニューラルネットワークが簡単に(第52回):楽観論と分布補正の研究

経験再現バッファに基づいてモデルが訓練されるにつれて、現在のActor方策は保存されている例からどんどん離れていき、モデル全体としての訓練効率が低下します。今回は、強化学習アルゴリズムにおけるサンプルの利用効率を向上させるアルゴリズムについて見ていきます。
preview
MQL5での価格バーの並べ替え

MQL5での価格バーの並べ替え

この記事では、価格バーを並べ替えるアルゴリズムを紹介し、EAの潜在的な購入者を欺くためにストラテジーのパフォーマンスが捏造された事例を認識するために並べ替えテストをどのように使用できるかを詳述します。
preview
MFIによる取引システムの設計方法を学ぶ

MFIによる取引システムの設計方法を学ぶ

最も人気のあるテクニカル指標に基づいて取引システムを設計する連載のこの新しい記事では、新しくマネーフローインデックス(Money Flow Index、MFI)テクニカル指標を考察します。その詳細を学び、MQL5によって簡単な取引システムを開発し、MetaTrader 5で実行します。
preview
アルーン(Aroon)取引システムの構築とテスト

アルーン(Aroon)取引システムの構築とテスト

この記事では、指標の基本を学んだ後、どのようにアルーンの取引システムを構築できるかを学び、アルーンの指標に基づいた取引システムを構築するために必要なステップを紹介します。この取引システムを構築した後、利益が出るのかさらに最適化が必要なのかをテストします。
preview
勢力指数による取引システムの設計方法を学ぶ

勢力指数による取引システムの設計方法を学ぶ

最も人気のあるテクニカル指標によって取引システムを設計する方法についての連載の新しい記事へようこそ。今回は、新しく、勢力指数(Force Index)テクニカル指標と、この指標を使った取引システムの作り方についてご紹介します。
母集団最適化アルゴリズム
母集団最適化アルゴリズム

母集団最適化アルゴリズム

最適化アルゴリズム(OA)の分類についての入門記事です。この記事では、OAを比較するためのテストスタンド(関数群)を作成し、広く知られたアルゴリズムの中から最も普遍的なものを特定することを試みています。
preview
MQL5の圏論(第8回):モノイド

MQL5の圏論(第8回):モノイド

MQL5における圏論の実装についての連載を続けます。今回は、ルールと単位元を含むことで、圏論を他のデータ分類法と一線を画す始域(集合)としてモノイドを紹介します。
preview
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第2回):指標シグナル:多時間枠放物線SAR指標

MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第2回):指標シグナル:多時間枠放物線SAR指標

この記事の多通貨エキスパートアドバイザー(EA)は、1つの銘柄チャートからのみ複数の銘柄ペアの取引(注文を出す、注文を決済する、トレーリングストップロスとトレーリングプロフィットなどで注文を管理するなど)ができるEAまたは自動売買ロボットです。今回は、PERIOD_M15からPERIOD_D1までの多時間枠でパラボリックSARまたはiSARという1つの指標のみを使用します。
DoEasyライブラリのグラフィックス(第77部): 影オブジェクトクラス
DoEasyライブラリのグラフィックス(第77部): 影オブジェクトクラス

DoEasyライブラリのグラフィックス(第77部): 影オブジェクトクラス

本稿では、グラフィック要素オブジェクトの子孫である 影オブジェクトのクラスを作成し、オブジェクトの背景をグラデーションで塗りつぶす機能を追加します。
preview
Murrayシステム再訪問

Murrayシステム再訪問

グラフィカルな価格分析システムは、当然ながらトレーダーの間で人気があります。今回は、有名なレベルを含む完全なMurray(マレー)システム、および現在の価格ポジションを評価し、取引を決定するための有用な他のテクニックについて説明します。
preview
オブジェクトを使用して複雑な指標を簡単に

オブジェクトを使用して複雑な指標を簡単に

この記事では、複数のプロットやバッファを扱ったり複数のソースからのデータを組み合わせたりするときに発生する問題を回避しながら、複雑な指標を作成する方法を紹介します。
preview
MLモデルとストラテジーテスターの統合(第3回):CSVファイルの管理(II)

MLモデルとストラテジーテスターの統合(第3回):CSVファイルの管理(II)

この記事では、MQL5でCSVファイルを効率的に管理するクラスを作成するための完全ガイドを提供します。データを開き、読み書きし、変換するメソッドの実装を見ていきます。また、情報を保存しアクセスするためにこれらを使用する方法についても検討します。さらに、このようなクラスを使用する際の制限や最も重要な点についても説明します。MQL5でCSVファイルを処理する方法を学びたい人にとって、この記事は貴重なリソースとなるでしょう。
preview
MQL5の圏論(第3回)

MQL5の圏論(第3回)

圏論は数学の一分野であり、多様な広がりを見せていますが、MQL5コミュニティでは今のところ比較的知られていません。この連載では、その概念のいくつかを紹介して考察することで、トレーダーの戦略開発におけるこの注目すべき分野の利用を促進することを目的としたオープンなライブラリを確立することを目指しています。
preview
ニューラルネットワークが簡単に(第44回):ダイナミクスを意識したスキルの習得

ニューラルネットワークが簡単に(第44回):ダイナミクスを意識したスキルの習得

前回は、様々なスキルを学習するアルゴリズムを提供するDIAYN法を紹介しました。習得したスキルはさまざまな仕事に活用できます。しかし、そのようなスキルは予測不可能なこともあり、使いこなすのは難しくなります。この記事では、予測可能なスキルを学習するアルゴリズムについて見ていきます。
preview
DoEasy - コントロール(第7部):テキストラベルコントロール

DoEasy - コントロール(第7部):テキストラベルコントロール

今回の記事では、WinFormsテキストラベルコントロールオブジェクトのクラスを作成します。このようなオブジェクトはコンテナをどこにでも配置できますが、独自の機能はMS Visual Studioテキストラベルの機能を繰り返します。表示されるテキストのフォントパラメータは設定できます。
preview
リプレイシステムの開発 - 市場シミュレーション(第18回):ティックそしてまたティック(II)

リプレイシステムの開発 - 市場シミュレーション(第18回):ティックそしてまたティック(II)

明らかに、現在の指標は1分足を作成するのに理想的な時間からは程遠いです。それが最初に修正することです。同期の問題を解決するのは難しくありません。難しそうに思えるかもしれませんが、実際はとても簡単です。前回の記事の目的は、チャート上の1分足を作成するために使用されたティックデータを気配値ウィンドウに転送する方法を説明することであったため、必要な修正はおこないませんでした。
preview
ニューラルネットワークの実験(第2回):スマートなニューラルネットワークの最適化

ニューラルネットワークの実験(第2回):スマートなニューラルネットワークの最適化

この記事では、実験と非標準的なアプローチを使用して、収益性の高い取引システムを開発し、ニューラルネットワークがトレーダーに役立つかどうかを確認します。ニューラルネットワークを取引に活用するための自給自足ツールとしてMetaTrader 5を使用します。
preview
MQL5でJanus factorを実装する

MQL5でJanus factorを実装する

ゲイリー・アンダーソンは、「Janus factor」と名付けた理論に基づく市場分析法を開発しました。この理論は、トレンドを明らかにし、市場リスクを評価するために使用できる一連の指標を記述するものです。今回は、これらのツールをMQL5で実装してみます。
preview
知っておくべきMQL5ウィザードのテクニック(第12回):ニュートン多項式

知っておくべきMQL5ウィザードのテクニック(第12回):ニュートン多項式

ニュートン多項式は、数点の集合から二次方程式を作るもので、時系列を見るには古風だが興味深いアプローチです。この記事では、このアプローチをトレーダーがどのような面で役立てることができるかを探るとともに、その限界についても触れてみたいと思います。
preview
CCI指標:アップグレードと新機能

CCI指標:アップグレードと新機能

この記事では、CCI指標をアップグレードする可能性について検討するとともに、この指標の修正を提示します。
preview
ニューラルネットワークが簡単に(第28部):方策勾配アルゴリズム

ニューラルネットワークが簡単に(第28部):方策勾配アルゴリズム

強化学習法の研究を続けます。前回は、Deep Q-Learning手法に触れました。この手法では、特定の状況下でとった行動に応じて、これから得られる報酬を予測するようにモデルを訓練します。そして、方策と期待される報酬に応じた行動がとられます。ただし、Q関数を近似的に求めることは必ずしも可能ではありません。その近似が望ましい結果を生み出さないこともあります。このような場合、効用関数ではなく、行動の直接的な方針(戦略)に対して、近似的な手法が適用されます。その1つが方策勾配です。
preview
Frames Analyzerツールによるタイムトレード間隔の魔法

Frames Analyzerツールによるタイムトレード間隔の魔法

Frames Analyzerとは何でしょうか。これは、パラメータ最適化の直後に作成されたMQDファイルまたはデータベースを読み取ることにより、ストラテジーテスター内外でパラメータ最適化中に最適化フレームを分析するためのエキスパートアドバイザー(EA)のプラグインモジュールです。これらの最適化の結果はFrames Analyzerツールを使用している他のユーザーと共有して、結果について話し合うことができます。
DoEasy - コントロール(第32部):水平スクロールバー、マウスホイールスクロール
DoEasy - コントロール(第32部):水平スクロールバー、マウスホイールスクロール

DoEasy - コントロール(第32部):水平スクロールバー、マウスホイールスクロール

この記事では、水平スクロールバーオブジェクト機能の開発を完成します。また、スクロールバーのスライダーを動かしたり、マウスホイールを回転させたりしてコンテナの内容をスクロールできるようにするほか、MQL5の新しい注文実行ポリシーや新しいランタイムエラーコードを考慮したライブラリへの追加もおこないます。
preview
ニューラルネットワークが簡単に(第20部):オートエンコーダ

ニューラルネットワークが簡単に(第20部):オートエンコーダ

教師なし学習アルゴリズムの研究を続けます。読者の中には、最近の記事とニューラルネットワークの話題の関連性について疑問を持つ人もいるかもしれません。この新しい記事では、ニューラルネットワークの研究に戻ります。
preview
ニューラルネットワークが簡単に(第19部):MQL5を使用したアソシエーションルール

ニューラルネットワークが簡単に(第19部):MQL5を使用したアソシエーションルール

アソシエーションルールの検討を続けます。前回の記事では、このタイプの問題の理論的側面について説明しました。この記事では、MQL5を使用したFPGrowthメソッドの実装を紹介します。また、実装したソリューションを実際のデータを使用してテストします。
preview
DoEasy-コントロール(第24部):ヒント補助WinFormsオブジェクト

DoEasy-コントロール(第24部):ヒント補助WinFormsオブジェクト

今回は、すべてのWinFormsライブラリオブジェクトの基本オブジェクトとメインオブジェクトを指定するロジックを見直し、新しいヒント基本オブジェクトとその派生クラスのいくつかを開発して、区切りの移動可能な方向を示すことにします。