MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
取引所価格のバイナリコードの分析(第2回):BIP39への変換とGPTモデルの記述

取引所価格のバイナリコードの分析(第2回):BIP39への変換とGPTモデルの記述

価格の動きを解読し続けます。では、バイナリ価格コードをBIP39に変換して得られる「市場辞典」の言語分析はどうでしょうか。本記事では、データ分析における革新的なアプローチを掘り下げ、現代の自然言語処理技術が市場言語にどのように応用できるかを考察します。
preview
時間進化移動アルゴリズム(TETA)

時間進化移動アルゴリズム(TETA)

これは私自身のアルゴリズムです。本記事では、並行宇宙や時間の流れの概念に着想を得た「時間進化移動アルゴリズム(TETA: Time Evolution Travel Algorithm)」を紹介します。本アルゴリズムの基本的な考え方は、従来の意味でのタイムトラベルは不可能であるものの、異なる現実に至る一連の出来事の順序を選択することができるという点にあります。
preview
強化学習と弱者淘汰を組み合わせた進化型取引アルゴリズム(ETARE)

強化学習と弱者淘汰を組み合わせた進化型取引アルゴリズム(ETARE)

この記事では、進化アルゴリズムと深層強化学習を組み合わせた、外国為替取引のための革新的な取引アルゴリズムを紹介します。このアルゴリズムは、非効率な個体を絶滅させるメカニズムを使用して取引戦略を最適化します。
preview
事後取引分析:ストラテジーテスターにおけるトレーリングストップと新しいストップレベルの選択

事後取引分析:ストラテジーテスターにおけるトレーリングストップと新しいストップレベルの選択

取引の質をさらに高めるため、今回はストラテジーテスターで完了済みの取引を分析するテーマを引き続き取り上げます。異なる種類のトレーリングストップを使用すると、既存の取引結果がどのように変化するかを見ていきましょう。
preview
初級から中級まで:テンプレートとtypename(IV)

初級から中級まで:テンプレートとtypename(IV)

本記事では、前回の記事の最後で提示した問題の解決方法について詳しく解説します。そのために、データunionのテンプレートを作成できるタイプのテンプレートを設計しようという試みがおこなわれました。
preview
Pythonの価格変動離散化手法

Pythonの価格変動離散化手法

Python + MQL5を使用した価格離散化手法を見ていきます。本記事では、バー生成に関する幅広い手法を実装したPythonライブラリの開発経験についご紹介します。クラシックなボリュームバーやレンジバーから、よりエキゾチックな練行足やカギ足といった手法までを網羅します。スリーラインブレイクローソク足やレンジバーの統計分析をおこないながら、価格を離散的に表現する新たな方法を探っていきます。
preview
MetaTrader 5での取引の視覚的な評価と調整

MetaTrader 5での取引の視覚的な評価と調整

ストラテジーテスターは、単に自動売買ロボットのパラメータを最適化するだけでなく、さらに幅広い活用が可能です。本記事では、口座の取引履歴を事後に評価し、ストラテジーテスター上でポジションのストップロスを変更することで取引の調整をおこなう方法を紹介します。
preview
循環単為生殖アルゴリズム(CPA)

循環単為生殖アルゴリズム(CPA)

本記事では、新しい集団最適化アルゴリズムである循環単為生殖アルゴリズム(CPA: Cyclic Parthenogenesis Algorithm)を取り上げます。本アルゴリズムは、アブラムシ特有の繁殖戦略に着想を得ています。CPAは、単為生殖と有性生殖という2つの繁殖メカニズムを組み合わせるほか、個体群のコロニー構造を活用し、コロニー間の移動も可能にしています。このアルゴリズムの主要な特徴は、異なる繁殖戦略間の適応的な切り替えと、飛行メカニズムを通じたコロニー間の情報交換システムです。
preview
初級から中級まで:テンプレートとtypename(III)

初級から中級まで:テンプレートとtypename(III)

