MQL5言語での取引システムの自動化に関する記事

icon

多種多様なアイデアを核としたトレーディングシステムに関する記事をご覧ください。統計とロウソク足チャートのパターンをどのように使用するか、どのようにシグナルをフィルタするか、どこでセマフォインディケータを使用するかを学べます。

MQL5ウィザードを使用すれば、プログラミングなしでロボットを作成して、トレーディングのアイデアを素早く確認できます。遺伝的アルゴリズムについて知るためにウィザードを使用してください。

新しい記事を追加
最新 | ベスト
preview
初心者からエキスパートへ:予測価格経路

初心者からエキスパートへ:予測価格経路

フィボナッチレベルは、市場がしばしば尊重する実践的な枠組みを提供し、価格が反応しやすいゾーンを明確に示します。本記事では、フィボナッチリトレースメントのロジックを用いて将来の値動きを予測し、指値注文で押し目を狙うエキスパートアドバイザー(EA)を構築します。スイング検出からレベル描画、リスク管理、注文執行まで、一連のワークフロー全体を解説します。
preview
ニューラルネットワークが簡単に(第23部):転移学習用ツールの構築

ニューラルネットワークが簡単に(第23部):転移学習用ツールの構築

転移学習については当連載ですでに何度も言及していますが、これはただの言及でした。この記事では、このギャップを埋めて、転移学習の詳しい調査を提案します。
preview
ニューラルネットワークの実験(第7回):指標の受け渡し

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

指標をパーセプトロンに渡す例。この記事では、一般的な概念について説明し、最も単純な既製のエキスパートアドバイザー(EA)と、それに続く最適化とフォワードテストの結果を紹介します。
preview
ソフトウェア開発とMQL5におけるデザインパターン(第2回):構造パターン

ソフトウェア開発とMQL5におけるデザインパターン(第2回):構造パターン

この記事では、MQL5だけでなく他のプログラミング言語でも拡張可能で信頼性の高いアプリケーションを開発するために、デザインパターンのトピックが開発者としてどれほど重要であるかを学んだ後、当トピックについての記事を続けます。デザインパターンのもう1つのタイプである構造デザインパターンについて学び、クラスにあるものを使ってより大きな構造を形成することによってシステムをデザインする方法を学びます。
preview
データサイエンスと機械学習(第19回):AdaBoostでAIモデルをパワーアップ

データサイエンスと機械学習(第19回):AdaBoostでAIモデルをパワーアップ

AdaBoostは、AIモデルのパフォーマンスを向上させるために設計された強力なブースティングアルゴリズムです。AdaBoostはAdaptive Boostingの略で、弱い学習機をシームレスに統合し、その集合的な予測力を強化する洗練されたアンサンブル学習技法です。
preview
MQL5のパラボリックSARトレンド戦略による取引戦略の自動化:効果的なEAの作成

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

この記事では、MQL5を使用してパラボリックSAR戦略を基にした取引戦略を自動化する方法について説明します。効果的なエキスパートアドバイザー(EA)を創り出します。このEAは、パラボリックSAR指標によって識別されたトレンドに基づいて取引を実行します。
preview
知っておくべきMQL5ウィザードのテクニック(第37回):線形カーネルとMatérnカーネルによるガウス過程回帰

知っておくべきMQL5ウィザードのテクニック(第37回):線形カーネルとMatérnカーネルによるガウス過程回帰

線形カーネルは、線形回帰やサポートベクターマシンの機械学習で使用される、この種の行列の中で最も単純な行列です。一方、Matérnカーネルは、以前の記事で紹介したRBF (Radial Basis Function)をより汎用的にしたもので、RBFが想定するほど滑らかではない関数をマッピングするのに長けています。売買条件を予測する際に、両方のカーネルを利用するカスタムシグナルクラスを構築します。
preview
ニューラルネットワークが簡単に (第42回):先延ばしのモデル、理由と解決策

