MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
ニューラルネットワークが簡単に(第2回): ネットワークのトレーニングとテスト

ニューラルネットワークが簡単に(第2回): ネットワークのトレーニングとテスト

第2回目の今回は、引き続きニューラルネットワークの勉強をし、作成したCNetクラスをEAで使用した例を考えていきます。 学習時間、予測精度ともに同様の結果を示す2つのニューラルネットワークモデルを用いてタスクを行います。
取引のための組合せ論と確率論(第IV部): ベルヌーイの定理
取引のための組合せ論と確率論(第IV部): ベルヌーイの定理

取引のための組合せ論と確率論(第IV部): ベルヌーイの定理

本稿では、よく知られているベルヌーイスキームをハイライトし、それを使用して取引関連のデータ配列を記述する方法を示すことにしました。これらはすべて、自己適応型の取引システムを作成するために使用されます。また、より一般的なアルゴリズムを探して、その応用を見つけます。ベルヌーイの定理はその特殊なケースです。
Simulink:Expert Advisors開発者へのガイド
Simulink:Expert Advisors開発者へのガイド

Simulink:Expert Advisors開発者へのガイド

私はプロのプログラマではありません。そのため、トレーディングシステムの作業をする際、「シンプルから複雑へ」という原則は私にとって重要なものです。では私にとってシンプルとは正確にどういうことを言うのでしょうか?まず、システム作成プロセスの視覚化、そしてその動作のロジックです。また、手書きコードを最小限に抑えることです。本稿では、Matlabパッケージを基にトレーディングシステムを作成し検証することを目指しています。そしてIMetaTrader 5用のExpert Advisorを書いていきます。検証段階ではMetaTrader 5からの履歴データを使用します。
さまざまな移動平均システムを設計する方法を学ぶ
さまざまな移動平均システムを設計する方法を学ぶ

さまざまな移動平均システムを設計する方法を学ぶ

この記事の主題である移動平均自体を使用する場合でも、任意のストラテジーに基づいて生成されたシグナルをフィルタリングするために使用できるストラテジーはたくさんあります。この記事の目的は、移動平均ストラテジーのいくつかと、アルゴリズム取引システムを設計する方法を共有することです。
人気のトレーディングシステムを基にした Expert Advisor と売買ロボット最適化の錬金術
人気のトレーディングシステムを基にした Expert Advisor と売買ロボット最適化の錬金術

人気のトレーディングシステムを基にした Expert Advisor と売買ロボット最適化の錬金術

本稿はもっともシンプルなトレーディングシステムのアルゴリズム実装について詳しく説明します。対称は初心者トレーダーや初心者の EA プログラマ―です。
自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング
自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング

自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング

この記事では、Kohonenマップで動作するのテクニックについて説明します。Kohonenマップで困難に直面し、MQL4とMQL5でのプログラミングの基本的なレベルがわかる研究者や経験豊富なプログラマーを対象としています。自己組織化特徴マップ(Kohonenマップ) - サブジェクトリビジッティング
ジグザグおよび ATR例によるクラスとしてのインディケータ実装
ジグザグおよび ATR例によるクラスとしてのインディケータ実装

ジグザグおよび ATR例によるクラスとしてのインディケータ実装

インディケータを計算する最適な方法についての議論は尽きるところがありません。どこでインディケータ値を計算すべきでしょうか?インディケータ自体でしょうか、またはそのインディケータを使う Expert Advisor に全ロジックを埋め込むのがよいのでしょうか?本稿では、カスタムインディケータ iCustom のソースコードをExpert Advisor のコードに直接、または計算最適化スクリプトに移動し、そして prev_calculated 値をモデル化するバリアントの一つについて述べていきます。
ターミナル MetaTrader 4 のテスター:これは知っているべきです
ターミナル MetaTrader 4 のテスター:これは知っているべきです

ターミナル MetaTrader 4 のテスター:これは知っているべきです

ターミナル MetaTrader 4 の精巧なインターフェースは最先端のものですが、それだけではなくターミナルには周到な戦略テスターが備わっています。 トレーディングターミナルとしての MetaTrader 4 の価値が明確である一方、テスターの戦略検証のクオリティは実践でのみ評価することができます。本稿では MetaTrader 4 で検証を行うことのメリットと利便性について説明します。
自動売買システム作成にたいする新手法としてのオートマタ準拠プログラミング
自動売買システム作成にたいする新手法としてのオートマタ準拠プログラミング

自動売買システム作成にたいする新手法としてのオートマタ準拠プログラミング