本記事では、トピックの第一部について解説します。この内容は初心者にとって理解がやや難しい部分があります。さらなる混乱を避けて正しく理解していただくために、説明を段階的に分けて進めます。本記事ではその第一段階に焦点を当てます。ただし、記事の最後では行き詰まりに見えるかもしれませんが、実際には次の記事でより理解しやすくなる状況への一歩を踏み出す形になります。
preview
アルゴリズム取引におけるニューロシンボリックシステム:シンボリックルールとニューラルネットワークを組み合わせる

アルゴリズム取引におけるニューロシンボリックシステム:シンボリックルールとニューラルネットワークを組み合わせる

本記事では、古典的なテクニカル分析とニューラルネットワークを組み合わせたハイブリッド型取引システムの開発経験について解説します。システムのアーキテクチャを、基本的なパターン分析やニューラルネットワーク構造から、実際の売買判断に至るメカニズムまで詳細に分析し、実際のコードや実務的な知見も共有します。
preview
学習中にニューロンを活性化する関数:高速収束の鍵は?

学習中にニューロンを活性化する関数:高速収束の鍵は?

本記事では、ニューラルネットワークの学習における異なる活性化関数と最適化アルゴリズムの相互作用に関する研究を紹介します。特に、古典的なADAMとその集団版であるADAMmを比較し、振動するACONやSnake関数を含む幅広い活性化関数での動作を検証します。最小構成のMLPアーキテクチャ(1-1-1)と単一の学習例を用いることで、活性化関数が最適化に与える影響を他の要因から切り離して観察します。本記事では、活性化関数の境界を利用したネットワーク重みの管理と重み反射機構を提案し、学習における飽和や停滞の問題を回避できることを示します。
preview
量子コンピューティングと取引:価格予測への新たなアプローチ

量子コンピューティングと取引:価格予測への新たなアプローチ

本記事では、量子コンピューティングを用いて金融市場における価格変動を予測するための革新的なアプローチについて説明します。主な焦点は、量子位相推定(QPE: Quantum Phase Estimation)アルゴリズムを適用して価格パターンのプロトタイプを見つけることであり、これによりトレーダーは市場データの分析を大幅に高速化できるようになります。
preview
取引所価格のバイナリコードの分析(第1回):テクニカル分析の新たな視点

取引所価格のバイナリコードの分析(第1回):テクニカル分析の新たな視点

本記事では、価格変動をバイナリコードに変換するという新しい視点からテクニカル分析にアプローチします。筆者は、シンプルな値動きから複雑な市場パターンに至るまで、あらゆる市場行動を「0」と「1」のシーケンスとして符号化できることを示します。
preview
市場シミュレーション(第3回):パフォーマンスの問題

市場シミュレーション(第3回):パフォーマンスの問題

時には一歩下がってから前進する必要があります。本記事では、マウスインジケーターおよびChart Tradeインジケーターが正常に動作するようにするために必要なすべての変更についてご紹介します。さらにおまけとして、今後広く使用される他のヘッダーファイルにおける変更についても触れます。
preview
取引におけるニューラルネットワーク:層状メモリを持つエージェント

取引におけるニューラルネットワーク:層状メモリを持つエージェント

層状メモリアプローチは、人間の認知プロセスを模倣することで、複雑な金融データの処理や新しいシグナルへの適応を可能にし、動的な市場における投資判断の有効性を向上させます。
preview
取引におけるニューラルネットワーク:ウェーブレット変換とマルチタスクアテンションを用いたモデル(最終回)

取引におけるニューラルネットワーク:ウェーブレット変換とマルチタスクアテンションを用いたモデル(最終回)

前回の記事では、Multitask-Stockformerフレームワークを検討しました。このフレームワークは、ウェーブレット変換とマルチタスク自己アテンション(Self-Attention)モデルを組み合わせたものです。本記事では、このフレームワークのアルゴリズムをさらに実装し、実際の過去データを用いてその有効性を評価していきます。
preview
プライスアクション分析ツールキットの開発(第32回):Python Candlestick Recognitionエンジン(II) - Ta-Libを用いた検出

プライスアクション分析ツールキットの開発(第32回):Python Candlestick Recognitionエンジン(II) - Ta-Libを用いた検出

