知っておくべきMQL5ウィザードのテクニック(第41回):DQN (Deep-Q-Network)
DQN (Deep-Q-Network)は強化学習アルゴリズムであり、機械学習モジュールの学習プロセスにおいて、次のQ値と理想的な行動を予測する際にニューラルネットワークを関与させます。別の強化学習アルゴリズムであるQ学習についてはすでに検討しました。そこでこの記事では、強化学習で訓練されたMLPが、カスタムシグナルクラス内でどのように使用できるかを示すもう1つの例を紹介します。
多通貨エキスパートアドバイザーの開発(第15回):実際の取引のためのEAの準備
既製のエキスパートアドバイザー(EA)の完成に徐々に近づくにつれ、取引戦略のテスト段階では二次的に思える問題にも注意を払う必要があります。これらの問題は、実際の取引に移行する際に重要となります。
知っておくべきMQL5ウィザードのテクニック(第62回):強化学習TRPOでADXとCCIのパターンを活用する
ADXオシレーターとCCIオシレーターはそれぞれトレンドフォローインジケーターおよびモメンタムインジケーターであり、エキスパートアドバイザー(EA)を開発する際に組み合わせることができます。前回の記事に続き、今回は開発済みモデルの運用中の学習や更新を、強化学習を用いてどのように実現できるかを検討します。この記事で使用するアルゴリズムは、本連載ではまだ扱っていない「TRPO(Trust Region Policy Optimization、信頼領域方策最適化)」として知られる手法です。また、MQL5ウィザードによるEAの組み立ては、モデルのテストをより迅速におこなえるだけでなく、異なるシグナルタイプで配布し検証できる形でセットアップできる点も利点です。
取引におけるニューラルネットワーク:Superpoint Transformer (SPFormer)
本記事では、中間データの集約を不要とするSuperpoint Transformer (SPFormer)に基づく3Dオブジェクトのセグメンテーション手法を紹介します。これによりセグメンテーション処理の高速化とモデル性能の向上が実現されます。
MQL5取引ツール(第1回):インタラクティブで視覚的なペンディングオーダー取引アシスタントツールの構築
この記事では、FX取引におけるペンディングオーダーの設置を簡素化するために開発した、MQL5によるインタラクティブ取引アシスタントツール(Trade Assistant Tool)について紹介します。まず概念設計を説明し、チャート上でエントリー、ストップロス、テイクプロフィット水準を視覚的に設定できるユーザーフレンドリーなGUIに焦点を当てます。さらに、MQL5での実装およびバックテストのプロセスを詳述し、このツールの信頼性を確認します。そして、後続のパートで発展的な機能を追加するための基盤を整えます。
MQL5でかぎ足をマスターする(第1回):インジケーターの作成
MQL5で完全なかぎ足エンジンを構築する方法を学びましょう。価格の反転の構築、動的な線分の生成、そしてかぎ足の構造をリアルタイムで更新する方法を扱います。本連載第1回では、MetaTrader 5上にかぎ足を直接描画する方法を解説します。これにより、トレーダーはトレンドの転換や市場の強さを明確に把握できるようになり、第2部で扱うかぎ足ベースの自動売買ロジックの準備が整います。
リスク管理(第2回):グラフィカルインターフェースでのロット計算の実装
本記事では、前回の記事で紹介した内容をさらに発展させ、MQL5の強力なグラフィカルコントロールライブラリを使って実際にGUIを作成する方法を解説します。ステップごとに、完全に動作するGUIを作る過程を追いながら、各メソッドの仕組みや役割、そしてその背後にある考え方についても丁寧に説明します。また、記事の最後には、作成したパネルをテストして、正しく機能することを確認します。
MQL5でのAI搭載取引システムの構築(第2回):ChatGPT統合型アプリケーションのUI開発
本記事では、MQL5でChatGPTを統合したプログラムを開発します。このプログラムでは、第1回で作成したJSON解析フレームワークを活用してOpenAIのAPIにプロンプトを送信し、MetaTrader 5のチャート上に応答を表示します。入力フィールド、送信ボタン、応答表示を備えたダッシュボードを実装し、API通信やテキストの折り返し処理をおこなうことで、ユーザーとのインタラクションを実現します。
知っておくべきMQL5ウィザードのテクニック(第31回):損失関数の選択
損失関数は、機械学習アルゴリズムの重要な指標です。これは、与えられたパラメータセットが目標に対してどれだけうまく機能しているかを定量的に評価し、学習プロセスにフィードバックを提供する役割を果たします。本記事では、MQL5のカスタムウィザードクラスを使って、損失関数のさまざまな形式を探っていきます。
MQL5取引ツールキット(第3回):未決注文管理EX5ライブラリの開発
MQL5のコードやプロジェクトで、包括的な未決注文管理EX5ライブラリを開発して実装する方法を学びましょう。本記事では、広範な未決注文管理EX5ライブラリを作成する手順を紹介し、それをインポートおよび実装する方法を、取引パネルまたはグラフィカルユーザーインターフェース(GUI)の構築を通じて解説します。このEA注文パネルを使用すれば、チャートウィンドウ上のGUIから、指定されたマジックナンバーに関連する未決注文を直接オープン、監視、削除することが可能です。
MQL5での取引戦略の自動化(第42回):セッションベースのオープニングレンジブレイクアウト(ORB)システム
MQL5で完全にカスタマイズ可能なセッションベースのオープニングレンジブレイクアウト(ORB)システムを作成します。このシステムでは、任意のセッション開始時刻とレンジの期間を設定でき、指定したオープニング期間の高値と安値を自動計算し、かつ動きの方向に沿った確定ブレイクアウトのみを取引します。
MQL5での取引戦略の自動化(第40回):カスタムレベルを使ったフィボナッチリトレースメント取引
フィボナッチリトレースメント取引のためのMQL5エキスパートアドバイザー(EA)を構築します。日足の値幅またはルックバック配列を使用して、50%や61.8%といったカスタムレベルをエントリー用に計算し、終値と始値の比較に基づいて強気または弱気のセットアップを判断します。システムは、価格が各レベルをクロスした際に買いまたは売りをトリガーし、各レベルごとに最大取引回数を設定できます。また、新しいフィボナッチ計算時の任意決済、最小利益閾値到達後のポイントベースのトレーリングストップ、値幅に対する割合で設定されるストップロスとテイクプロバッファを備えています。
ニューラルネットワークが簡単に(第93回):周波数領域と時間領域における適応予測(最終回)
本稿では、時系列予測において2つのブロック(周波数と時間)の結果を適応的に組み合わせるATFNetモデルのアプローチの実装を継続します。
ニューラルネットワークが簡単に(第77回):Cross-Covariance Transformer (XCiT)
モデルでは、しばしば様々なAttentionアルゴリズムを使用します。そして、おそらく最もよく使用するのがTransformerです。Transformerの主な欠点はリソースを必要とすることです。この記事では、品質を損なうことなく計算コストを削減する新しいアルゴリズムについて考察します。
PythonとMQL5を使用した特徴量エンジニアリング(第2回):価格の角度
MQL5フォーラムには、価格変動の傾斜を計算する方法についての支援を求める投稿が多数あります。この記事では、取引したい市場における価格の変化によって形成される角度を計算する1つの方法を説明します。さらに、この新しい特徴量の設計に追加の労力と時間を投資する価値があるかどうかについてもお答えします。M1でUSDZARペアを予測する際に、価格の傾斜によってAIモデルの精度が向上するかどうかを調査します。
ボラティリティベースのブレイクアウトシステムの開発
ボラティリティベースのブレイクアウトシステムは、市場のレンジを特定したうえで、ATRなどのボラティリティ指標によるフィルタを通過した場合に、価格がそのレンジを上方または下方へブレイクしたタイミングでエントリーする手法です。このアプローチにより、強い方向性を伴う値動きを捉えやすくなります。
MQL5経済指標カレンダーを使った取引(第7回):リソースベースのニュースイベント分析による戦略テストの準備
この記事では、MQL5の取引システムをストラテジーテスターでの検証に対応するため、経済指標カレンダーのデータをリソースとして埋め込み、ライブ環境ではないテスト分析に活用する方法を解説します。イベントの読み込みと、時間・通貨・影響度に基づくフィルタリングを実装し、最終的にストラテジーテスター内でその動作を検証します。これにより、ニュースに基づいた戦略の効果的なバックテストが可能になります。
MQL5入門(第26回):サポートおよびレジスタンスゾーンを使ったEAの構築
本記事では、サポートおよびレジスタンスゾーンを自動的に検出し、それに基づいて取引を実行するMQL5エキスパートアドバイザー(EA)の作成方法を学びます。EAにこれらの重要な価格レベルを認識させ、価格の反応を監視し、手動操作なしで取引判断をおこなう方法を理解することができます。
リプレイシステムの開発(第30回):エキスパートアドバイザープロジェクト - C_Mouseクラス(IV)
今日は、プログラマーとしての職業生活のさまざまな段階で非常に役立つテクニックを学びます。多くの場合、制限されているのはプラットフォーム自体ではなく、制限について話す人の知識です。この記事では、常識と創造性があれば、クレイジーなプログラムなどを作成することなく、MetaTrader 5 プラットフォームをより面白くて多用途にし、シンプルでありながら安全で信頼性の高いコードを作成できることを説明します。創造力を駆使して、ソース コードを1行も削除したり追加したりすることなく、既存のコードを変更します。
データサイエンスとML(第35回):MQL5でのNumPy活用術 - 少ないコードで複雑なアルゴリズムを構築する技法
NumPyライブラリは、Pythonプログラミング言語においてほぼすべての機械学習アルゴリズムの中核を支えています。本記事では、高度なモデルやアルゴリズムの構築を支援するために、複雑なコードをまとめたモジュールを実装していきます。
MQL5での取引戦略の自動化(第43回):適応型線形回帰チャネル戦略
本記事では、ユーザー定義期間にわたって回帰直線と標準偏差チャネルを自動的に計算し、明確なトレンドを確認するために傾きが最小閾値を超えた場合にのみ有効化され、さらに価格がチャネル幅の設定可能な割合を超えてブレイクアウトした際にチャネルを動的に再生成または延長する、適応型リニア回帰チャネルシステムをMQL5で実装します。
知っておくべきMQL5ウィザードのテクニック(第29回):MLPの学習率についての続き
エキスパートアドバイザー(EA)のパフォーマンスに対する学習率の感度を、主に適応学習率を調べることでまとめます。これらの学習率は、訓練の過程で層の各パラメータごとにカスタマイズすることを目的としており、潜在的な利点と期待されるパフォーマンスの差を評価します。
初心者からエキスパートへ:隠れフィボナッチリトレースメントレベルの謎を解く
本記事では、市場が反応する可能性のある非標準的なフィボナッチリトレースメントレベルを、データ駆動型の手法で発見および検証するアプローチを紹介します。MQL5での実装を想定した完全なワークフローを提示し、データ収集やバーやスイングの検出から始め、クラスタリング、統計的仮説検定、バックテスト、さらにMetaTrader 5のフィボナッチツールへの統合までを包括的にカバーします。ここでの目的は、経験的な観察に基づく推測を、統計的に裏付けられた売買シグナルへと変換する再現可能なパイプラインを構築することです。
MQL5でSHA-256暗号化アルゴリズムをゼロから実装する
これまで、DLLを使用せずに暗号通貨取引所との統合を構築することは長らく課題とされてきました。しかし、本ソリューションは、市場へ直接接続するための包括的なフレームワークを提供します。
MQL5取引ツール(第7回):複数銘柄ポジションと口座監視のための情報ダッシュボード
本記事では、MQL5で情報ダッシュボードを開発し、複数銘柄のポジションや口座指標(残高、証拠金、余剰証拠金など)を監視できるようにします。リアルタイム更新可能なソート可能グリッド、CSVエクスポート機能、ヘッダーのグロー効果を実装し、使いやすさと視覚的魅力を向上させます。
MQL5入門(第22回):5-0ハーモニックパターンを用いたエキスパートアドバイザーの構築
本記事では、MQL5において5-0ハーモニックパターンを検出して取引する方法、その妥当性をフィボナッチ比率で検証する方法、そしてチャート上に表示する方法について解説します。
リプレイシステムの開発(第29回):エキスパートアドバイザープロジェクト - C_Mouseクラス(III)
C_Mouseクラスを改良した後は、分析のためのまったく新しいフレームワークを作るためのクラスを作ることに集中しましょう。この新しいクラスを作るのに、継承やポリモーフィズムは使用しません。その代わりに、価格線に新しいオブジェクトを追加します。それがこの記事でやろうとしていることです。次回は、分析結果を変更する方法について見るつもりです。これらはすべて、C_Mouseクラスのコードを変更することなくおこなわれます。実際には、継承やポリモーフィズムを使用すれば、もっと簡単に実現できるでしょう。しかし、同じ結果を得る方法は他にもあります。
プライスアクション分析ツールキットの開発(第33回):Candle Range Theory Tool
MetaTrader 5向けのCandle-Range Theoryスイートで、市場の読みをアップグレードできます。これは完全にMQL5ネイティブなソリューションで、ローソク足をリアルタイムのボラティリティ情報に変換します。軽量なCRangePatternライブラリは、各ローソク足の真の値幅を適応型ATRと比較し、確定直後に分類します。CRTインジケーターは、その分類結果をチャート上に鮮明な色分けされた矩形や矢印として表示し、収束の進行、急騰・急落、全レンジ包み込みを瞬時に可視化します。
ニューラルネットワークが簡単に(第51回):Behavior-Guided Actor-Critic (BAC)
最後の2つの記事では、エントロピー正則化を報酬関数に組み込んだSoft Actor-Criticアルゴリズムについて検討しました。このアプローチは環境探索とモデル活用のバランスをとりますが、適用できるのは確率モデルのみです。今回の記事では、確率モデルと確定モデルの両方に適用できる代替アプローチを提案します。
知っておくべきMQL5ウィザードのテクニック(第43回):SARSAによる強化学習
SARSAは、State-Action-Reward-State-Actionの略で、強化学習を実装する際に使用できる別のアルゴリズムです。Q学習とDQNで見たように、ウィザードで組み立てられたエキスパートアドバイザー(EA)の中で、これを単なる訓練メカニズムとしてではなく、独立したモデルとしてどのように実装できるかを検討します。
MQL5経済指標カレンダーを使った取引(第6回):ニュースイベント分析とカウントダウンタイマーによるトレードエントリーの自動化
本記事では、MQL5経済指標カレンダーを活用して、ユーザー定義のフィルターと時間オフセットに基づいた自動取引エントリーを実装します。対象となる経済指標イベントを検出し、予想値と前回値の比較により、買うか売るかの判断を下します。動的なカウントダウンタイマーは、ニュース公開までの残り時間を表示し、取引後には自動的にリセットされます。
MQL5-Telegram統合エキスパートアドバイザーの作成(第6回):レスポンシブなインラインボタンの追加
この記事では、インタラクティブなインラインボタンをMQL5エキスパートアドバイザー(EA)に統合し、Telegram経由でリアルタイムにコントロールできるようにします。各ボタンを押すたびに特定のアクションがトリガーされ、ユーザーにレスポンスが返されます。また、Telegramメッセージやコールバッククエリを効率的に処理するための関数もモジュール化します。
取引におけるニューラルネットワーク:ウェーブレット変換とマルチタスクアテンションを用いたモデル
ウェーブレット変換とマルチタスク自己アテンション(Self-Attention)モデルを組み合わせたフレームワークを紹介します。本フレームワークは、ボラティリティの高い市場環境における予測の応答性および精度の向上を目的としています。ウェーブレット変換により、資産収益率を高周波成分と低周波成分に分解し、長期的な市場トレンドと短期的な変動の双方を的確に捉えることが可能となります。
MQL5経済指標カレンダーを使った取引(第8回):ニュース駆動型バックテストの最適化 - スマートなイベントフィルタリングと選択的ログ
本記事では、スマートなイベントフィルタリングと選択的ログ出力を用いて経済カレンダーを最適化し、ライブおよびオフラインモードでのバックテストをより高速かつ明確に実施できるようにします。イベント処理を効率化し、ログを重要な取引やダッシュボードイベントに絞ることで、戦略の可視化を向上させます。これらの改善により、ニュース駆動型取引戦略のテストと改善をシームレスにおこなえるようになります。
知っておくべきMQL5ウィザードのテクニック(第22回):条件付きGAN
敵対的生成ネットワーク(GAN: Generative Adversarial Network)は、より正確な結果を得るために、互いに訓練し合うニューラルネットワークのペアです。ExpertSignalクラスにおける金融時系列の予測への応用の可能性を考慮し、これらのネットワークの条件型を採用します。
取引におけるニューラルネットワーク:階層型ダブルタワーTransformer (Hidformer)
階層型ダブルタワーTransformer (Hidformer: Hierarchical Double-Tower Transformer)フレームワークについて紹介します。このフレームワークは時系列予測およびデータ分析向けに開発されました。Hidformerの開発者は、Transformerアーキテクチャに対して複数の改良を提案しており、その結果、予測精度の向上と計算リソースの削減を実現しています。
取引におけるニューラルネットワーク:時空間ニューラルネットワーク(STNN)
この記事では、時空間変換を活用し、今後の価格変動を効果的に予測する手法について解説します。STNNの数値予測精度を向上させるために、データの重要な側面をより適切に考慮できる連続アテンションメカニズムが提案されています。
知っておくべきMQL5ウィザードのテクニック(第54回):SACとテンソルのハイブリッドによる強化学習
Soft Actor Critic (SAC)は、以前の記事で紹介した強化学習アルゴリズムです。その際には、効率的にネットワークを学習させる手法としてPythonやONNXの活用についても触れました。今回は、このアルゴリズムを改めて取り上げ、Pythonでよく使われるテンソルや計算グラフを活用することを目的としています。