MQL5言語での自動売買ロボットのプログラミング例に関する記事

icon

エキスパートアドバイザーはプログラミングの「頂点」であり、それぞれの自動取引の開発者の求めたゴールです。このセクションの記事を読んで、ご自分の自動売買ロボットを作成してください。記述された手順に従うことにより、どのように自動取引システムを作成し、デバッグし、テストするかを学びます。

記事はMQL5プログラミングを教えるだけでなく、どのようにトレーディングアイデアとテクニックを導入するかを示します。どのようにトレーリングストップをプログラムするか、どのように資金管理を適用するか、どのようにインディケータ値を取得するかなど、さらに多くのことを学べます。

新しい記事を追加
最新 | ベスト
グラフィカルインターフェイスXI:ライブラリコードのリファクタリング(ビルド14.1)
グラフィカルインターフェイスXI:ライブラリコードのリファクタリング(ビルド14.1)

グラフィカルインターフェイスXI:ライブラリコードのリファクタリング(ビルド14.1)

ライブラリが大きくなるにつれて、コードをサイズを減らすために最適化が再び必要がです。本稿で説明するライブラリのバージョンはさらにオブジェクト指向になっており、コードの学習もさらに容易になります。読者は、最新の変更の詳細な記述によって、独自のニーズに基づいて独自にライブラリを開発できるでしょう。
preview
単一チャート上の複数インジケータ(第05部):MetaTrader 5をRADシステムに変える(I)

単一チャート上の複数インジケータ(第05部):MetaTrader 5をRADシステムに変える(I)

プログラミングはできなくても創造性に富んだ素晴らしいアイデアを持っている人はたくさんいます。しかし、プログラミングの知識がないため、これらのアイデアを実行に移すことができないのです。MetaTrader5のプラットフォームそのものをIDEのように使って、Chart Tradeを作成する方法を一緒に見てみましょう。
preview
ニューラルネットワークが簡単に(第21部):変分オートエンコーダ(Variational autoencoder、VAE)

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

前回の記事で、オートエンコーダアルゴリズムについて学びました。他のアルゴリズム同様、このアルゴリズムには長所と短所があります。元の実装では、オートエンコーダは、訓練標本からオブジェクトを可能な限り分離するために使用されます。今回はその短所への対処法についてお話します。
preview
ニューラルネットワークが簡単に(第94回):入力シーケンスの最適化

ニューラルネットワークが簡単に(第94回):入力シーケンスの最適化

時系列を扱うときは、常にソースデータを履歴シーケンスで使用します。しかし、これが最善の選択肢なのでしょうか。入力データの順序を変更すると、訓練されたモデルの効率が向上するという意見があります。この記事では、入力シーケンスを最適化する方法の1つを紹介します。
preview
Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

この記事では、RSIと移動平均指標に基づいて自動売買をおこなうDeus EAの実装手順を概説します。
preview
ボリンジャーバンドを活用したピラニア戦略に基づくMQL5エキスパートアドバイザーの作成

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

この記事では、ボリンジャーバンドを利用したピラニア戦略に基づいてMQL5でエキスパートアドバイザー(EA)を作成し、取引の有効性を高めます。この戦略の重要な原則、コーディングの実装、テストと最適化の方法について説明します。この知識によって、取引シナリオにEAを効果的に導入することが可能になります。
preview
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第5回): ケルトナーチャネルのボリンジャーバンド—指標シグナル

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

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

ニューラルネットワークが簡単に(第43回):報酬関数なしでスキルを習得する

強化学習の問題は、報酬関数を定義する必要性にあります。それは複雑であったり、形式化するのが難しかったりします。この問題に対処するため、明確な報酬関数を持たずにスキルを学習する、活動ベースや環境ベースのアプローチが研究されています。
preview
多通貨エキスパートアドバイザーの開発(第3回):アーキテクチャの改訂

多通貨エキスパートアドバイザーの開発(第3回):アーキテクチャの改訂

複数の戦略が並行して動作する多通貨EAの開発はすでにある程度進んでいます。蓄積された経験を考慮し、先に進みすぎる前に、ソリューションのアーキテクチャを見直し、改善を試みましょう。
preview
MQL5入門(第5部):MQL5における配列関数の入門ガイド