本稿は MQL4 および MQL5で EA、インディケータ、スクリプトを作成するまったく新しい方向にわれわれを導きます。将来、このプログラミングパラダイムが EAを実装するすべてのトレーダーにとってしだいに基本となり標準となることでしょう。オートマタ準拠プログラミングパラダイムを使用することで MQL5 および MetaTrader 5 の開発者は新しい言語MQL6、そして新しいプラットフォームMetaTrader 6を作成に近づくのです。
マーケット価格予測に対する汎用回帰モデル
マーケット価格予測に対する汎用回帰モデル

マーケット価格予測に対する汎用回帰モデル

マーケット価格は需要と供給の間の安定したバランスから形作られ、それは逆に経済、政治、心理要因の多様性に依存します。こういった要因の影響原因同様、性質の異なることですべての構成要素を直接考慮するのは困難です。本稿は 念入りに作られた回帰モデルを基にしたマーケット価格予測について述べます。
MQL5でのZIPアーカイブの扱い
MQL5でのZIPアーカイブの扱い

MQL5でのZIPアーカイブの扱い

MQL5は常に進化しています。この度新しい機能が追加されました。この革新により、DLLなしでZIPアーカイブを標準MQL5ツールで実行できるようになりました。この記事ではCZipクラスの使い方と、ZIPアーカイブの読み込み・生成・修正を例として扱います。
MQL5 ウィザードで独自の Expert Advisor を作成する
MQL5 ウィザードで独自の Expert Advisor を作成する

MQL5 ウィザードで独自の Expert Advisor を作成する

売買ロボットを作成するのにプログラム言語の知識はもはや必須条件ではなくなっています。以前であれば、独自のトレーディングストラテジーを実装するのにプログラム技能がないことは避けがたい障害でしたが、 MQL5 「ウィザード」の登場により状況は根本的に変化しました。トレーダー初心者はプログラム経験がないことを心配しなくてよくなります。 Expert Advisor コードを作成することができる新しい「ウィザード」を使えば、プログラム経験は必要ないのです。
ユニバーサルEA:戦略トレードモード(その1)
ユニバーサルEA:戦略トレードモード(その1)

ユニバーサルEA:戦略トレードモード(その1)

EAの開発者は、プログラミングのスキルに関係なく、信頼性の高い取引プロセスを整理するため、同じタスクとアルゴリズムの問題に直面しています。この記事では、これらのタスクの解決に着手し、トレードアイデアを記述するための便利なCStrategyエンジンの可能性を説明します。
領域法
領域法

領域法

取引システム『領域法』は、RSIオシレーターの通常ではない解釈において使われます。この記事では、領域法を可視化するインディケータと、このシステムに基づいてトレードを行うエキスパートアドバイザを提供します。記事では、様々な通貨ペアや時間軸、面積値でのエキスパートアドバイザの詳細なテスト結果が記述されています。
テスターでのブレークポイント:それは可能です!
テスターでのブレークポイント:それは可能です!

テスターでのブレークポイント:それは可能です!

この記事では、デバッグ情報が表示され、テスターで通過された際のブレークポイントエミュレーションを扱います。
ユニバーサルな Expert Advisor のテンプレート
ユニバーサルな Expert Advisor のテンプレート

ユニバーサルな Expert Advisor のテンプレート

本稿は取引初心者が柔軟に調整可能なExpert Advisor を作成するお手伝いをします。
HedgeTerminalAPIを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う - パート2
HedgeTerminalAPIを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う - パート2

HedgeTerminalAPIを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う - パート2

本稿ではポジションヘッジへの新しいアプローチについて述べ、本件に関する MetaTrader 4 および MetaTrader 5 のユーザー間のディベートに一線を画します。これは『HedgeTerminalパネルを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う-パート1』の続編です。パート2ではカスタム Expert Advisors のHedgeTerminalAPIへの統合についてお話します。これは便利なポジション管理のためのツールを提供する快適なソフトウェア環境における双方向トレードを行うための特別な可視化ライブラリです。
preview
MQL言語を使用したゼロからのディープニューラルネットワークプログラミング

MQL言語を使用したゼロからのディープニューラルネットワークプログラミング

この記事は、MQL4/5言語を使用してディープニューラルネットワークを最初から作成する方法を読者に教えることを目的としています。
Google サービスによるメーリング キャンペーンの手配
Google サービスによるメーリング キャンペーンの手配

Google サービスによるメーリング キャンペーンの手配

