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

icon

MetaTraderプラットフォームのために作られたExpert Advisorsは、開発者により導入された様々な機能を実行します。自動売買ロボットは1日24時間、通貨をトラックし、取引をコピーし、レポートを送信し、ニュースを分析し、 特別に作成されたグラフィカルインターフェイスを提供することができます。

記事はプログラミングのテクニック、データ処理のための数学的なアイデア、自動売買ロボットの開発と発注についてのヒントを記載します。

新しい記事を追加
最新 | ベスト
preview
MQL5入門(第9回):MQL5のオブジェクトの理解と使用

MQL5入門(第9回):MQL5のオブジェクトの理解と使用

現在のデータと履歴データを使用して、MQL5でチャートオブジェクトを作成およびカスタマイズする方法を学びます。このプロジェクトベースのガイドは、取引を可視化し、MQL5の概念を実際に適用するのに役立ち、取引のニーズに合わせたツールの構築が容易になります。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第5回):TelegramからMQL5にコマンドを送信し、リアルタイムの応答を受信する

MQL5-Telegram統合エキスパートアドバイザーの作成(第5回):TelegramからMQL5にコマンドを送信し、リアルタイムの応答を受信する

この記事では、MQL5とTelegram間のリアルタイム通信を容易にするためのいくつかのクラスを作成します。Telegramからコマンドを取得し、それをデコードして解釈し、適切な応答を送り返すことに重点を置きます。最終的には、これらの相互作用が取引環境内で効果的にテストされ、運用されていることを確認します。
preview
知っておくべきMQL5ウィザードのテクニック(第36回):マルコフ連鎖を用いたQ学習

知っておくべきMQL5ウィザードのテクニック(第36回):マルコフ連鎖を用いたQ学習

強化学習は、教師あり学習、教師なし学習と並んで、機械学習における3つの主要な考え方の1つです。そのため、最適制御、つまり目的関数に最も適した長期的な方針を学習することに関心があります。このような背景から、ウィザードが作成したEAのMLPの学習プロセスにおいて、MLPがどのような役割を果たす可能性があるのかを探ります。
preview
ニューラルネットワークが簡単に(第90回):時系列の周波数補間(FITS)

ニューラルネットワークが簡単に(第90回):時系列の周波数補間(FITS)

FEDformer法を研究することで、時系列表現の周波数領域への扉を開きました。この新しい記事では、私たちが始めたトピックを続けます。分析をおこなうだけでなく、特定の分野におけるその後の状態を予測することができる手法について考えてみたいと思います。
preview
多通貨エキスパートアドバイザーの開発(第12回):プロップトレーディングレベルのリスクマネージャーの育成

多通貨エキスパートアドバイザーの開発(第12回):プロップトレーディングレベルのリスクマネージャーの育成

開発中のEAには、ドローダウンを制御するための特定のメカニズムがすでに備わっています。しかし、これは過去の価格データに対するテストの結果に基づいているため、本質的には確率的です。したがって、ドローダウンは最大予想値を超える場合があります (ただし、確率は小さいです)。指定されたドローダウン レベルへの準拠を保証するメカニズムを追加してみましょう。
preview
ニューラルネットワークが簡単に(第89回):FEDformer (Frequency Enhanced Decomposition Transformer)

ニューラルネットワークが簡単に(第89回):FEDformer (Frequency Enhanced Decomposition Transformer)

これまで検討してきたすべてのモデルは、環境の状態を時系列として分析します。ただし、時系列は周波数特徴の形式で表現することもできます。この記事では、時系列の周波数成分を使用して将来の状態を予測するアルゴリズムを紹介します。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第4回):関数コードのモジュール化による再利用性の向上

MQL5-Telegram統合エキスパートアドバイザーの作成(第4回):関数コードのモジュール化による再利用性の向上

の記事では、MQL5からTelegramへのメッセージおよびスクリーンショット送信に使用されている既存コードを、再利用可能なモジュール関数へと整理し、リファクタリングをおこないます。これによりプロセス全体が効率化され、複数インスタンスでの実行効率が高まるだけでなく、コードの管理も容易になります。
preview
知っておくべきMQL5ウィザードのテクニック(第35回):サポートベクトル回帰

