MQL5プログラミング記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
ゲータ―オシレーター(Gator Oscillator)による取引システムの設計方法を学ぶ

ゲータ―オシレーター(Gator Oscillator)による取引システムの設計方法を学ぶ

人気のあるテクニカル指標に基づいて取引システムを設計する方法を学ぶ本連載の新しい記事では、ゲータ―オシレーターテクニカル指標を取り上げ、簡単な戦略を通じて取引システムを作成する方法について学びます。
preview
初心者からプロまでMQL5をマスターする(第2回):基本的なデータ型と変数の使用

初心者からプロまでMQL5をマスターする(第2回):基本的なデータ型と変数の使用

初心者向け連載の続きです。この記事では、定数や変数を作成する方法、日付や色、その他の便利なデータを書き込む方法を見ていきます。曜日や線のスタイル(実線、点線など)を列挙する方法も学びます。変数と式はプログラミングの基本です。これらは99%のプログラムに間違いなく存在するので、理解することは非常に重要です。したがって、この記事はとてもプログラミング初心者の役に立つでしょう。必要なプログラミング知識レベル:前回の記事(冒頭のリンク参照)の範囲内で、ごく基本的なものです。
preview
MQL5の統合:Python

MQL5の統合:Python

Pythonは、特に金融、データサイエンス、人工知能、機械学習の分野で多くの特徴を持つ、よく知られた人気のプログラミング言語です。また、Pythonは取引にも有効な強力なツールです。MQL5では、この強力な言語を統合して使用することで、目的を効果的に達成することができます。本記事では、Pythonの基本的な情報を学んだ後、MQL5でPythonを統合して使用する方法を紹介します。
われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか
われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか

われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか

われわれはシグナルサービスを強化し、メカニズムを改良し、新しい関数を追加し、欠陥を修正し続けています。2012年の MetaTrader シグナルサービスと現在の MetaTrader シグナルサービスはまったく異なる2つのサービスのようなものです。現在、特定バージョンの MetaTrader クライアントターミナルをサポートするサーバーのネットワークで構成される仮想ホスティングクラウドサービスを導入中です。
preview
MetaTraderとGoogleスプレッドシートを使用して取引ジャーナルを作成する方法

MetaTraderとGoogleスプレッドシートを使用して取引ジャーナルを作成する方法

MetaTraderとGoogleスプレッドシートを使用して取引ジャーナルを作成しましょう。HTTP POST経由で取引データを同期し、HTTPリクエストを使用して取得する方法を学習します。最終的には、取引を効果的かつ効率的に追跡するのに役立つ取引ジャーナルが手に入ります。
preview
ボリンジャーバンドを活用したピラニア戦略に基づくMQL5エキスパートアドバイザーの作成

ボリンジャーバンドを活用したピラニア戦略に基づくMQL5エキスパートアドバイザーの作成

この記事では、ボリンジャーバンドを利用したピラニア戦略に基づいてMQL5でエキスパートアドバイザー(EA)を作成し、取引の有効性を高めます。この戦略の重要な原則、コーディングの実装、テストと最適化の方法について説明します。この知識によって、取引シナリオにEAを効果的に導入することが可能になります。
preview
ニューラルネットワークが簡単に(第21部):変分オートエンコーダ(Variational autoencoder、VAE)

ニューラルネットワークが簡単に(第21部):変分オートエンコーダ(Variational autoencoder、VAE)

前回の記事で、オートエンコーダアルゴリズムについて学びました。他のアルゴリズム同様、このアルゴリズムには長所と短所があります。元の実装では、オートエンコーダは、訓練標本からオブジェクトを可能な限り分離するために使用されます。今回はその短所への対処法についてお話します。
preview
非線形指標

非線形指標

今回は、非線形指標を構築する方法と取引での使用について、いくつか考えてみたいと思います。MetaTraderの取引プラットフォームには、非線形なアプローチを使用する指標がかなりあります。
MQL5 Market 一周年
MQL5 Market 一周年

MQL5 Market 一周年

MQL5 Marketがサービスを開始して、1年が経過しました。新しいサービスをMetaTrader5プラットフォームにおけるテクニカルインジケーターやトレーディングシステムの巨大ストアに変える困難な一年でした。
preview
ニューラルネットワークが簡単に(第18部):アソシエーションルール

ニューラルネットワークが簡単に(第18部):アソシエーションルール

