母集団最適化アルゴリズム:人工多社会的検索オブジェクト(MSO)
前回に引き続き、社会的集団について考えてみたいと思います。この記事では、移動と記憶のアルゴリズムを用いて社会集団の進化を探求しています。その結果は、社会システムの進化を理解し、最適化や解の探索に応用するのに役立つでしょう。
MQL5で取引管理者パネルを作成する(第6回):多機能インターフェイス(I)
取引管理者の役割はTelegram通信だけにとどまらず、注文管理、ポジション追跡、インターフェイスのカスタマイズなど、さまざまな制御アクティビティにも携わります。この記事では、MQL5の複数の機能をサポートするためにプログラムを拡張するための実用的な洞察を共有します。このアップデートは、主にコミュニケーションに重点を置くという現在のAdminパネルの制限を克服し、より幅広いタスクを処理できるようにすることを目的としています。
MetaTrader 5用のMQTTクライアントの開発:TDDアプローチ(第3部)
この記事は、MQTTプロトコルのネイティブMQL5クライアントの開発手順を説明する連載の第3部です。今回は、CONNECT/CONNACKパケット交換の操作時の動作部分を実装するために、テスト駆動開発をどのように使用しているかについて詳しく説明します。この手順の最後に、クライアントは、接続の試みから生じる可能性のあるサーバー結果のどれに対しても、絶対的に、適切に振る舞うことができなければなりません。
Python-MetaTrader 5ストラテジーテスター(第4回):テスター入門
シミュレーター上で初めての自動売買ロボットを構築し、MetaTrader 5のストラテジーテスター風にストラテジーテスト処理を実行します。その上で、カスタムシミュレーションで生成された結果を、普段使用しているターミナルの結果と比較します。
MetaTrader 5用のMQTTクライアントの開発:TDDアプローチ(第6回)
この記事は、MQTT 5.0プロトコル用のネイティブMQL5クライアントの開発ステップを説明する連載の第6部です。今回は、私たちの最初のリファクタリングにおける主な変更点、私たちがどのようにしてパケット構築クラスのための実行可能な設計図にたどり着いたか、どのようにPUBLISHとPUBACKパケットを構築しているか、そしてPUBACK Reason Codeの背後にあるセマンティクスについてコメントします。
最適化アルゴリズムの効率における乱数生成器の品質の役割
この記事では、メルセンヌ・ツイスタ乱数生成器を取り上げ、MQL5の標準的な乱数生成器と比較します。また、乱数生成器の品質が最適化アルゴリズムの結果に与える影響についても調べます。
タブーサーチ(TS)
この記事では、最初期かつ最も広く知られているメタヒューリスティック手法の一つであるタブーサーチアルゴリズムについて解説します。初期解の選択や近傍解の探索から始め、特にタブーリストの活用に焦点を当てながら、アルゴリズムの動作を詳しく見ていきます。本記事では、タブーサーチの主要な特徴と要素について取り上げます。
MQL5で他の言語の実用的なモジュールを実装する(第1回):Pythonにヒントを得たSQLite3ライブラリの構築
Pythonのsqlite3モジュールは、SQLiteデータベースを扱うためのシンプルで高速かつ便利な方法を提供しています。本記事では、MQL5に組み込まれているデータベース操作用の関数群を活用し、Pythonのsqlite3モジュールと同様の操作感でSQLite3データベースを扱える独自モジュールを構築します。
長期取引の最適化:包み足と流動性戦略
高時間足(W1、D1、MN)に基づいて長期的な分析と取引判断をおこなうEAです。このEAは、短期的な値動きに翻弄されることなく、利確目標に到達するまで自分のトレンドの方向性(バイアス)を頻繁に変えずにポジションを保持できる、忍耐強い長期トレーダー向けに設計されています。
MQL5からDiscordへのメッセージの送信、Discord-MetaTrader 5ボットの作成
Telegramと同様に、Discordもその通信APIを使用してJSON形式の情報やメッセージを受信することができます。本記事では、MetaTrader5からDiscordの取引コミュニティに取引シグナルやアップデートを送信するためにDiscord APIをどのように利用できるかを探っていきます。
トレンド強度の最適化:方向と強さに沿った取引戦略
短期および長期の分析を組み合わせ、全体的なトレンドとその強さに基づいて取引判断および執行をおこなう、トレンドフォロー型のエキスパートアドバイザー(EA)です。本記事では、忍耐力と規律を備え、集中力を維持しながら、トレンドの強さと方向に一致する場合にのみ取引を実行し、特にトレンドに逆らう取引や頻繁なバイアス変更を避け、テイクプロフィットに到達するまでポジションを保持できるトレーダー向けに設計されたEAについて詳しく解説します。
MQL5での暗号化の探索:ステップごとのアプローチ
この記事では、MQL5内での暗号化の統合について探り、取引アルゴリズムのセキュリティと機能を強化する方法を紹介します。主要な暗号化手法と、それらを自動取引に実際に実装する方法について説明します。
MQL5で取引管理者パネルを作成する(第10回):外部リソースベースのインターフェイス
本日は、MQL5の機能を活用して、BMP形式の画像などの外部リソースを利用し、トレーディング管理パネル用に独自のスタイルを持ったホームインターフェイスを作成します。ここで紹介する手法は、画像やサウンドなど複数のリソースを一括でパッケージ化して配布する際に特に有効です。このディスカッションでは、こうした機能をどのように実装し、New_Admin_Panel EAにおいてモダンで視覚的に魅力的なインターフェイスを提供するかを一緒に見ていきましょう。
人工蜂の巣アルゴリズム(ABHA):理論と方法
この記事では、2009年に開発された人工蜂の巣アルゴリズム(ABHA)について説明します。このアルゴリズムは、連続的な最適化問題を解決することを目的としています。この記事では、蜂がそれぞれの役割を担って効率的に資源を見つける蜂のコロニーの行動から、ABHAがどのようにインスピレーションを得ているかを探ります。
MQL5-Telegram統合エキスパートアドバイザーの作成(第6回):レスポンシブなインラインボタンの追加
この記事では、インタラクティブなインラインボタンをMQL5エキスパートアドバイザー(EA)に統合し、Telegram経由でリアルタイムにコントロールできるようにします。各ボタンを押すたびに特定のアクションがトリガーされ、ユーザーにレスポンスが返されます。また、Telegramメッセージやコールバッククエリを効率的に処理するための関数もモジュール化します。
知っておくべきMQL5ウィザードのテクニック(第60回):移動平均とストキャスティクスパターンを用いた推論(ワッサースタインVAE)
MA(移動平均)とストキャスティクスの補完的な組み合わせに着目し、教師あり学習および強化学習を経た後の段階において、推論が果たしうる役割を検証します。推論にはさまざまなアプローチが存在しますが、この記事では変分オートエンコーダ(VAE: Variational Auto-Encoder)を用いる方法を採用します。まずはPythonでこのアプローチを探求し、その後、訓練済みモデルをONNX形式でエクスポートし、MetaTraderのウィザードで構築したエキスパートアドバイザー(EA)で活用します。
算術最適化アルゴリズム(AOA):AOAからSOA(シンプル最適化アルゴリズム)へ
本稿では、加算、減算、乗算、除算といった単純な算術演算に基づく算術最適化アルゴリズム(AOA: Arithmetic Optimization Algorithm)を紹介します。これらの基本的な数学的操作が、さまざまな問題の最適解を見つけるための基盤となります。
知っておくべきMQL5ウィザードのテクニック(第59回):移動平均とストキャスティクスのパターンを用いた強化学習(DDPG)
MAとストキャスティクスを使用したDDPGに関する前回の記事に引き続き、今回は、DDPGの実装に欠かせない他の重要な強化学習クラスを検証していきます。主にPythonでコーディングしていますが、最終的には訓練済みネットワークをONNX形式でエクスポートし、MQL5に組み込んでウィザードで構築したエキスパートアドバイザー(EA)のリソースとして統合します。
初心者からエキスパートへ:MQL5を使用したバックエンド操作モニター
取引システムの内部動作を意識せずに、既製のソリューションをそのまま利用することは一見すると安心に思えますが、開発者にとっては必ずしもそうとは限りません。いずれアップデートや動作不良、あるいは予期しないエラーが発生し、その原因がどこにあるのかを正確に突き止め、迅速に診断して解決する必要に迫られます。本記事では、取引用エキスパートアドバイザー(EA)の裏側で通常どのような操作がおこなわれているのかを明らかにするとともに、MQL5を用いてバックエンド操作を表示し、記録するための専用カスタムクラスを開発します。これにより、開発者およびトレーダーの双方が、エラーの特定、挙動の監視、EAごとの診断情報に迅速にアクセスできるようになります。
知っておくべきMQL5ウィザードのテクニック(第22回):条件付きGAN
敵対的生成ネットワーク(GAN: Generative Adversarial Network)は、より正確な結果を得るために、互いに訓練し合うニューラルネットワークのペアです。ExpertSignalクラスにおける金融時系列の予測への応用の可能性を考慮し、これらのネットワークの条件型を採用します。
MQL5でSHA-256暗号化アルゴリズムをゼロから実装する
これまで、DLLを使用せずに暗号通貨取引所との統合を構築することは長らく課題とされてきました。しかし、本ソリューションは、市場へ直接接続するための包括的なフレームワークを提供します。
株式市場における非線形回帰モデル
株式市場における非線形回帰モデル:金融市場は予測できるのかEURUSDの価格を予測するモデルを作成し、それに基づいて2つのロボット(Python版とMQL5版)を作ることを考えてみましょう。
知っておくべきMQL5ウィザードのテクニック(第54回):SACとテンソルのハイブリッドによる強化学習
Soft Actor Critic (SAC)は、以前の記事で紹介した強化学習アルゴリズムです。その際には、効率的にネットワークを学習させる手法としてPythonやONNXの活用についても触れました。今回は、このアルゴリズムを改めて取り上げ、Pythonでよく使われるテンソルや計算グラフを活用することを目的としています。
多通貨エキスパートアドバイザーの開発(第27回):複数行テキスト表示コンポーネント
テキストをチャート上に表示する必要がある場合は、Comment()関数を使用できます。しかし、この関数の機能には多くの制限があります。そこで本記事では、独自コンポーネントとして、複数行テキストの表示、柔軟なフォント設定、さらに、画面全体を占めるスクロール機能対応ダイアログウィンドウを作成します。
集団型ADAM(適応モーメント推定法)
この記事では、よく知られていて人気のあるADAM勾配最適化手法を集団アルゴリズムに変換し、さらにハイブリッド個体を導入して修正した方法を紹介しています。この新しいアプローチでは、確率分布を使って成功した判断の要素を組み合わせたエージェントを作ることができます。大きな革新点は、有望な解からの情報を適応的に蓄積するハイブリッド集団個体を形成することであり、それによって複雑な多次元空間での探索効率が高まります。
知っておくべきMQL5ウィザードのテクニック(第55回):PER付きSAC
強化学習において、リプレイバッファは特にDQNやSACのようなオフポリシーアルゴリズムにおいて重要な役割を果たします。これにより、メモリバッファのサンプリング処理が注目されます。たとえばSACのデフォルト設定では、このバッファからランダムにサンプルを取得しますが、Prioritized Experience Replay (PER)を用いることで、TDスコア(時間差分誤差)に基づいてサンプリングを調整することができます。本稿では、強化学習の意義を改めて確認し、いつものように交差検証ではなく、この仮説だけを検証する、ウィザードで組み立てたエキスパートアドバイザー(EA)を用いて考察します。
知っておくべきMQL5ウィザードのテクニック(第58回):移動平均と確率的オシレーターパターンを用いた強化学習(DDPG)
移動平均とストキャスティクスはよく使われるインジケーターで、前回の記事ではこの2つの組み合わせパターンを教師あり学習ネットワークで分析して、どのパターンが使えそうかを確認しました。今回はそこから一歩進めて、訓練済みネットワークに強化学習を組み合わせたらパフォーマンスにどんな影響があるかを見ていきます。テスト期間はかなり短いので、その点は踏まえておいてください。とはいえ、今回もMQL5ウィザードのおかげで、コード量はかなり少なくて済んでいます。
MQL5 Algo Forgeへの移行(第2回):複数のリポジトリの操作
本稿では、プロジェクトのソースコードを公開リポジトリに保存する際の1つのアプローチについて検討します。コードを複数のブランチに分散させることで、プロジェクト開発における明確で便利なルールを確立していきます。
MQL5-Telegram統合エキスパートアドバイザーの作成(第3回):MQL5からTelegramにキャプション付きチャートのスクリーンショットを送信する
この記事では、チャートのスクリーンショットを画像データとしてエンコードし、HTTPリクエストを通じてTelegramチャットに送信するMQL5のエキスパートアドバイザー(EA)を作成します。この画像のエンコードと送信の統合によって、既存のMQL5-Telegramシステムが強化され、Telegram上で直接視覚的な取引洞察を提供できるようになります。
初心者からエキスパートへ:MQL5を使ったアニメーションニュース見出し(I)
MetaTrader 5ターミナルでの取引において、ニュースのアクセス性は非常に重要な要素です。数多くのニュースAPIが存在するものの、多くのトレーダーはそれらを効果的に取引環境に統合することに課題を抱えています。本記事では、ニュースを最も必要とする場所であるチャート上に直接表示する、効率的なソリューションの構築を目指します。その実現のために、APIソースからのリアルタイムニュースを監視し、表示するNews Headline EA(エキスパートアドバイザー)を作成します。
初心者からエキスパートへ:MQL5を使用したアニメーションニュースヘッドライン(VI) - ニュース取引のための指値注文戦略
本記事では、ニュースを表示するだけでなく実際に取引を実行できるよう、EA(エキスパートアドバイザー)の機能拡張に焦点を当てます。MQL5上で自動売買の実装方法を解説し、「News Headline EA」を完全に反応的な取引システムへと発展させていきます。EAは、その豊富な機能により、アルゴリズム開発者にとって非常に強力なツールです。これまでの記事では、ニュースおよび経済指標カレンダーイベントの可視化ツールを中心に開発し、AIインサイトレーンやテクニカル指標分析を統合してきました。
MQL5 Algo Forgeへの移行(第4回):バージョンとリリースの操作
SimpleCandlesプロジェクトおよびAdwizardプロジェクトの開発を継続しつつ、MQL5 Algo Forgeのバージョン管理システムおよびリポジトリのより詳細な活用方法についても説明していきます。
初心者からエキスパートへ:サプライ&デマンドゾーンの統計的検証
サプライ&デマンド取引戦略の背後にある、見落とされがちな統計的基盤を明らかにします。MQL5とPythonをJupyter Notebookワークフローで連携させることで、マーケットに対する視覚的な仮定を定量的な洞察へと変換する体系的なデータ駆動型リサーチをおこないます。本記事では、データ収集からPythonによる統計分析、アルゴリズム設計、テスト、最終的な結論に至るまで、一連の研究プロセスを解説します。手法と結果の詳細については、本文をご参照ください。
原子軌道探索(AOS)アルゴリズム:改良版
第2部では、AOS (Atomic Orbital Search)アルゴリズムの改良版の開発を続け、特定の演算子に注目して効率性と適応性の向上を図ります。アルゴリズムの基礎とメカニズムを分析した後、複雑な解探索空間を解析する能力を高めるための性能向上のアイデアについて議論し、最適化ツールとしての機能を拡張する新しいアプローチを提案します。
知っておくべきMQL5ウィザードのテクニック(第64回):ホワイトノイズカーネルでDeMarkerとEnvelope Channelsのパターンを活用する
DeMarkerオシレーターとEnvelopesインジケーターは、エキスパートアドバイザー(EA)を開発するときに組み合わせることができるモメンタムおよびサポート/レジスタンスツールです。前回の記事では、機械学習を加えて、これらのインジケーターのペアを紹介しました。ホワイトノイズカーネルを使用してこれら2つのインジケーターからのベクトル化されたシグナルを処理する回帰型ニューラルネットワークを使用しています。これは、MQL5ウィザードと連携してエキスパートアドバイザー(EA)を組み立てるカスタムシグナルクラスファイルで実行されます。
MQL5で取引管理者パネルを作成する(第2回):応答性と迅速なメッセージングの強化
この記事では、以前作成した管理パネルの応答性を強化します。さらに、取引シグナルの文脈におけるクイックメッセージングの重要性についても検討します。
知っておくべきMQL5ウィザードのテクニック(第81回): β-VAE推論学習で一目均衡表とADX-Wilderのパターンを利用する
本記事は第80回の続編です。前回は、強化学習フレームワーク下で一目均衡表とADXの組み合わせを検証しました。今回は焦点を推論学習に移します。一目均衡表とADXは前回も述べた通り補完的な指標ですが、今回は前回の記事で触れたパイプライン使用に関する結論を再検討します。推論学習には、変分オートエンコーダのβアルゴリズムを用います。また、MQL5ウィザードとの統合を目的として設計されたカスタムシグナルクラスの実装も継続します。
機械学習を用いたトレンド取引戦略の開発
この研究では、トレンドフォロー型取引戦略を開発するための新しい手法を提案します。このセクションでは、学習データのアノテーション方法と、それを用いて分類器を学習させるプロセスについて説明します。このプロセスにより、MetaTrader 5上で稼働可能な、完全に実用的な取引システムが構築されます。
人工藻類アルゴリズム(AAA)
本稿では、微細藻類に特徴的な生物学的プロセスに基づく人工藻類アルゴリズム(AAA)について考察します。このアルゴリズムには、螺旋運動、進化過程、適応過程が含まれており、最適化問題を解くことができます。この記事では、AAAが機能する原理と、数学的モデリングにおけるその可能性について詳しく分析し、自然とアルゴリズムによる解とのつながりを強調しています。