トレーダーは、他のトレーダー、クライアントや友人とのビジネス関係を維持するために、メーリングキャンペーンを手配したい場合があるかもしれません。 その場合、スクリーンショット、ログ、またはレポートを送信する必要がある場合があります。 頻繁に発生するタスクではないかもしれませんが、このような機能があれば明らかに利点となります。 この記事では、複数の Google サービスを同時に使用し、C# で適切なアセンブリを開発し、MQL ツールと統合を取り上げています。
preview
MetaTrader 5のWebSocket — WindowsAPIの使用

MetaTrader 5のWebSocket — WindowsAPIの使用

この記事では、WinHttp.dllを使用してMetaTrader 5プログラム用のWebSocketクライアントを作成します。クライアントは最終的にクラスとして実装され、Binary.com WebSocketAPIに対してもテストされます。
ヘッジ EA の検証でストラテジーテスタの限界を打ち破る
ヘッジ EA の検証でストラテジーテスタの限界を打ち破る

ヘッジ EA の検証でストラテジーテスタの限界を打ち破る

ストラテジーテスタによってヘッジ Expert Advisors を検証するという考え
自作 DLL の排除
自作 DLL の排除

自作 DLL の排除

MQL5 言語機能がタスク遂行に十分でなければMQL5 プログラマーは別のツールを使用する必要があります。別のプログラム言語によって仲介DLL を作成する必要があります。MQL5 にはさまざまなデータタイプを表示し、それを API に転送する機能がありますが、残念ながら MQL5 は受け付けられたポインタからデータを抽出することに関する問題を解決することはできません。本稿ではすべての "i" にドットを打ち、複雑なデータタイプを交換し、それと連携するメカニズムを示していきます。
preview
手動チャートおよび取引ツールキット(第II部)チャートグラフィック描画ツール

手動チャートおよび取引ツールキット(第II部)チャートグラフィック描画ツール

これは連載の次の記事で、キーボードショートカットを使用してチャートグラフィックを手動で適用するための便利なライブラリを作成した方法を示します。使用されるツールには、直線とその組み合わせが含まれます。第2部では、第1部で説明した関数を使用して、描画ツールがどのように適用されるかを確認します。ライブラリは、チャート作成タスクを大幅に簡素化する任意のエキスパートアドバイザーまたはインディケーターに接続できます。このソリューションは外部DLLを使用せず、すべてのコマンドは組み込みのMQLツールを使用して実装されます。
preview
データサイエンスと機械学習(第01回):線形回帰

データサイエンスと機械学習(第01回):線形回帰

私たちトレーダーは、数字に基づいた判断をするよう、システムと自分自身を訓練する時期に来ています。目ではなく、直感で信じるのは、これが世界が向かっているところだということです。波の方向に垂直に移動しましょう。
戦略バランス曲線の品質評価としての R 乗
戦略バランス曲線の品質評価としての R 乗

戦略バランス曲線の品質評価としての R 乗

この記事では、カスタム最適化基準R乗の構築について扱います。 この基準は、戦略のバランス曲線の品質を推定し、安定した戦略を構築するために使うことができます。 今回は、このメトリックのプロパティと品質の推定に使用される、構造と統計的手法について説明します。
preview
自動で動くEAを作る(第03回):新しい関数

自動で動くEAを作る(第03回):新しい関数

今日は、自動モードでシンプルかつ安全に動作するエキスパートアドバイザー(EA)を作成する方法を紹介します。前回は、自動売買EAで使用するオーダーシステムの開発に着手しましたが、必要な関数のうち1つしか作っていません。
一个绘制支撑和阻力线的指标实例
一个绘制支撑和阻力线的指标实例

一个绘制支撑和阻力线的指标实例

本文提供了一个例子,它是关于如何实现根据指定条件绘制支撑和阻力线的指标的,另外,它也包含了一个可以使用的指标,您将看到,创建指标的过程有多么简单。您也将能学习如何通过修改指标代码来构建用于绘制任何所需线形的条件。
preview
ニューラルネットワークが簡単に(第8回): アテンションメカニズム

ニューラルネットワークが簡単に(第8回): アテンションメカニズム

以前の記事では、ニューラルネットワークを整理するための様々な選択肢を既に検証しました. また、画像処理アルゴリズムから借りた畳み込みネットワークについても検討しました. 今回の記事では、言語モデルの開発に弾みをつけた「アテンション・メカニズム」を考えることを提案します.
異なる国での異なるタイムゾーンに基づくトレーディング戦略例
異なる国での異なるタイムゾーンに基づくトレーディング戦略例

異なる国での異なるタイムゾーンに基づくトレーディング戦略例