この連載の続きとして、教師なし学習の手法の中で、もう1つのタイプの問題であるアソシエーションルールのマイニングについて考えてみましょう。この問題タイプは、小売業、特にスーパーマーケットで、市場の分類を分析するために最初に使用されました。今回は、このようなアルゴリズムの取引への応用についてお話します。
preview
MQL5入門(第11回):MQL5の組み込みインジケーターの操作に関する初心者向けガイド(II)

MQL5入門(第11回):MQL5の組み込みインジケーターの操作に関する初心者向けガイド(II)

RSI、MA、ストキャスティクスなどの複数のインジケーターを使用してMQL5でエキスパートアドバイザー(EA)を開発し、隠れた強気および弱気のダイバージェンスを検出する方法を学びます。教育目的で、詳細な例および完全にコメントされたソースコードを用いて、効果的なリスク管理を実装し、取引を自動化する方法をご紹介します。
DoEasyライブラリの時系列(第45部): 複数期間指標バッファ
DoEasyライブラリの時系列(第45部): 複数期間指標バッファ

DoEasyライブラリの時系列(第45部): 複数期間指標バッファ

本稿では、複数期間モードと複数銘柄モードで使用する指標バッファオブジェクトおよびコレクションクラスの改善を始めます。現在の銘柄チャートの任意の時間枠からデータを受信して表示するためのバッファオブジェクトの使用を検討するつもりです。
DoEasyライブラリの時系列(第47部): 複数銘柄・複数期間標準指標
DoEasyライブラリの時系列(第47部): 複数銘柄・複数期間標準指標

DoEasyライブラリの時系列(第47部): 複数銘柄・複数期間標準指標

この記事では、標準指標を操作する方法の開発を開始します。これにより、最終的には、ライブラリクラスに基づいて複数銘柄の複数期間の標準指標を作成できるようになります。さらに、「スキップされたバー」イベントを時系列クラスに追加し、ライブラリ準備関数をCEngineクラスに移動することで、メインプログラムコードからの過度の負荷を排除します。
DoEasyライブラリのグラフィックス(第86部): グラフィカルオブジェクトコレクション - プロパティ変更の管理
DoEasyライブラリのグラフィックス(第86部): グラフィカルオブジェクトコレクション - プロパティ変更の管理

DoEasyライブラリのグラフィックス(第86部): グラフィカルオブジェクトコレクション - プロパティ変更の管理

本稿では、ライブラリ内のグラフィカルオブジェクトのプロパティ値の変更の追跡とともに、削除と名前変更を検討します。
preview
自動で動くEAを作る(第15回):自動化(VII)

自動で動くEAを作る(第15回):自動化(VII)

自動化に関するこの連載を完結させるために、前回に引き続きトピックについて説明しましょう。EAを時計仕掛けのように動かすために、すべてがどのように組み合わされるかを見ていきます。
トレーダミネーター 3:売買ロボットの台頭
トレーダミネーター 3:売買ロボットの台頭

トレーダミネーター 3:売買ロボットの台頭

記事 "Dr. Tradelove..." で Expert Advisorを作成しました。それは選択済みのトレーディングシステムのパラメータを自立的に最適化するものです。それ以上に EAにある一つのトレーディングシステムのパラメータだけを最適化するのではなく、複数あるトレーディングシステムから最良のものを選ぶExpert Advisorを作成しようと決めました。それがどうなったか見ていきます。
DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス
DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス

DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス

本稿からチャートオブジェクトコレクションクラスの開発を開始します。このクラスでは、サブウィンドウと指標とともにチャートオブジェクトのコレクションリストを保存し、選択したチャートとそのサブウィンドウ、または複数のチャートのリストを一度に操作する機能を提供します。
preview
データサイエンスと機械学習(第11回):単純ベイズ、取引における確率論

データサイエンスと機械学習(第11回):単純ベイズ、取引における確率論

確率を利用した取引は綱渡りのようなもので、正確さとバランス、そしてリスクに対する鋭い理解が必要です。取引の世界では、確率がすべてです。確率は、成功と失敗、利益と損失の違いになります。確率の力を活用することで、トレーダーは十分な情報に基づいた意思決定をおこない、リスクを効果的に管理し、経済的目標を達成することができます。つまり、経験豊富な投資家であれ、初心者のトレーダーであれ、確率を理解することは、取引の可能性を引き出す鍵になるのです。この記事では、確率を利用したエキサイティングな取引の世界を探求し、取引ゲームを次のレベルに引き上げる方法を紹介します。
preview
初心者からプロまでMQL5をマスターする(第3回):複雑なデータ型とインクルードファイル

初心者からプロまでMQL5をマスターする(第3回):複雑なデータ型とインクルードファイル