ニューラルネットワークが簡単に (第42回):先延ばしのモデル、理由と解決策

強化学習の文脈では、モデルの先延ばしにはいくつかの理由があります。この記事では、モデルの先延ばしの原因として考えられることと、それを克服するための方法について考察しています。
preview
リプレイシステムの開発 - 市場シミュレーション(第19回):必要な調整

リプレイシステムの開発 - 市場シミュレーション(第19回):必要な調整

ここでは、コードに新しい関数を追加する必要がある場合に、スムーズかつ簡単に追加できるように基礎を整えます。現在のコードでは、有意義な進歩を遂げるために必要な事柄の一部をまだカバーまたは処理できません。最小限の労力で特定のことを実装できるようにするには、すべてを構造化する必要があります。すべてを正しくおこなえば、対処が必要なあらゆる状況に非常に簡単に適応できる、真に普遍的なシステムを得ることができます。
preview
ニューラルネットワークが簡単に(第30部):遺伝的アルゴリズム

ニューラルネットワークが簡単に(第30部):遺伝的アルゴリズム

今日はちょっと変わった学習法を紹介したいと思います。ダーウィンの進化論からの借用と言えます。先に述べた手法よりも制御性は劣るでしょうが、非差別的なモデルの訓練が可能です。
preview
トレンドフォロー戦略のためのLSTMによるトレンド予測

トレンドフォロー戦略のためのLSTMによるトレンド予測

長・短期記憶(LSTM: Long Short-Term Memory)は、長期的な依存関係を捉える能力に優れ、勾配消失問題にも対処できる、時系列データ処理に特化した再帰型ニューラルネットワーク(RNN: Recurrent Neural Network)の一種です。本記事では、LSTMを活用して将来のトレンドを予測し、トレンドフォロー型戦略のパフォーマンスを向上させる方法について解説します。内容は、主要な概念と開発の背景の紹介、MetaTrader 5からのデータ取得、そのデータを用いたPythonでのモデル学習、学習済みモデルのMQL5への統合、そして統計的なバックテストに基づく結果の分析と今後の展望までを含みます。
preview
リプレイシステムの開発 - 市場シミュレーション(第12回):シミュレーターの誕生(II)

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

シミュレーターの開発は、見た目よりもずっと面白いものです。事態はさらに面白くなってきているため、今日は、この方向にもう少し踏み込んでみましょう。
preview
多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

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

EA開発の主な段階を概説しましょう。最初におこなうべき重要な作業の1つは、開発した取引戦略のインスタンスを最適化することです。最適化プロセスにおいて、テスターが通過したパスに関する必要な情報を一箇所に集約してみましょう。
DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備
DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備

DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備

この記事では、ティックデータの更新をリアルタイムで実装し、板情報を操作するための銘柄オブジェクトクラスを準備します(DOM自体は次の記事で実装されます)。
preview
MQL5の圏論(第8回):モノイド

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

MQL5における圏論の実装についての連載を続けます。今回は、ルールと単位元を含むことで、圏論を他のデータ分類法と一線を画す始域(集合)としてモノイドを紹介します。
preview
ニューラルネットワークが簡単に(第87回):時系列パッチ

ニューラルネットワークが簡単に(第87回):時系列パッチ

予測は時系列分析において重要な役割を果たします。この新しい記事では、時系列パッチの利点についてお話しします。
preview
ニューラルネットワークが簡単に(第84回):RevIN (Reversible Normalization)

ニューラルネットワークが簡単に(第84回):RevIN (Reversible Normalization)

入力データの前処理がモデル訓練の安定性に大きく寄与することは、すでに広く知られています。オンラインで「生」の入力データを処理するために、バッチ正規化層が頻繁に使用されますが、時には逆の手順が求められる場合もあります。この記事では、この問題を解決するための1つのアプローチについて解説します。
preview
知っておくべきMQL5ウィザードのテクニック(第02回):コホネンマップ