MQL5入門(第5部):MQL5における配列関数の入門ガイド

全くの初心者のために作られた第5部では、MQL5配列の世界を探検してみましょう。この記事は、複雑なコーディングの概念を簡素化し、明快さと包括性に重点を置いています。質問が受け入れられ、知識が共有される、学習者のコミュニティに仲間入りしてください。
preview
ニューラルネットワークが簡単に(第22部):回帰モデルの教師なし学習

ニューラルネットワークが簡単に(第22部):回帰モデルの教師なし学習

モデルと教師なし学習アルゴリズムの研究を続けます。今回は、回帰モデルの学習に適用した場合のオートエンコーダの特徴について提案します。
preview
非線形指標

非線形指標

今回は、非線形指標を構築する方法と取引での使用について、いくつか考えてみたいと思います。MetaTraderの取引プラットフォームには、非線形なアプローチを使用する指標がかなりあります。
preview
MQL5の圏論(第10回):モノイド群

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

MQL5における圏論の実装についての連載を続けます。ここでは、モノイド集合を正規化して、より幅広いモノイド集合とデータ型にわたって比較しやすくする手段としてモノイド群を見ていきます。
preview
ニューラルネットワークが簡単に(第46回):目標条件付き強化学習(GCRL)

ニューラルネットワークが簡単に(第46回):目標条件付き強化学習(GCRL)

今回は、もうひとつの強化学習アプローチを見てみましょう。これはGCRL(goal-conditioned reinforcement learning、目標条件付き強化学習)と呼ばれます。このアプローチでは、エージェントは特定のシナリオでさまざまな目標を達成するように訓練されます。
preview
ニューラルネットワークが簡単に(第18部):アソシエーションルール

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

この連載の続きとして、教師なし学習の手法の中で、もう1つのタイプの問題であるアソシエーションルールのマイニングについて考えてみましょう。この問題タイプは、小売業、特にスーパーマーケットで、市場の分類を分析するために最初に使用されました。今回は、このようなアルゴリズムの取引への応用についてお話します。
有用なテクノロジーカクテルでYour MQL5 顧客を驚嘆させる!
有用なテクノロジーカクテルでYour MQL5 顧客を驚嘆させる!

有用なテクノロジーカクテルでYour MQL5 顧客を驚嘆させる!

MQL5 はプログラマーに関数の完全セットとオブジェクト指向API を提供します。それらのお陰でプログラマーは MetaTrader 環境内で願うことを行うことができるのです。ただ「ウェブテクノロジー」は今日ひじょに特殊なことをしてなにか違ったもので顧客を驚かせる必要があったり、ただ MT5 「標準ライブラリ」の特定箇所をマスターする十分な時間がないなんらかの状況で救助にきてくれる極端に多才なツールです。今回の例題によりご自身の開発時間管理の仕方と同時にすばらしいテクノロジーカクテルを作成する方法を実用例をご紹介します。
リニアなトレーディングシステムを指数に高める
リニアなトレーディングシステムを指数に高める

リニアなトレーディングシステムを指数に高める

本稿では MQL5 プログラマーの中級者にリニアなトレーディングシステム(固定ロット)からいわゆる指数の技術を簡単に実装することでより収益を上げる方法をお伝えします。これは結果として生じる資金曲線の成長が幾何学的または指数関数で放物線の形を取ります。特にラルフ・ビンス氏によって開発された実用的な「固定比率」のポジションサイジングの MQL5 のバリアントを実装します。
preview
ニューラルネットワークの実験(第6回):価格予測のための自給自足ツールとしてのパーセプトロン

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

この記事では、パーセプトロンを自給自足の価格予測ツールとして使用する例として、一般的な概念と最もシンプルな既製のエキスパートアドバイザー(EA)を紹介し、その最適化の結果について説明します。
DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス
DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス

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

本稿では、チャートオブジェクトクラスの開発を続け、利用可能な指標のリストを含むチャートウィンドウオブジェクトのリストに追加します。
preview
MQL5入門(第11回):MQL5の組み込みインジケーターの操作に関する初心者向けガイド(II)

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