これはMQL5プログラミングの主な側面を説明する連載の第3回目です。この記事では、前回の記事で触れなかった複雑なデータ型について説明します。具体的には、構造体、共用体、クラス、および「関数」データ型を扱います。また、#includeプリプロセッサディレクティブを使ってプログラムにモジュール性を加える方法についても解説します。
Connecting NeuroSolutions Neuronets
Connecting NeuroSolutions Neuronets

Connecting NeuroSolutions Neuronets

ニューロネットの作成に加え、NeuroSolutions ソフトウェアスウィートによりそれらを DLLとしてエクスポートすることが可能となります。本稿では、ニューロネット作成とDLL生成とそれを MetaTrader 5でのトレーディングのためExpert Advisor に連携する手順について述べています。
preview
母集団最適化アルゴリズム:蟻コロニー最適化(ACO)

母集団最適化アルゴリズム:蟻コロニー最適化(ACO)

今回は、蟻コロニー最適化アルゴリズムについて解析します。このアルゴリズムは非常に興味深く、複雑です。この記事では、新しいタイプのACOの作成を試みます。
preview
ニューラルネットワークが簡単に(第37回):スパースアテンション(Sparse Attention)

ニューラルネットワークが簡単に(第37回):スパースアテンション(Sparse Attention)

前回は、アテンションメカニズムをアーキテクチャーに用いたリレーショナルモデルについて説明しました。これらのモデルの特徴の1つは、コンピューティングリソースを集中的に利用することです。今回は、セルフアテンションブロック内部の演算回数を減らす仕組みの1つについて考えてみたいと思います。これにより、モデルの一般的なパフォーマンスが向上します。
MQL5 クックブック:オーバーフィットの影響低減とクオート不足への対処
MQL5 クックブック:オーバーフィットの影響低減とクオート不足への対処

MQL5 クックブック:オーバーフィットの影響低減とクオート不足への対処

どのようなトレーディング戦略を使っていようと、将来の収益を確保するためどのパラメータを選択すべきかという疑問は常にあるものです。本稿は同時に複数のシンボルパラメータを最適化する機能を備えたExpert Advisor 例を提供します。この方法はパラメータのオーバーフィットによる影響を軽減し、1個のシンボルからのデータが調査に十分でない場合に対処するものです。
preview
単一チャート上の複数インジケータ(第02部): 実験1

単一チャート上の複数インジケータ(第02部): 実験1

前回の「単一チャート上の複数インジケータ」稿では、単一のチャートで複数のインジケータを使用する方法の概念と基本を説明しました。この記事では、ソースコードを提供して詳しく説明します。
preview
独自のLLMをEAに統合する(第1部):ハードウェアと環境の導入

独自のLLMをEAに統合する(第1部):ハードウェアと環境の導入

今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じて微調整し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
2013 年第三四半期 MetaTrader AppStore 実績
2013 年第三四半期 MetaTrader AppStore 実績

2013 年第三四半期 MetaTrader AppStore 実績

また四半期が経過したところで、 MetaTrader AppStore の実績を集計することにしました。MetaTrader AppStore は MetaTrader の売買ロボットおよびテクニカルインディケータの最大ストアです。報告対象四半期の終わりまでに「マーケット」には 500 人以上の開発者が 1,200 以上のプロダクツを出しました。
preview
MQL5でパラボリックSARと単純移動平均(SMA)を使用した高速取引戦略アルゴリズムを実装する

MQL5でパラボリックSARと単純移動平均(SMA)を使用した高速取引戦略アルゴリズムを実装する

この記事では、パラボリックSARと単純移動平均(SMA)インジケーターを活用し、応答性の高い取引戦略を構築する高速取引型エキスパートアドバイザー(EA)をMQL5で開発します。インジケーターの使用方法、シグナルの生成、テストおよび最適化プロセスなど、戦略の実装について詳しく解説します。
グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)
グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)

グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)

今日までは、ライブラリの最も高度なテーブルはCTableでした。このテーブルは、OBJ_EDIT型のエディットボックスから組み立てられており、さらなる開発は難しいです。したがって、機能の最大化においては、ライブラリ開発の現段階を考慮しても、CCanvasTable型のレンダーテーブルを開発する方が賢明です。その現バージョンはまったく使えない状態ですが、この記事から始めて状況を改善していきましょう。
MQL5の電子テーブル
MQL5の電子テーブル

MQL5の電子テーブル