知っておくべきMQL5ウィザードのテクニック(第35回):サポートベクトル回帰

サポートベクトル回帰(SVR)は、2つのデータセット間の関係を最も適切に表現する関数または「超平面」を見つけるための理想的な手法です。本稿では、MQL5ウィザードのカスタムクラス内での時系列予測において、この手法を活用することを試みます。
preview
知っておくべきMQL5ウィザードのテクニック(第34回):非従来型RBMによる価格の埋め込み

知っておくべきMQL5ウィザードのテクニック(第34回):非従来型RBMによる価格の埋め込み

制限ボルツマンマシンは、1980年代半ば、計算資源が非常に高価だった時代に開発されたニューラルネットワークの一種です。当初は、入力された訓練データセットの次元を削減し、隠れた確率や特性を捉えるために、ギブスサンプリングとコントラストダイバージェンス(Contrastive Divergence)に依存していました。RBMが予測用の多層パーセプトロンに価格を「埋め込む」場合、バックプロパゲーションがどのように同様の性能を発揮できるかを検証します。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第3回):MQL5からTelegramにキャプション付きチャートのスクリーンショットを送信する

MQL5-Telegram統合エキスパートアドバイザーの作成(第3回):MQL5からTelegramにキャプション付きチャートのスクリーンショットを送信する

この記事では、チャートのスクリーンショットを画像データとしてエンコードし、HTTPリクエストを通じてTelegramチャットに送信するMQL5のエキスパートアドバイザー(EA)を作成します。この画像のエンコードと送信の統合によって、既存のMQL5-Telegramシステムが強化され、Telegram上で直接視覚的な取引洞察を提供できるようになります。
preview
MQL5のパラボリックSARトレンド戦略による取引戦略の自動化:効果的なEAの作成

MQL5のパラボリックSARトレンド戦略による取引戦略の自動化:効果的なEAの作成

この記事では、MQL5を使用してパラボリックSAR戦略を基にした取引戦略を自動化する方法について説明します。効果的なエキスパートアドバイザー(EA)を創り出します。このEAは、パラボリックSAR指標によって識別されたトレンドに基づいて取引を実行します。
preview
ダイナミックマルチペアEAの形成(第1回):通貨相関と逆相関

ダイナミックマルチペアEAの形成(第1回):通貨相関と逆相関

ダイナミックマルチペアEAは、相関戦略と逆相関戦略の両方を活用し、取引パフォーマンスの最適化を図ります。リアルタイムの市場データを分析することで、通貨ペア間の相関関係や逆相関関係を特定し、それらを取引に活かします。
preview
Candlestick Trend Constraintモデルの構築(第8回):エキスパートアドバイザー(EA)の開発 (II)

Candlestick Trend Constraintモデルの構築(第8回):エキスパートアドバイザー(EA)の開発 (II)

独立したEAについて考えてみましょう。前回は、リスクとリターンのジオメトリを描くために独立したスクリプトと連携する、指標ベースのEAについて説明しました。今回は、すべての機能を1つのプログラムに統合したMQL5 EAのアーキテクチャについて解説します。
preview
知っておくべきMQL5ウィザードのテクニック(第33回):ガウス過程カーネル

知っておくべきMQL5ウィザードのテクニック(第33回):ガウス過程カーネル

ガウス過程カーネルは正規分布の共分散関数であり、予測において役割を果たす可能性があります。MQL5のカスタムシグナルクラスで、このユニークなアルゴリズムを探求し、プライムエントリシグナルやエグジットシグナルとして活用できるかを検証しました。
preview
知っておくべきMQL5ウィザードのテクニック(第32回):正則化

知っておくべきMQL5ウィザードのテクニック(第32回):正則化

正則化とは、ニューラルネットワークのさまざまな層全体に適用される離散的な重み付けに比例して、損失関数にペナルティを与える形式です。様々な正則化形式について、ウィザードで組み立てたEAを使ったテスト実行で、この正則化が持つ重要性を見てみます。
preview
どんな市場でも優位性を得る方法(第3回):VISA消費指数