RSI、MA、ストキャスティクスなどの複数のインジケーターを使用してMQL5でエキスパートアドバイザー(EA)を開発し、隠れた強気および弱気のダイバージェンスを検出する方法を学びます。教育目的で、詳細な例および完全にコメントされたソースコードを用いて、効果的なリスク管理を実装し、取引を自動化する方法をご紹介します。
トレーダミネーター 3:売買ロボットの台頭
トレーダミネーター 3:売買ロボットの台頭

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

記事 "Dr. Tradelove..." で Expert Advisorを作成しました。それは選択済みのトレーディングシステムのパラメータを自立的に最適化するものです。それ以上に EAにある一つのトレーディングシステムのパラメータだけを最適化するのではなく、複数あるトレーディングシステムから最良のものを選ぶExpert Advisorを作成しようと決めました。それがどうなったか見ていきます。
preview
ニューラルネットワークが簡単に(第37回):スパースアテンション(Sparse Attention)

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

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

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

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

Connecting NeuroSolutions Neuronets

ニューロネットの作成に加え、NeuroSolutions ソフトウェアスウィートによりそれらを DLLとしてエクスポートすることが可能となります。本稿では、ニューロネット作成とDLL生成とそれを MetaTrader 5でのトレーディングのためExpert Advisor に連携する手順について述べています。
preview
ニューラルネットワークが簡単に(第14部):データクラスタリング

ニューラルネットワークが簡単に(第14部):データクラスタリング

前回の記事を公開してから1年以上が経過しました。アイデアを修正して新しいアプローチを開発するには、これはかなりの時間です。この新しい記事では、以前に使用された教師あり学習法から逸れようと思います。今回は、教師なし学習アルゴリズムについて説明します。特に、クラスタリングアルゴリズムの1つであるk-meansについて検討していきます。
preview
スマートマネーコンセプト(BOS)とRSI指標をEAに統合する方法

スマートマネーコンセプト(BOS)とRSI指標をEAに統合する方法

市場構造に基づいた情報に基づく自動売買の意思決定を可能にするためには、スマートマネーコンセプト(Break Of Structure: BOS)とRSI指標の組み合わせが有効です。
グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)
グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)

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

今日までは、ライブラリの最も高度なテーブルはCTableでした。このテーブルは、OBJ_EDIT型のエディットボックスから組み立てられており、さらなる開発は難しいです。したがって、機能の最大化においては、ライブラリ開発の現段階を考慮しても、CCanvasTable型のレンダーテーブルを開発する方が賢明です。その現バージョンはまったく使えない状態ですが、この記事から始めて状況を改善していきましょう。
preview
MQL5で動的な多銘柄多期間の相対力指標(RSI)指標ダッシュボードを作成する

MQL5で動的な多銘柄多期間の相対力指標(RSI)指標ダッシュボードを作成する

この記事では、MQL5を使用して、動的に複数の銘柄と時間枠にわたるRSI指標のダッシュボードを開発し、トレーダーにリアルタイムでRSI値を提供する方法を解説します。このダッシュボードには、インタラクティブなボタン、リアルタイム更新、色分けされた指標が搭載されており、トレーダーがより的確な意思決定をおこなうためのサポートをします。
preview
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第4回):三角移動平均 — 指標シグナル

MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第4回):三角移動平均 — 指標シグナル

この記事の多通貨エキスパートアドバイザー(EA)は、1つの銘柄チャートからのみ複数の銘柄ペアの取引(注文を出す、注文を決済する、トレーリングストップロスとトレーリングプロフィットなどで注文を管理するなど)ができるEAまたは自動売買ロボットです。今回は、多時間枠または単一時間枠の「三角移動平均」という1つの指標のみを使用します。
preview
MQL5エキスパートアドバイザーに自動最適化を実装する方法

MQL5エキスパートアドバイザーに自動最適化を実装する方法

エキスパートアドバイザー(EA)のためのMQL5の自動最適化のためのステップバイステップガイド。堅牢な最適化ロジック、パラメーター選択のベストプラクティス、バックテストを通じた戦略の再構築方法について解説します。さらに、ウォークフォワード最適化などの高レベルな手法を紹介し、取引アプローチの強化を目指します。
preview
ニュース取引が簡単に(第1回):データベースの作成

ニュース取引が簡単に(第1回):データベースの作成