知っておくべきMQL5ウィザードのテクニック(第02回):コホネンマップ

この連載では、MQL5ウィザードがトレーダーの主力であるべきことを示します。なぜでしょうか。MQL5ウィザードを使用すれば、新しいアイデアを組み立てることで時間を節約できるだけでなく、コーディングの重複によるミスを大幅に減らすことができるため、最終的に、取引の哲学のいくつかの重要な分野にエネルギーを注ぐことができるからです。
preview
多層パーセプトロンとバックプロパゲーションアルゴリズム(その3):ストラテジーテスターとの統合 - 概要(I)

多層パーセプトロンとバックプロパゲーションアルゴリズム(その3):ストラテジーテスターとの統合 - 概要(I)

多層パーセプトロンは、非線形分離可能な問題を解くことができる単純なパーセプトロンを進化させたものです。バックプロパゲーションアルゴリズムと組み合わせることで、このニューラルネットワークを効果的に学習させることができます。多層パーセプトロンとバックプロパゲーション連載第3回では、このテクニックをストラテジーテスターに統合する方法を見ていきます。この統合により、取引戦略を最適化するためのより良い意思決定を目的とした複雑なデータ分析が可能になります。この記事では、このテクニックの利点と問題点について説明します。
preview
リプレイシステムの開発—市場シミュレーション(第2回):最初の実験(II)

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

今回は、1分という目標を達成するために、別の方法を試してみましょう。ただし、このタスクは思っているほど単純ではありません。
preview
外国為替平均回帰戦略のためのカルマンフィルター

外国為替平均回帰戦略のためのカルマンフィルター

カルマンフィルターは、価格変動のノイズを除去して金融時系列の真の状態を推定するために、アルゴリズム取引で用いられる再帰的なアルゴリズムです。新しい市場データに基づいて予測を動的に更新するため、平均回帰のような適応型戦略において非常に有用です。本記事ではまず、カルマンフィルターの計算方法と実装について紹介します。次に、このフィルターをクラシックな平均回帰型の外国為替(FX)戦略に適用する例を示します。最後に、異なる通貨ペアにおいてカルマンフィルターと移動平均を比較し、さまざまな統計分析をおこないます。
preview
Candlestick Trend Constraintモデルの構築(第10回):戦略的ゴールデンクロスとデスクロス(EA)

Candlestick Trend Constraintモデルの構築(第10回):戦略的ゴールデンクロスとデスクロス(EA)

移動平均線のクロスオーバーに基づくゴールデンクロスおよびデッドクロス戦略は、長期的な市場トレンドを見極める上で最も信頼性の高い指標の一つであることをご存知でしょうか。ゴールデンクロスは、短期移動平均線が長期移動平均線を上回るときに強気トレンドの到来を示します。一方、デッドクロスは、短期移動平均線が長期線を下回ることで弱気トレンドの兆候を示します。これらの戦略は非常にシンプルでありながら効果的ですが、手動で運用すると機会の逸失やエントリーの遅れが発生しやすいという課題があります。
preview
ソフトウェア開発とMQL5におけるデザインパターン(第3回):振る舞いパターン1

ソフトウェア開発とMQL5におけるデザインパターン(第3回):振る舞いパターン1

デザインパターンの新しい記事として、その1タイプである振る舞いパターンを取り上げ、作成されたオブジェクト間の通信を効果的に構築する方法について説明します。これらの振る舞いパターンを完成させることで、再利用可能かつ拡張可能で、テストされたソフトウェアをどのように作成し、構築できるかを理解できるようになります。
preview
知っておくべきMQL5ウィザードのテクニック(第50回):Awesome Oscillator

知っておくべきMQL5ウィザードのテクニック(第50回):Awesome Oscillator