インターネット検索をしていると、多くの戦略を見つけるのはたやすいことです。そこから多様な提案を得ることができます。インサイダーの方法を採り入れ、異なる大陸の異なるタイムゾーンに基づく戦略作成の手順を見ていきます。
統計の基礎
統計の基礎

統計の基礎

たとえファンダメンタル分析支持者であったとしても、すべてのトレーダーは、特定の統計的な計算を使用し作業を行います。この記事は、統計の基礎、基礎的な要素を紹介し、意思決定における統計の重要性を示します。
preview
多層パーセプトロンとバックプロパゲーションアルゴリズム(第II部): Pythonでの実装とMQL5との統合

多層パーセプトロンとバックプロパゲーションアルゴリズム(第II部): Pythonでの実装とMQL5との統合

MQLとの統合を開発するために利用できるPythonパッケージが存在し、データの探索、作成、機械学習モデルの使用などのさまざまな機会がもたらされます。MQL5に組み込まれているPython統合により、単純な線形回帰から深層学習モデルまで、さまざまなソリューションを作成できます。開発環境を設定して準備する方法と、いくつかの機械学習ライブラリを使用する方法を見てみましょう。
CURLを使用した HTML の解析
CURLを使用した HTML の解析

CURLを使用した HTML の解析

この記事では、サードパーティのコンポーネントを使用してライブラリを解析する簡単な HTML コードについて説明します。 特に、GET リクエストと POST リクエストでは取得できないデータにアクセスする方法について説明します。 ページが大きすぎないウェブサイトを選定し、該当サイトから興味深いデータを取得しましょう。
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第16部): 銘柄コレクションイベント
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第16部): 銘柄コレクションイベント

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第16部): 銘柄コレクションイベント

本稿では、すべてのライブラリオブジェクトの新しい基本クラスを作成し、イベント機能をすべての子孫に追加します。また、この新しい基本クラスに基づいて、銘柄コレクションイベントを追跡するためのクラスを開発します。新しい基本オブジェクトの機能を開発するために、口座および口座イベントクラスは変更されます。
preview
RSIディープスリームーブ取引手法

RSIディープスリームーブ取引手法

MetaTrader 5でRSIディープスリームーブ取引テクニックを紹介します。この記事は、株式、通貨、商品などの証券の強さと勢いを測定するために使用されるテクニカル分析指標であるRSIに基づくいくつかの取引テクニックを紹介する新しい一連の研究に基づいています。
怠惰は進歩への誘因である半自動マーキングテンプレート
怠惰は進歩への誘因である半自動マーキングテンプレート

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

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

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

この章では、MQLアプリケーションでのマルチウィンドウインタフェースの作成の可能性をもたらすライブラリの実装を拡張します。また、グラフィカルオブジェクト上でのマウスの左クリックの優先順位のシステムを開発します。これは、要素がユーザのアクションに応答しない場合に発生する問題を回避するために必要です。
アルゴリズムトレードにおける Kohonen ニューラルネットワークの活用 パート II. 最適化と予測
アルゴリズムトレードにおける Kohonen ニューラルネットワークの活用 パート II. 最適化と予測

アルゴリズムトレードにおける Kohonen ニューラルネットワークの活用 パート II. 最適化と予測

Kohonen ネットワークを扱うために設計されたユニバーサルツールに基づいて、最適なEAパラメータを分析して選択するシステムを構築し、時系列の予測を検討します。 第 I 部では、必要なアルゴリズムを追加して、一般に公開されているニューラルネットワーククラスを修正し、改善しました。 今回はこれを実践に応用しましょう。
preview
パターン検索への総当たり攻撃アプローチ(第IV部): 最小限の機能

パターン検索への総当たり攻撃アプローチ(第IV部): 最小限の機能

本稿では、前の記事で設定した目標に基づいて改良された総当たり攻撃バージョンについてお話します。エキスパートアドバイザーをこの方法で取得した設定で使用して、このトピックをできるだけ広くカバーするようにします。新しいプログラムバージョンも添付されています。
クロスプラットフォーム グリッドEAの開発(最終パート):収益性を高める方法と多様化
クロスプラットフォーム グリッドEAの開発(最終パート):収益性を高める方法と多様化

クロスプラットフォーム グリッドEAの開発(最終パート):収益性を高める方法と多様化

このシリーズのこれまでの記事では、多かれ少なかれ収益性の高いグリッドEAを作成するためのさまざまな方法を試しました。 今回は多様化を通じてEAの収益性を高めます。 究極の目標は、最大20% 以下のドローダウンで年間100%の利益を達成することです。