ニュース取引は複雑で圧倒されるかもしれませんが、この記事ではニュースデータを入手する手順を説明し、さらに、MQL5経済指標カレンダーとその特徴についても学びます。
preview
MQL5入門(第3部):MQL5のコア要素をマスターする

MQL5入門(第3部):MQL5のコア要素をマスターする

この初心者向けの記事では、MQL5プログラミングの基本を解説します。配列、カスタム関数、プリプロセッサ、イベント処理など、すべてのコードをわかりやすく説明し、すべての行にアクセスできるようにします。すべてのステップで理解を深める独自のアプローチで、MQL5のパワーを引き出しましょう。この記事はMQL5をマスターするための基礎となるもので、各コード行の説明に重点を置き、明確で充実した学習体験を提供します。
preview
ニューラルネットワークが簡単に(第58回):Decision Transformer (DT)

ニューラルネットワークが簡単に(第58回):Decision Transformer (DT)

強化学習の手法を引き続き検討します。この記事では、一連の行動を構築するパラダイムでエージェントの方策を考慮する、少し異なるアルゴリズムに焦点を当てます。
preview
初心者からエキスパートへ:MQL5での共同デバッグ

初心者からエキスパートへ:MQL5での共同デバッグ

問題解決は、MQL5でのプログラミングのような複雑なスキルを習得するための簡潔なルーチンを確立することができます。このアプローチでは、問題解決に集中しながら、同時にスキルアップを図ることができます。問題に取り組めば取り組むほど、高度な専門知識が脳に伝達されます。個人的には、デバッグはプログラミングをマスターするための最も効果的な方法だと思っています。今日は、コードクリーニングのプロセスを紹介し、乱雑なプログラムをクリーンで機能的なものに変えるための最善のテクニックについて解説します。この記事を読んで、貴重な洞察を発見してください。
preview
MQL5の圏論(第6回):単射的引き戻しと全射的押し出し

MQL5の圏論(第6回):単射的引き戻しと全射的押し出し

圏論は、数学の多様かつ拡大を続ける分野であり、最近になってMQL5コミュニティである程度取り上げられるようになりました。この連載では、その概念と原理のいくつかを探索して考察することで、トレーダーの戦略開発におけるこの注目すべき分野の利用を促進することを目的としたオープンなライブラリを確立することを目指しています。
preview
ONNXモデルをクラスでラップする

ONNXモデルをクラスでラップする

オブジェクト指向プログラミングは、読みやすく修正しやすい、よりコンパクトなコードの作成を可能にします。ここでは3つのONNXモデルの例を見てみましょう。
preview
一からの取引エキスパートアドバイザーの開発(第8部):概念的な飛躍

一からの取引エキスパートアドバイザーの開発(第8部):概念的な飛躍

新しい機能を実装する最も簡単な方法は何でしょうか。この記事では、1歩後退してから2歩前進します。
preview
MQL5入門(第4部):構造体、クラス、時間関数をマスターする

MQL5入門(第4部):構造体、クラス、時間関数をマスターする

最新記事でMQL5プログラミングの秘密を解き明かしましょう。構造体、クラス、時間関数の本質に迫り、コーディングの旅に力を与えます。初心者から経験豊富な開発者まで、個のガイドは、MQL5をマスターするための貴重な洞察を提供し、複雑な概念を簡素化します。プログラミングのスキルを高め、アルゴリズム取引の世界で一歩先を行きましょう。
preview
Pythonを使ったEAとバックテストのための感情分析とディープラーニング

Pythonを使ったEAとバックテストのための感情分析とディープラーニング

この記事では、EAで使用するPythonによる感情分析とONNXモデルを紹介します。あるスクリプトはTensorFlowで学習させたONNXモデルをディープラーニング予測用に実行し、別のスクリプトはニュースのヘッドラインを取得し、AIを使用して感情を数値化します。
preview
ニューラルネットワークが簡単に(第29部):Advantage Actor-Criticアルゴリズム

ニューラルネットワークが簡単に(第29部):Advantage Actor-Criticアルゴリズム

本連載のこれまでの記事で、2つの強化学習アルゴリズムを見てきました。それぞれに長所と短所があります。このような場合ではよくあることですが、次に、2つの方法の良いところを組み合わせてアルゴリズムにすることが考え出されます。そうすれば、それぞれの欠点が補われることになります。今回は、そのような手法の1つを紹介します。