リプレイシステムの開発(第63回):サービスの再生(IV)
この記事では、1分足のティックシミュレーションに関する問題を最終的に解決し、実際のティックと共存できるようにします。これにより、将来的なトラブルを回避することが可能になります。ここで提示される資料は教育目的のみに使用されます。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを閲覧することは避けてください。
どんな市場でも優位性を得る方法(第3回):VISA消費指数
ビッグデータの世界では、取引戦略を向上させる可能性を秘めた数百万もの代替データセットが存在します。この連載では、最も有益な公共データセットを特定するお手伝いをします。
アーチェリーアルゴリズム(AA)
この記事では、アーチェリーに着想を得た最適化アルゴリズムについて詳しく検討し、有望な「矢」の着地点を選定するメカニズムとしてルーレット法の活用に焦点を当てます。この手法により、解の質を評価し、さらなる探索に最も有望な位置を選び出すことが可能になります。
従来の機械学習手法を使用した為替レートの予測:ロジットモデルとプロビットモデル
この記事では、為替レートの予測を目的とした取引用EAの構築を試みます。アルゴリズムは、ロジスティック回帰およびプロビット回帰といった古典的な分類モデルに基づいています。取引シグナルのフィルターとして、尤度比検定が用いられます。
MQL5で取引管理者パネルを作成する(第11回):最新機能通信インターフェース(I)
本日は、コミュニケーションパネルのメッセージングインターフェースを、現代の高性能なコミュニケーションアプリの標準に合わせて強化することに焦点を当てます。この改善は、CommunicationsDialogクラスの更新によって実現されます。この記事とディスカッションでは、主要な知見を紹介しつつ、MQL5を用いたインターフェースプログラミングの次のステップを整理していきます。
Candlestick Trend Constraintモデルの構築(第5回):通知システム(パート3)
本稿ではWhatsAppとMetaTrader 5を統合して通知する方法を紹介します。理解を容易にするためにフローチャートを掲載し、統合におけるセキュリティ対策の重要性について説明します。指標の主な目的は、自動化によって分析を簡素化することであり、特定の条件が満たされたときにユーザーに警告するための通知方法を含むべきです。詳しくは本稿で説明します。
アーチェリーアルゴリズム(AA)
この記事では、アーチェリーに着想を得た最適化アルゴリズムについて詳しく検討し、有望な「矢」の着地点を選定するメカニズムとしてルーレット法の活用に焦点を当てます。この手法により、解の質を評価し、さらなる探索に最も有望な位置を選び出すことが可能になります。
化学反応最適化(CRO)アルゴリズム(第1回):最適化におけるプロセス化学
この記事の最初の部分では、化学反応の世界に飛び込み、最適化への新しいアプローチを発見します。化学反応最適化(CRO)は、熱力学の法則から導き出された原理を使用して効率的な結果をもたらします。この革新的な方法の基礎となった分解、合成、その他の化学プロセスの秘密を明らかにします。
知っておくべきMQL5ウィザードのテクニック(第41回):DQN (Deep-Q-Network)
DQN (Deep-Q-Network)は強化学習アルゴリズムであり、機械学習モジュールの学習プロセスにおいて、次のQ値と理想的な行動を予測する際にニューラルネットワークを関与させます。別の強化学習アルゴリズムであるQ学習についてはすでに検討しました。そこでこの記事では、強化学習で訓練されたMLPが、カスタムシグナルクラス内でどのように使用できるかを示すもう1つの例を紹介します。
知っておくべきMQL5ウィザードのテクニック(第74回): 教師あり学習で一目均衡表とADX Wilderのパターンを利用する
前回の記事では、一目均衡表とADXのインジケーターペアを紹介しました。今回は、このペアを教師あり学習でどのように改善できるかを見ていきます。一目均衡表とADXは、サポート/レジスタンスとトレンドを補完する組み合わせとして機能します。今回の教師あり学習アプローチでは、ディープスペクトル混合カーネルを用いたニューラルネットワークを活用し、このインジケーターペアの予測精度を微調整します。通常どおり、この処理はMQL5ウィザードでエキスパートアドバイザー(EA)を組み立てる際に利用できるカスタムシグナルクラスファイル内でおこないます。
知っておくべきMQL5ウィザードのテクニック(第80回):TD3強化学習で一目均衡表とADX-Wilderのパターンを使用する
本記事は第74回の続編です。第74回では、教師あり学習の枠組みにおける一目均衡表とADXの組み合わせを検討しました。本記事では焦点を強化学習に移します。一目均衡表とADXは、サポート/レジスタンスの把握とトレンドの強さの検出という点で、互いに補完し合う組み合わせを形成します。今回は、TD3 (Twin Delayed Deep Deterministic Policy Gradient)アルゴリズムをこのインジケーターセットでどのように活用できるかを詳しく解説します。前回までと同様に、実装はMQL5ウィザードに統合できるカスタムシグナルクラスとしておこないます。MQL5ウィザードを使用すると、エキスパートアドバイザー(EA)の構築をスムーズに進めることが可能です。
リプレイシステムの開発(第70回):正しい時間を知る(III)
この記事では、CustomBookAdd関数を適切かつ効果的に使う方法について見ていきます。一見シンプルに見えるこの関数ですが、実際には多くの細かな注意点があります。たとえば、マウスインジケーターに対してカスタム銘柄がオークション中なのか、取引中なのか、市場が閉まっているのかを伝えることができます。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
DoEasy-コントロール(第10部):WinFormsオブジェクト - インターフェイスのアニメーション化
ユーザーやオブジェクトとのオブジェクト対話機能を実装して、グラフィカルインターフェイスをアニメーション化するときが来ました。より複雑なオブジェクトを正しく動作させるためにも、新しい機能が必要になります。
ニューラルネットワークの実践:割線
理論的な部分ですでに説明したように、ニューラルネットワークを扱う場合、線形回帰と導関数を使用する必要があります。なぜでしょうか。その理由は、線形回帰は現存する最も単純な公式の1つだからです。本質的に、線形回帰は単なるアフィン関数です。しかし、ニューラルネットワークについて語るとき、私たちは直接線形回帰の効果には興味がありません。この直線を生み出す方程式に興味があるのです。作られた線にはそれほど興味がありません。私たちが理解すべき主要な方程式をご存じですか。ご存じでなければ、この記事を読んで理解することをお勧めします。
リプレイシステムの開発(第45回):Chart Tradeプロジェクト(IV)
この記事の主な目的は、C_ChartFloatingRADクラスの紹介と説明です。Chart Trade指標は、非常に興味深い方法で機能しています。チャート上のオブジェクトの数はまだ少ないものの、期待通りの機能を実現しています。指標の値は編集可能ですが、その実現方法については疑問が残るかもしれません。この記事を読めば、これらの疑問が解消されるでしょう。
リプレイシステムの開発(第46回):Chart Tradeプロジェクト(V)
アプリケーションを動作させるために必要なファイルを探すのに時間を浪費していませんか。すべてを実行ファイルに含めてみてはどうでしょうか。そうすれば、ファイルを探す必要がなくなります。多くの人がこのような配布・保管方法を採用していることは知っていますが、少なくとも、実行ファイルの配布や保管に関してはもっと適切な方法があります。ここで紹介する方法は、MQL5だけでなく、MetaTrader 5そのものを優れたアシスタントとして使うことができるので、非常に便利です。しかも、理解するのはそれほど難しくありません。
リプレイシステムの開発(第69回):正しい時間を知る(II)
今日は、iSpread機能がなぜ必要なのかについて考察します。同時に、ティックが1つも存在しない状況で、システムがどのようにバーの残り時間を通知するのかについても理解を深めていきます。ここで提示されるコンテンツは、教育目的のみに使用されることを意図しています。いかなる状況においても、提示された概念を学習し習得する以外の目的でアプリケーションを利用することは避けてください。
ニューラルネットワークが簡単に(第76回):Multi-future Transformerで多様な相互作用パターンを探る
この記事では、今後の値動きを予測するというトピックを続けます。Multi-future Transformerのアーキテクチャーをお見せします。その主なアイデアは、未来のマルチモーダル分布をいくつかのユニモーダル分布に分解することで、シーンのエージェント間の相互作用のさまざまなモデルを効果的にシミュレートすることができるというものです。
多通貨エキスパートアドバイザーの開発(第10回):文字列からオブジェクトを作成する
エキスパートアドバイザー(EA)の開発計画は複数の段階で構成されており、中間結果はデータベースに保存されます。しかし、これらの結果はオブジェクトとしてではなく、文字列や数値としてのみ抽出できます。したがって、データベースから読み込んだ文字列を基に、EAで目的のオブジェクトを再構築する方法が必要です。
MQL5で取引管理者パネルを作成する(第6回):多機能インターフェイス(I)
取引管理者の役割はTelegram通信だけにとどまらず、注文管理、ポジション追跡、インターフェイスのカスタマイズなど、さまざまな制御アクティビティにも携わります。この記事では、MQL5の複数の機能をサポートするためにプログラムを拡張するための実用的な洞察を共有します。このアップデートは、主にコミュニケーションに重点を置くという現在のAdminパネルの制限を克服し、より幅広いタスクを処理できるようにすることを目的としています。
プライスアクション分析ツールキットの開発(第4回):Analytics Forecaster EA
チャート上に表示された分析済みのメトリックを見るだけにとどまらず、Telegramとの統合によってブロードキャストを拡張するという、より広い視点へと移行しています。この機能強化により、Telegramアプリを通じて、重要な結果がモバイルデバイスに直接配信されるようになります。この記事では、この新たな取り組みを一緒に探っていきましょう。
MQL5でカスタムキャンバスグラフィックを使用したケルトナーチャネルインジケーターの構築
本記事では、MQL5を用いてカスタムキャンバスグラフィック付きのケルトナーチャネルインジケーターを構築します。移動平均の統合、ATRの計算、そして視覚的に強化されたチャート表示について詳しく解説します。また、インジケーターの実用性を評価するためのバックテスト手法についても取り上げ、実際の取引に役立つ洞察を提供します。
MQL5サービスからPythonアプリケーションへのMetaTraderティック情報アクセス(ソケット使用)
場合によっては、MQL5言語だけではすべてをプログラムできないことがあります。また、既存の高度なライブラリをMQL5に移植することは可能であっても、非常に時間がかかります。本記事では、MetaTraderのティック情報(Bid、Ask、時刻など)をMetaTraderサービスを経由してPythonアプリケーションに送信し、Windows OSへの依存を回避する方法を紹介します。
注文板に基づいた取引システムの開発(第1回):インジケーター
市場の厚みは、特に高頻度取引(HFT)アルゴリズムにおいて、高速な取引を実行するために不可欠な要素です。本連載では、多くの取引可能な銘柄に対してブローカー経由で取得できるこの種の取引イベントについて取り上げます。まずは、チャート上に直接表示されるヒストグラムのカラーパレット、位置、サイズをカスタマイズ可能なインジケーターから始めます。次に、特定の条件下でこのインジケーターをテストするためのBookEventイベントの生成方法について解説します。今後の記事では、価格分布データの保存方法や、そのデータをストラテジーテスターで活用する方法などのトピックも取り上げる予定です。
リプレイシステムの開発 - 市場シミュレーション(第23回)FOREX (IV)
これで、ティックをバーに変換したのと同じ時点で作成がおこなわれます。こうすることで、変換プロセス中に問題が発生した場合、すぐにエラーに気づくことができます。これは、早送り中にチャート上に1分足を配置するコードと同じコードが、通常のパフォーマンス中に足を配置する位置決めシステムにも使用されるためです。言い換えれば、このタスクを担当するコードは他の場所には複製されません。このようにして、メンテナンスと改善の両方においてはるかに優れたシステムが得られます。
ニューラルネットワークの実践:最小二乗法
この記事では、数式がコードで実装されたときよりも見た目が複雑になる理由など、いくつかのアイデアについて説明します。さらに、チャートの象限を設定する方法と、MQL5コードで発生する可能性のある1つの興味深い問題についても検討します。正直に言うと、まだどう説明すればいいのかよくわかりません。とにかく、コードで修正する方法を紹介します。
Candlestick Trend Constraintモデルの構築(第8回):エキスパートアドバイザー(EA)の開発 (II)
独立したEAについて考えてみましょう。前回は、リスクとリターンのジオメトリを描くために独立したスクリプトと連携する、指標ベースのEAについて説明しました。今回は、すべての機能を1つのプログラムに統合したMQL5 EAのアーキテクチャについて解説します。
プライスアクション分析ツールキットの開発(第20回):External Flow (IV) — Correlation Pathfinder
Correlation Pathfinderは、「プライスアクション分析ツールキット開発」連載の一環として、通貨ペアの動的な関係を理解するための新しいアプローチを提供します。このツールはデータの収集と分析を自動化し、EUR/USDやGBP/USDなどのペアがどのように連動して動いているかを可視化します。リスク管理を強化し、より効果的にチャンスを捉えるための実用的かつリアルタイムな情報で、取引戦略のレベルを引き上げましょう。
亀甲進化アルゴリズム(TSEA)
これは、亀の甲羅の進化にインスパイアされたユニークな最適化アルゴリズムです。TSEAアルゴリズムは、問題に対する最適解を表す構造化された皮膚領域が徐々に形成される様子をエミュレートします。最良の解は「硬く」なり、外側に近い位置に配置され、成功しなかった解は「柔らかい」ままで内側に留まります。このアルゴリズムは、質と距離に基づく解のクラスタリングを利用し、成功率の低い選択肢を保持しながら、柔軟性と適応性を提供します。
多通貨エキスパートアドバイザーの開発(第18回):将来期間を考慮したグループ選択の自動化
これまで手動でおこなっていた手順の自動化を引き続き進めていきましょう。今回は、第2段階の自動化、すなわち取引戦略の単一インスタンスの最適なグループ選定に立ち返り、フォワード期間におけるインスタンスの結果を考慮する機能を追加します。
PythonとMQL5による多銘柄分析(第2回):ポートフォリオ最適化のための主成分分析
取引口座のリスク管理は、すべてのトレーダーにとっての課題です。MetaTrader 5で、さまざまな銘柄に対して高リスク、中リスク、低リスクモードを動的に学習する取引アプリケーションを開発するにはどうすればよいでしょうか。PCA(主成分分析)を使用することで、ポートフォリオの分散をより効果的に管理できるようになります。MetaTrader 5から取得した市場データを基に、これら3つのリスクモードを学習するアプリケーションの作成方法を説明します。
知っておくべきMQL5ウィザードのテクニック(第62回):強化学習TRPOでADXとCCIのパターンを活用する
ADXオシレーターとCCIオシレーターはそれぞれトレンドフォローインジケーターおよびモメンタムインジケーターであり、エキスパートアドバイザー(EA)を開発する際に組み合わせることができます。前回の記事に続き、今回は開発済みモデルの運用中の学習や更新を、強化学習を用いてどのように実現できるかを検討します。この記事で使用するアルゴリズムは、本連載ではまだ扱っていない「TRPO(Trust Region Policy Optimization、信頼領域方策最適化)」として知られる手法です。また、MQL5ウィザードによるEAの組み立ては、モデルのテストをより迅速におこなえるだけでなく、異なるシグナルタイプで配布し検証できる形でセットアップできる点も利点です。
MQL5入門(第23回):オープニングレンジブレイクアウト戦略の自動化
この記事では、MQL5でオープニングレンジブレイクアウト(ORB)エキスパートアドバイザー(EA)を作成する方法を解説します。EAが市場の初期レンジからのブレイクアウトをどのように検知し、それに応じてポジションを建てるかを説明します。また、建てるポジションの数を制御したり、指定した時間で自動的に取引を停止する方法についても学べます。
リプレイシステムの開発(第56回):モジュールの適応
モジュール同士はすでに適切に連携していますが、リプレイサービスでマウスポインタを使用しようとするとエラーが発生します。次のステップに進む前に、この問題を修正する必要があります。さらに、マウスインジケーターのコードにある別の問題も修正します。この修正によって、今回のバージョンは最終的に安定し、洗練されたものになります。
PythonとMQL5を使用した特徴量エンジニアリング(第4回):UMAP回帰によるローソク足パターン認識
次元削減手法は、機械学習モデルのパフォーマンスを向上させるために広く用いられています。ここでは、UMAP (Uniform Manifold Approximation and Projection)という比較的新しい手法について説明します。UMAPは、古い手法に見られるデータの歪みや人工的な構造といった欠点を明確に克服することを目的として開発されました。UMAPは非常に強力な次元削減技術であり、似たローソク足を新たに効果的にグループ化できるため、アウトオブサンプル(未知データ)に対する誤差率を低減し、取引パフォーマンスを向上させることができます。