本稿では、第一ディメンションに異なるタイプのデータを含む動的二次元配列クラスについて述べていきます。テーブル形式でデータを格納すると、整理の幅広い問題を解決し、異なるタイプの広範囲におよぶ情報を格納および処理するのに好都合です。テーブルに連携する機能性を実装するクラスのソースコードは本稿に添付があります。
preview
チャート上のインタラクティブなコントロールを備えたインジケーター

チャート上のインタラクティブなコントロールを備えたインジケーター

この記事は、インジケーターインターフェイスに関する新しい視点を提供します。利便性を重視していきます。何年にもわたって数十の異なる取引戦略を試し、数百の異なるインジケーターをテストしてきた結果、この記事で共有したいいくつかの結論に達しました。
preview
ニューラルネットワークが簡単に(第26部):強化学習

ニューラルネットワークが簡単に(第26部):強化学習

機械学習の手法の研究を続けます。今回からは、もう1つの大きなテーマである「強化学習」を始めます。この方法では、モデルは問題を解決するためのある種の戦略を設定することができます。この強化学習の特性は、取引戦略を構築する上で新たな地平を切り開くものと期待されます。
Expert Advisor動作中のバランス曲線勾配調整
Expert Advisor動作中のバランス曲線勾配調整

Expert Advisor動作中のバランス曲線勾配調整

トレードシステムのルールを見つけ、それをExpert Advisorにプログラムするのが仕事の半分です。Expert Advisorはトレーディング結果を集積するので、いくらかの処理を修正する必要があります。本項では、バランス曲線の勾配測定のフィードバックを作成することで、Expert Advisorのパフォーマンスを向上させる方法の一つについて述べます。
preview
MQL5でボリンジャーバンド取引戦略を実装する:ステップごとのガイド

MQL5でボリンジャーバンド取引戦略を実装する:ステップごとのガイド

ボリンジャーバンド売買戦略に基づくMQL5での自動売買アルゴリズム実装のためのステップごとのガイドです。トレーダーに役立つEAの作成に基づく詳細なチュートリアルです。
preview
アリゲーターによる取引システムの設計方法を学ぶ

アリゲーターによる取引システムの設計方法を学ぶ

最も人気のあるテクニカル指標に基づいて取引システムを設計する方法についての連載は今回で完結します。アリゲーター指標を基にした取引システムの作り方を学びます。
DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス
DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス

DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス

本稿では、チャートオブジェクトクラスの開発を続け、利用可能な指標のリストを含むチャートウィンドウオブジェクトのリストに追加します。
preview
MQL5でゾーン回復マーチンゲール戦略を開発する

MQL5でゾーン回復マーチンゲール戦略を開発する

この記事では、ゾーン回復取引アルゴリズムに基づくエキスパートアドバイザー(EA)の作成に向けて実施すべきステップについて、詳細な観点から論じています。これは、アルゴリズムトレーダーの時間を節約するシステムの自動化に役立ちます。
preview
ニューラルネットワークの実験(第6回):価格予測のための自給自足ツールとしてのパーセプトロン

ニューラルネットワークの実験(第6回):価格予測のための自給自足ツールとしてのパーセプトロン

この記事では、パーセプトロンを自給自足の価格予測ツールとして使用する例として、一般的な概念と最もシンプルな既製のエキスパートアドバイザー(EA)を紹介し、その最適化の結果について説明します。
トレーダーは開発者によるサービスを必要とするのでしょうか?
トレーダーは開発者によるサービスを必要とするのでしょうか?

トレーダーは開発者によるサービスを必要とするのでしょうか?

アルゴリズムによるトレードが人気になり求められ、珍しいアルゴリズムや変わった作業への需要につながりました。ある程度、そのような複雑なアプリケーションは、Code BaseやMarketにて取得できます。トレーダーは、これらのアプリケーションに数クリックでアクセスできますが、これらは完全に彼らの要求を満たすことができないこともあります。その場合、トレーダーは、MQL5 Freelanceセクションにて望ましいアプリケーションを作成できる開発者を探し、注文を行います。
マーケット価格予測に対する汎用回帰モデル(第2部): 自然、技術、社会の過渡関数
マーケット価格予測に対する汎用回帰モデル(第2部): 自然、技術、社会の過渡関数

マーケット価格予測に対する汎用回帰モデル(第2部): 自然、技術、社会の過渡関数

本稿は前稿からの論理的続編で、最初の記事で出された結論を確認する事実にハイライトを当てています。これらの事実は、その出版後10年以内に明らかになったもので、マーケット価格変化のパターンを説明する3つの検出された動的過渡関数を中心としています。
preview
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第5回): ケルトナーチャネルのボリンジャーバンド—指標シグナル

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

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