どんな市場でも優位性を得る方法(第3回):VISA消費指数

ビッグデータの世界では、取引戦略を向上させる可能性を秘めた数百万もの代替データセットが存在します。この連載では、最も有益な公共データセットを特定するお手伝いをします。
preview
古典的な戦略を再構築する(第6回):多時間枠分析

古典的な戦略を再構築する(第6回):多時間枠分析

この連載では、古典的な戦略を再検討し、AIを使って改善できるかどうかを検証します。本日の記事では、人気の高い多時間枠分析という戦略を検証し、AIによって戦略が強化されるかどうかを判断します。
preview
古典的な戦略を再構築する(第5回):USDZARの多銘柄分析

古典的な戦略を再構築する(第5回):USDZARの多銘柄分析

この連載では、古典的な戦略を再検討し、AIを使って戦略を改善できるかどうかを検証します。今日の記事では、複数の相関する証券をまとめて分析するという一般的な戦略について検討し、エキゾチックな通貨ペアであるUSDZAR(米ドル/南アフリカランド)に焦点を当てます。
preview
Candlestick Trend Constraintモデルの構築(第8回):エキスパートアドバイザーの開発 (I)

Candlestick Trend Constraintモデルの構築(第8回):エキスパートアドバイザーの開発 (I)

今回は、前回の記事で作成した指標を元に、MQL5で最初のエキスパートアドバイザー(EA)を作成します。リスク管理を含め、取引プロセスを自動化するために必要な全機能を紹介します。これにより、手動の取引執行から自動化されたシステムへとスムーズに移行できるメリットがあります。
preview
MQL5の統合:Python

MQL5の統合:Python

Pythonは、特に金融、データサイエンス、人工知能、機械学習の分野で多くの特徴を持つ、よく知られた人気のプログラミング言語です。また、Pythonは取引にも有効な強力なツールです。MQL5では、この強力な言語を統合して使用することで、目的を効果的に達成することができます。本記事では、Pythonの基本的な情報を学んだ後、MQL5でPythonを統合して使用する方法を紹介します。
preview
多通貨エキスパートアドバイザーの開発(第11回):最適化の自動化(最初のステップ)

多通貨エキスパートアドバイザーの開発(第11回):最適化の自動化(最初のステップ)

良いEAを得るためには、取引戦略の複数のインスタンスから優れたパラメータセットを選択する必要があります。これを実現するためには、さまざまな銘柄で最適化を行い、最良の結果を選ぶという手動のプロセスがあります。しかし、この作業をプログラムに任せ、より生産的な活動に専念したほうが効率的です。
preview
アルゴリズム取引のリスクマネージャー

アルゴリズム取引のリスクマネージャー

本稿の目的は、リスクマネージャーを利用する必要性を証明し、アルゴリズム取引におけるリスク管理の原則を別クラスで実践することで、金融市場におけるデイ取引と投資におけるリスク標準化アプローチの有効性を誰もが検証できるようにすることです。この記事では、アルゴリズム取引用のリスクマネージャークラスを作成します。これは、手動取引のリスクマネージャーの作成について述べた前回の記事の論理的な続きです。
preview
多通貨エキスパートアドバイザーの開発(第10回):文字列からオブジェクトを作成する

多通貨エキスパートアドバイザーの開発(第10回):文字列からオブジェクトを作成する

エキスパートアドバイザー(EA)の開発計画は複数の段階で構成されており、中間結果はデータベースに保存されます。しかし、これらの結果はオブジェクトとしてではなく、文字列や数値としてのみ抽出できます。したがって、データベースから読み込んだ文字列を基に、EAで目的のオブジェクトを再構築する方法が必要です。
preview
ニューラルネットワークが簡単に(第88回):Time-series Dense Encoder (TiDE)

ニューラルネットワークが簡単に(第88回):Time-series Dense Encoder (TiDE)