本記事では、Pythonでローソク足パターンを手動で検出していた前回の方法から一歩進み、TA-Libを活用した自動検出手法へと移行します。TA-Libは、60種類以上の異なるローソク足パターンを認識できる強力なテクニカル分析ライブラリです。これらのパターンは、市場の反転やトレンド継続の可能性を読み取る上で有用なインサイトを提供します。ぜひ最後までお読みください。
preview
取引における多項式モデル

取引における多項式モデル

本記事では、直交多項式について説明します。直交多項式を活用することで、より正確で効果的な市場分析が可能になり、トレーダーはより多くの情報に基づいた意思決定をおこなうことができるようになります。
preview
ビッグバンビッグクランチ(BBBC)アルゴリズム

ビッグバンビッグクランチ(BBBC)アルゴリズム

本記事では、ビッグバンビッグクランチ(BBBC)法について紹介します。本手法は2つの主要な段階から構成されます。すなわち、ランダムな点を周期的に生成する段階と、それらを最適解へ圧縮する段階です。本アプローチは探索と精緻化を組み合わせることで、段階的により良好な解を導出し、新たな最適化の可能性を開くことが可能です。
preview
3Dバーによるトレンド強度・方向指標

3Dバーによるトレンド強度・方向指標

市場マイクロストラクチャの3次元可視化とテンソル分析に基づく、新しい市場トレンド分析のアプローチを検討します。
preview
取引におけるニューラルネットワーク:ウェーブレット変換とマルチタスクアテンションを用いたモデル

取引におけるニューラルネットワーク:ウェーブレット変換とマルチタスクアテンションを用いたモデル

ウェーブレット変換とマルチタスク自己アテンション(Self-Attention)モデルを組み合わせたフレームワークを紹介します。本フレームワークは、ボラティリティの高い市場環境における予測の応答性および精度の向上を目的としています。ウェーブレット変換により、資産収益率を高周波成分と低周波成分に分解し、長期的な市場トレンドと短期的な変動の双方を的確に捉えることが可能となります。
preview
市場シミュレーション(第2回):両建て注文(II)

市場シミュレーション(第2回):両建て注文(II)

前回の記事とは異なり、今回はエキスパートアドバイザー(EA)を用いて選択オプションをテストしてみます。最終的な解決策ではありませんが、現時点では十分な内容となっています。本記事を通じて、1つの実現可能な解決方法の実装手順を理解できます。
preview
取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(最終回)

取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(最終回)

予測符号化と強化学習アルゴリズムを組み合わせた金融時系列分析用のハイブリッド取引システム「StockFormer」の検討を引き続きおこないます。本システムは、複雑なパターンや資産間の相互依存関係を捉えることを可能にするDiversified Multi-Head Attention (DMH-Attn)機構を備えた、3つのTransformerブランチに基づいています。前回は、フレームワークの理論的な側面に触れ、DMH-Attn機構を実装しました。今回は、モデルのアーキテクチャと学習について解説します。
preview
ブラックホールアルゴリズム(BHA)

ブラックホールアルゴリズム(BHA)

ブラックホールアルゴリズム(BHA)は、ブラックホールの重力原理に着想を得た最適化アルゴリズムです。本記事では、BHAがどのようにして優れた解を引き寄せ、局所最適解への陥り込みを回避するのか、そしてなぜこのアルゴリズムが複雑な問題を解くための強力なツールとなっているのかを解説します。シンプルな発想がいかにして最適化の世界で大きな成果を生み出すのかを見ていきましょう。
preview
PythonとMQL5で構築するマルチモジュール型取引ロボット(第1回):基本アーキテクチャと最初のモジュールの作成

PythonとMQL5で構築するマルチモジュール型取引ロボット(第1回):基本アーキテクチャと最初のモジュールの作成

Pythonによるデータ分析とMQL5による取引執行を組み合わせたモジュール型の取引システムを開発します。このシステムは、4つの独立したモジュールによって市場の異なる側面(ボリューム、アービトラージ、経済、リスク)を並行して監視します。ランダムフォレストを400本の決定木で構成したモデルを用いて市場データを分析します。特に本システムでは、リスク管理に重点を置いています。どれほど高度なアルゴリズムであっても、適切なリスク管理がなければ意味がありません。
preview
取引におけるトレンド基準