Awesome Oscillatorは、モメンタム(勢い)を測定するために使用されるビル・ウィリアムズのインジケーターの一つです。複数のシグナルを生成できるため、以前の記事と同様に、MQL5ウィザードクラスとアセンブリを活用して、パターンベースでこれらを確認します。
preview
多通貨エキスパートアドバイザーの開発(第20回):自動プロジェクト最適化段階のコンベアの配置(I)

多通貨エキスパートアドバイザーの開発(第20回):自動プロジェクト最適化段階のコンベアの配置(I)

私たちはすでに、自動最適化を支援するいくつかのコンポーネントを作成しています。作成の過程では、最小限の動作するコードを作るところからリファクタリングを経て、改善されたコードを得るという従来の循環的な構造に従いました。そろそろ、私たちが作成しているシステムの重要なコンポーネントでもあるデータベースの整理を始める時期です。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する(第6回):自己適応型取引ルール(II)

MQL5で自己最適化エキスパートアドバイザーを構築する(第6回):自己適応型取引ルール(II)

本記事では、より良い売買シグナルを得るために、RSIのレベルと期間を最適化する方法を探ります。最適なRSI値を推定する手法や、グリッドサーチと統計モデルを用いた期間選定の自動化について紹介します。最後に、Pythonによる分析を活用しながら、MQL5でソリューションを実装します。私たちのアプローチは、複雑になりがちな問題をシンプルに解決することを目指した、実用的かつ分かりやすいものです。
preview
ニューラルネットワークが簡単に(第62回):階層モデルにおけるDecision Transformerの使用

ニューラルネットワークが簡単に(第62回):階層モデルにおけるDecision Transformerの使用

最近の記事で、Decision Transformerを使用するためのいくつかの選択肢を見てきました。この方法では、現在の状態だけでなく、以前の状態の軌跡や、その中でおこなわれた行動も分析することができます。この記事では、階層モデルにおけるこの方法の使用に焦点を当てます。
preview
MQL5での取引戦略の自動化(第7回):動的ロットスケーリングを備えたグリッド取引EAの構築

MQL5での取引戦略の自動化(第7回):動的ロットスケーリングを備えたグリッド取引EAの構築

この記事では、動的なロットスケーリングを採用したMQL5のグリッドトレーディングエキスパートアドバイザー(EA)を構築します。戦略の設計、コードの実装、バックテストのプロセスについて詳しく解説します。最後に、自動売買システムを最適化するための重要な知見とベストプラクティスを共有します。
preview
プログラミングパラダイムについて(第1部):プライスアクションエキスパートアドバイザー開発の手続き型アプローチ

プログラミングパラダイムについて(第1部):プライスアクションエキスパートアドバイザー開発の手続き型アプローチ

プログラミングパラダイムとMQL5コードへの応用について学びます。この記事では、手続き型プログラミングの具体的な方法について、実践的な例を通して説明します。EMA指標とローソク足の価格データを使って、プライスアクションエキスパートアドバイザー(EA)を開発する方法を学びます。さらに、この記事では関数型プログラミングのパラダイムについても紹介しています。
preview
因果推論における時系列クラスタリング

因果推論における時系列クラスタリング

機械学習におけるクラスタリングアルゴリズムは、元データを類似した観察結果を持つグループに分けることができる重要な教師なし学習法です。これらのクラスタを用いることで、特定の市場クラスタを分析したり、新しいデータを基に最も安定したクラスタを探索したり、因果関係を推定したりすることが可能です。本稿では、Pythonによる時系列クラスタリングのための独自の手法を提案します。
preview
Candlestick Trend Constraintモデルの構築(第2回):ネイティブ指標の結合

Candlestick Trend Constraintモデルの構築(第2回):ネイティブ指標の結合

この記事では、トレンドから外れたシグナルを選別するために、MetaTrader 5指標を活用することに焦点を当てます。前回に引き続き、MQL5コードを使用してアイデアを最終的なプログラムに伝える方法を探っていきます。
preview
知っておくべきMQL5ウィザードのテクニック(第30回):機械学習におけるバッチ正規化のスポットライト

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