研究者たちは、より正確な予測を得るために、しばしばモデルを複雑化します。しかし、その結果として、モデルの訓練やメンテナンスにかかるコストも増加します。この増大したコストは常に正当化されるのでしょうか。本記事では、シンプルで高速な線形モデルの特性を活かし、複雑なアーキテクチャを持つ最新モデルに匹敵する結果を示すアルゴリズムを紹介します。
preview
知っておくべきMQL5ウィザードのテクニック(第31回):損失関数の選択

知っておくべきMQL5ウィザードのテクニック(第31回):損失関数の選択

損失関数は、機械学習アルゴリズムの重要な指標です。これは、与えられたパラメータセットが目標に対してどれだけうまく機能しているかを定量的に評価し、学習プロセスにフィードバックを提供する役割を果たします。本記事では、MQL5のカスタムウィザードクラスを使って、損失関数のさまざまな形式を探っていきます。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第2回):MQL5からTelegramへのシグナル送信

MQL5-Telegram統合エキスパートアドバイザーの作成(第2回):MQL5からTelegramへのシグナル送信

この記事では、移動平均クロスオーバーシグナルをTelegramに送信するMQL5-Telegram統合エキスパートアドバイザー(EA)を作成します。移動平均クロスオーバーから売買シグナルを生成し、MQL5で必要なコードを実装し、統合がシームレスに機能するようにするプロセスを詳しく説明します。その結果、リアルタイムの取引アラートをTelegramのグループチャットに直接提供するシステムが完成します。
preview
MQL5-Telegram統合エキスパートアドバイザーの作成(第1回):MQL5からTelegramへのメッセージ送信

MQL5-Telegram統合エキスパートアドバイザーの作成(第1回):MQL5からTelegramへのメッセージ送信

この記事では、MQL5を使用してEAを作成し、Telegramに自動でメッセージを送信する方法を説明します。ボットのAPIトークンやチャットIDといった必要なパラメータを設定し、HTTP POSTリクエストを実行してメッセージを配信する流れを学びます。また、応答を処理し、万が一メッセージ送信が失敗した場合には、トラブルシューティングについても解説します。最終的には、MQL5を通じてTelegramにメッセージを送るボットを構築する手順をマスターします。
preview
知っておくべきMQL5ウィザードのテクニック(第30回):機械学習におけるバッチ正規化のスポットライト

知っておくべきMQL5ウィザードのテクニック(第30回):機械学習におけるバッチ正規化のスポットライト

バッチ正規化とは、ニューラルネットワークのような機械学習アルゴリズムに投入するデータの前処理です。これは、アルゴリズムが使用する活性化の種類を常に意識しながらおこなわれます。そこで、エキスパートアドバイザー(EA)を使って、そのメリットを享受するためのさまざまなアプローチを探ります。
preview
Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

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

この記事では、RSIと移動平均指標に基づいて自動売買をおこなうDeus EAの実装手順を概説します。
preview
MQL5でボリンジャーバンド取引戦略を実装する:ステップごとのガイド

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

ボリンジャーバンド売買戦略に基づくMQL5での自動売買アルゴリズム実装のためのステップごとのガイドです。トレーダーに役立つEAの作成に基づく詳細なチュートリアルです。
preview
独自のLLMをEAに総合する(第5部): LLMを使った取引戦略の開発とテスト(I) - 微調整

独自のLLMをEAに総合する(第5部): LLMを使った取引戦略の開発とテスト(I) - 微調整

今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じて微調整(ファインチューニング)し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
preview
知っておくべきMQL5ウィザードのテクニック(第29回):MLPの学習率についての続き

知っておくべきMQL5ウィザードのテクニック(第29回):MLPの学習率についての続き

エキスパートアドバイザー(EA)のパフォーマンスに対する学習率の感度を、主に適応学習率を調べることでまとめます。これらの学習率は、訓練の過程で層の各パラメータごとにカスタマイズすることを目的としており、潜在的な利点と期待されるパフォーマンスの差を評価します。
preview
MQL5で動的な多銘柄多期間の相対力指標(RSI)指標ダッシュボードを作成する

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