取引におけるトレンド基準

トレンドは多くの取引戦略において重要な要素です。本記事では、トレンドを識別するために使用されるいくつかのツールとその特性にを見ていきます。トレンドを理解し正しく解釈することは、取引効率を大幅に高め、リスクを最小限に抑えることにつながります。
preview
人工部族アルゴリズム(ATA)

人工部族アルゴリズム(ATA)

本記事では、状況に応じて適応的に動作する独自の二重行動システムを備えた進化的手法、人工部族アルゴリズム(ATA: Artificial Tribe Algorithm)の主要要素と革新点について、詳細に説明します。ATAは、個体学習と社会的学習を組み合わせ、探索には交叉を用い、局所最適に陥った際には移動によって新たな解を探索するためのアルゴリズムです。
preview
市場シミュレーション(第1回):両建て注文(I)

市場シミュレーション(第1回):両建て注文(I)

本日から第2段階に入り、市場リプレイ/シミュレーションシステムについて見ていきます。まず、両建て注文の可能な解決策を示します。これは最終版ではありませんが、近い将来に解決しなければならない問題に対するひとつの可能なアプローチとなります。
preview
取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(StockFormer)

取引におけるニューラルネットワーク:予測符号化を備えたハイブリッド取引フレームワーク(StockFormer)

本記事では、予測符号化と強化学習(RL)アルゴリズムを組み合わせたハイブリッド取引システム「StockFormer」について解説します。本フレームワークは、統合型のDiversified Multi-Head Attention (DMH-Attn)機構を備えた3つのTransformerブランチを使用しています。DMH-Attnは、従来のAttentionモジュールを改良したもので、マルチヘッドのFeed-Forwardブロックを組み込むことにより、異なるサブスペースにわたる多様な時系列パターンを捉えることが可能です。
preview
取引におけるニューラルネットワーク:Attentionメカニズムを備えたエージェントのアンサンブル(最終回)

取引におけるニューラルネットワーク:Attentionメカニズムを備えたエージェントのアンサンブル(最終回)

前回の記事では、複数のエージェントによるアンサンブルを用いて、異なるデータスケールのマルチモーダル時系列をクロス分析するマルチエージェント適応型フレームワーク「MASAAT」を紹介しました。今回は、このフレームワークのアプローチをMQL5で引き続き実装し、この研究を論理的な結論へと導きます。
preview
高度なICT取引システムの開発:オーダーブロックインジケーターでのシグナルの実装

高度なICT取引システムの開発:オーダーブロックインジケーターでのシグナルの実装

この記事では、板情報(オーダーブックの数量)に基づいてオーダーブロックインジケーターを開発し、バッファを使用して最適化し、精度を向上させる方法を学習します。これにより、プロジェクトの現段階が終了し、リスク管理クラスとインジケーターによって生成されたシグナルを使用する取引ボットの実装を含む次の段階の準備が整います。
preview
リプレイシステムの開発(第78回):新しいChart Trade(V)

リプレイシステムの開発(第78回):新しいChart Trade(V)

本記事では、受信側コードの一部の実装方法について解説します。ここでは、プロトコルの相互作用をテストし理解するためのエキスパートアドバイザー(EA)を実装します。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
preview
取引におけるニューラルネットワーク:Attentionメカニズムを備えたエージェントのアンサンブル(MASAAT)

取引におけるニューラルネットワーク:Attentionメカニズムを備えたエージェントのアンサンブル(MASAAT)

アテンション機構と時系列解析を組み合わせたマルチエージェント自己適応型ポートフォリオ最適化フレームワーク(MASAAT: Multi-Agent Self-Adaptive Portfolio Optimization Framework)を提案します。MASAATは、価格系列や方向性の変化を分析する複数のエージェントを生成し、異なる詳細レベルで資産価格の重要な変動を特定できるように設計されています。
preview
取引におけるニューラルネットワーク:マルチエージェント自己適応モデル(最終回)