バッチ正規化とは、ニューラルネットワークのような機械学習アルゴリズムに投入するデータの前処理です。これは、アルゴリズムが使用する活性化の種類を常に意識しながらおこなわれます。そこで、エキスパートアドバイザー(EA)を使って、そのメリットを享受するためのさまざまなアプローチを探ります。
preview
ニューラルネットワークが簡単に(第44回):ダイナミクスを意識したスキルの習得

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

前回は、様々なスキルを学習するアルゴリズムを提供するDIAYN法を紹介しました。習得したスキルはさまざまな仕事に活用できます。しかし、そのようなスキルは予測不可能なこともあり、使いこなすのは難しくなります。この記事では、予測可能なスキルを学習するアルゴリズムについて見ていきます。
preview
MQL5での取引戦略の自動化(第8回):バタフライハーモニックパターンを用いたエキスパートアドバイザーの構築

MQL5での取引戦略の自動化(第8回):バタフライハーモニックパターンを用いたエキスパートアドバイザーの構築

この記事では、バタフライハーモニックパターンを検出するためのMQL5エキスパートアドバイザー(EA)を構築します。ピボットポイントを特定し、フィボナッチレベルを検証してパターンを確認します。次に、チャート上にパターンを可視化し、確認された際には自動的に取引を実行します。
preview
リプレイシステムの開発 - 市場シミュレーション(第11回):シミュレーターの誕生(I)

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

バーを形成するデータを使うためには、リプレイをやめてシミュレーターの開発に着手しなければなりません。難易度が最も低い1分バーを使用します。
preview
知っておくべきMQL5ウィザードのテクニック(第46回):一目均衡表

知っておくべきMQL5ウィザードのテクニック(第46回):一目均衡表

一目均衡表はトレンド識別システムとして機能する有名な日本の指標です。以前の同様の記事と同様に、パターンごとにこれを調べ、MQL5ウィザードライブラリクラスとアセンブリの助けを借りて、その戦略とテストレポートも評価します。
preview
古典的な戦略を再構築する(第12回):EURUSDブレイクアウト戦略

古典的な戦略を再構築する(第12回):EURUSDブレイクアウト戦略

MQL5で収益性の高いブレイクアウト取引戦略を構築する挑戦に、ぜひご参加ください。EURUSDペアを選択し、時間枠で価格ブレイクアウトを取引しましたが、私たちのシステムでは偽のブレイクアウトと真のトレンドの始まりを区別するのが難しかったです。そこで、損失を最小限に抑えながら利益を増やすことを目的としたフィルターをシステムに組み込みました。最終的にはシステムを収益性の高いものにし、誤ったブレイクアウトに対する耐性を高めることに成功しました。
preview
データサイエンスとML(第36回):偏った金融市場への対処

データサイエンスとML(第36回):偏った金融市場への対処

金融市場は完全に均衡しているわけではありません。強気の市場もあれば、弱気の市場もあり、どちらの方向にも不確かなレンジ相場を示す市場もあります。このようなバランスの取れていない情報を用いて機械学習モデルを訓練すると、市場が頻繁に変化するため、誤った予測を導く原因になります。この記事では、この問題に対処するためのいくつかの方法について議論していきます。
preview
リプレイシステムの開発(第52回):物事は複雑になる(IV)

リプレイシステムの開発(第52回):物事は複雑になる(IV)

この記事では、信頼性と安定性のある操作を確保するために、マウスポインタを変更してコントロール指標との対話を有効にします。
preview
ニュース取引が簡単に(第6回):取引の実施(III)

ニュース取引が簡単に(第6回):取引の実施(III)

この記事では、IDに基づいて個々のニュースイベントをフィルターする関数を実装します。さらに、以前のSQLクエリを改善し、追加情報が提供されたり、クエリの実行時間が短縮されるようになります。さらに、これまでの記事で作成したコードを機能的なものにします。