この記事では、MQL5を使用して、動的に複数の銘柄と時間枠にわたるRSI指標のダッシュボードを開発し、トレーダーにリアルタイムでRSI値を提供する方法を解説します。このダッシュボードには、インタラクティブなボタン、リアルタイム更新、色分けされた指標が搭載されており、トレーダーがより的確な意思決定をおこなうためのサポートをします。
preview
知っておくべきMQL5ウィザードのテクニック(第28回):学習率に関する入門書によるGANの再検討

知っておくべきMQL5ウィザードのテクニック(第28回):学習率に関する入門書によるGANの再検討

学習率(Learning Rate)とは、多くの機械学習アルゴリズムの学習プロセスにおいて、学習目標に向かうステップの大きさのことです。以前の記事で検証したニューラルネットワークの一種である生成的敵対的ネットワーク(GAN: Generative Adversarial Network)のパフォーマンスに、その多くのスケジュールと形式が与える影響を検証します。
preview
初心者からエキスパートへ:MQL5取引のエッセンシャルジャーニー

初心者からエキスパートへ:MQL5取引のエッセンシャルジャーニー

潜在能力を引き出しましょう。あなたはチャンスに囲まれています。MQL5の旅をスタートさせ、次のレベルへと引き上げる3つの秘訣をご覧ください。初心者にもプロにも役立つヒントやトリックをご紹介します。
preview
古典的な戦略をPythonで再構築する(第2回):ボリンジャーバンドのブレイクアウト

古典的な戦略をPythonで再構築する(第2回):ボリンジャーバンドのブレイクアウト

本稿では、線形判別分析(LDA: Linear Discriminant Analysis)とボリンジャーバンドを統合し、戦略的市場参入シグナルの生成を目的としたカテゴリ別ゾーン予測を活用する取引戦略を考察します。
preview
MQL5取引ツールキット(第2回):ポジション管理EX5ライブラリの拡張と実装

MQL5取引ツールキット(第2回):ポジション管理EX5ライブラリの拡張と実装

MQL5コードやプロジェクトでEX5ライブラリをインポートして使用する方法をご紹介します。今回は、既存のライブラリにポジション管理関数を追加し、2つのエキスパートアドバイザー(EA)を作成することで、EX5ライブラリを拡張します。最初の例では、可変指数ダイナミック平均(VIDyA: Variable Index Dynamic Average)テクニカル指標を使用して、トレーリングストップ取引戦略EAを開発し、2番目の例では、取引パネルを使用して、ポジションの監視、オープン、クローズ、および修正をおこないます。この2つの例では、アップグレードされたEX5ポジション管理ライブラリの使用方法と実装方法を紹介します。
preview
データサイエンスと機械学習(第27回):MetaTrader 5取引ボットにおける畳み込みニューラルネットワーク(CNN)に価値はあるか?

データサイエンスと機械学習(第27回):MetaTrader 5取引ボットにおける畳み込みニューラルネットワーク(CNN)に価値はあるか?

畳み込みニューラルネットワーク(CNN)は、画像や映像のパターンを検出する能力に優れていることで有名で、さまざまな分野に応用されています。この記事では、金融市場の価値あるパターンを識別し、MetaTrader 5取引ボットのための効果的な取引シグナルを生成するCNNの可能性を探ります。このディープマシンラーニングの手法を、よりスマートな取引判断のためにどのように活用できるかを見てみましょう。
preview
MQL5とPythonで自己最適化EAを構築する

MQL5とPythonで自己最適化EAを構築する

この記事では、市況に基づいて取引戦略を自律的に選択変更できるエキスパートアドバイザー(EA)を構築する方法について解説します。マルコフ連鎖の基本を学び、それがアルゴリズムトレードにどのように役立つかを探っていきます。
preview
多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

EA開発の主な段階を概説しましょう。最初におこなうべき重要な作業の1つは、開発した取引戦略のインスタンスを最適化することです。最適化プロセスにおいて、テスターが通過したパスに関する必要な情報を一箇所に集約してみましょう。