取引におけるニューラルネットワーク:マルチエージェント自己適応モデル(最終回)

前回の記事では、強化学習アプローチと自己適応戦略を組み合わせ、市場の変動下でも、収益性とリスクの両立を図ることができるマルチエージェント自己適応(MASA: Multi Agent Self Adaptive)フレームワークを紹介しました。MASAフレームワークにおける各エージェントの機能も構築済みです。本記事では、前回の内容をさらに発展させ、その論理的な結論へと到達します。
preview
リプレイシステムの開発(第77回):新しいChart Trade (IV)

リプレイシステムの開発(第77回):新しいChart Trade (IV)

この記事では、通信プロトコルを作成する際に考慮すべきいくつかの対策や注意点について説明します。内容は比較的シンプルでわかりやすいものなので、詳細には触れません。しかし、この記事の内容を理解することで、今後の展開が把握しやすくなります。
preview
初級から中級まで:定義(II)

初級から中級まで:定義(II)

本記事では、前回に引き続き#defineディレクティブについて理解を深めていきますが、今回はその第2の使用形態、すなわちマクロの作成に焦点を当てます。このテーマはやや複雑であるため、これまで学習を進めてきたアプリケーションを題材として取り上げながら説明していきます。この記事も楽しんでいただけたら幸いです。
preview
取引におけるニューラルネットワーク:マルチエージェント自己適応モデル(MASA)

取引におけるニューラルネットワーク:マルチエージェント自己適応モデル(MASA)

マルチエージェント自己適応(MASA: Multi-Agent Self-Adaptive)フレームワークについて紹介します。本フレームワークは、強化学習と適応戦略を組み合わせ、変動の激しい市場環境においても収益性とリスク管理のバランスを実現します。
preview
初心者からエキスパートへ:MQL5を使用したアニメーションニュースヘッドライン(VI) - ニュース取引のための指値注文戦略

初心者からエキスパートへ:MQL5を使用したアニメーションニュースヘッドライン(VI) - ニュース取引のための指値注文戦略

本記事では、ニュースを表示するだけでなく実際に取引を実行できるよう、EA(エキスパートアドバイザー)の機能拡張に焦点を当てます。MQL5上で自動売買の実装方法を解説し、「News Headline EA」を完全に反応的な取引システムへと発展させていきます。EAは、その豊富な機能により、アルゴリズム開発者にとって非常に強力なツールです。これまでの記事では、ニュースおよび経済指標カレンダーイベントの可視化ツールを中心に開発し、AIインサイトレーンやテクニカル指標分析を統合してきました。
preview
MQL5取引ツール(第5回):リアルタイム銘柄監視のためのローリングティッカーテープの作成

MQL5取引ツール(第5回):リアルタイム銘柄監視のためのローリングティッカーテープの作成

本記事では、MQL5を用いて複数の通貨ペアをリアルタイムで監視できるローリングティッカーテープを開発します。Bid価格(買値)、スプレッド、日次変化率をスクロール表示し、価格変動やトレンドを効果的に強調するために、フォント、色、スクロール速度をカスタマイズ可能にします。
preview
MQL5で自己最適化エキスパートアドバイザーを構築する(第9回):二重移動平均クロスオーバー

MQL5で自己最適化エキスパートアドバイザーを構築する(第9回):二重移動平均クロスオーバー

本記事では、二重移動平均クロスオーバー戦略の設計について説明します。この戦略では、上位時間足(例:日足、D1)のシグナルを参照して下位時間足(例:15分足、M15)でエントリーをおこない、ストップロスレベルは中間的リスク時間足(例:4時間足、H4)から算出します。システム定数やカスタム列挙型、トレンドフォローと平均回帰(ミーンリバージョン)モードに対応したロジックを導入し、モジュール化と将来的な遺伝的アルゴリズムによる最適化を重視しています。このアプローチにより、柔軟なエントリーとエグジットの条件を設定でき、下位時間足でのエントリーを高い時間足のトレンドに合わせることで、シグナルのラグを軽減し、取引タイミングを改善することを目指しています。