共和分株式による統計的裁定取引(最終回):特化型データベースを用いたデータ分析
共和分株式による統計的裁定取引(最終回):特化型データベースを用いたデータ分析
統計的裁定取引のデータ処理において、SQLite (OLTP)とDuckDB (OLAP)を組み合わせて活用する方法を紹介します。DuckDBのカラム指向エンジン、ASOF JOIN、配列関数を利用することで、気配値と約定の時点対応付けやRWEC (Rolling Windows Eigenvector Comparison)などの中核処理を高速化できます。実際の測定では、入力データが大きくなるにつれて、SQLiteと比較して2倍から23倍の高速化が確認されました。これにより、クエリはよりシンプルになり、分析処理も高速化される一方で、実際の取引執行は引き続きSQLiteに任せることができます。
MQL5取引ツール(第21回):回帰グラフにサイバーパンクテーマを追加する
MQL5取引ツール(第21回):回帰グラフにサイバーパンクテーマを追加する
MQL5の回帰グラフ描画ツールを拡張し、ネオングロー、アニメーション、ホログラフィックエフェクトを備えたサイバーパンクテーマを追加することで、より没入感のある可視化を実現します。テーマの切り替え機能、星が瞬く動的な背景、発光する枠線、ネオンカラーのポイントやラインを実装するとともに、従来の標準テーマとの互換性も維持します。このデュアルテーマシステムにより、リアルタイム更新やインタラクティブな操作に対応しながら、未来的なデザインでペア分析をより魅力的に行えるようになります。
MQL5入門(第42回):MQL5におけるファイル処理入門(IV)
MQL5入門(第42回):MQL5におけるファイル処理入門(IV)
CSV形式の取引履歴を読み込み、Profit($)の値と総取引数を抽出し、累積残高推移を計算するMQL5インジケータの作成方法を紹介します。算出した累積残高曲線は、インジケータ専用のサブウィンドウにプロットし、Y軸は値の範囲に応じて自動的にスケーリングされます。また、表示位置を分かりやすくするために、水平軸と垂直軸も描画します。インジケータはタイマーによって定期的に更新され、新しい取引が追加された場合にのみ再描画します。さらに、オプションとして各取引の利益または損失を数値ラベルとして表示できるため、パフォーマンスやドローダウンをチャート上で直接確認・分析できます。
MQL5でカスタムインジケータを作成する(第8回):出来高統合によるより深いマーケットプロファイル分析
MQL5でカスタムインジケータを作成する(第8回):出来高統合によるより深いマーケットプロファイル分析
MQL5のハイブリッドTime Price Opportunity (TPO)マーケットプロファイル指標を強化し、出来高データを統合することで、出来高ベースのポイントオブコントロール(PoC)、バリューエリア(VA)、出来高加重平均価格(VWAP)を計算できるようにします。また、カスタマイズ可能なハイライト機能も追加します。このシステムでは、イニシャルバランス(IB)検出、重要レベルの延長ライン、分割プロファイル、さらに分析精度を向上させるための四角形や円形などの代替TPO文字を導入し、複数の時間足に対応した高度な視覚分析を実現します。
MQL5取引ツール(第20回):統計的相関分析と回帰分析を用いたCanvasグラフ作成
MQL5取引ツール(第20回):統計的相関分析と回帰分析を用いたCanvasグラフ作成
MQL5を用いて、2つの銘柄間の統計的相関および線形回帰分析をおこなう、Canvasベースのグラフ描画ツールを作成します。本ツールには、ドラッグ操作やリサイズ機能を備えたインタラクティブなインターフェースを実装し、回帰計算にはALGLIBを活用します。また、動的な目盛りラベル、データポイント、傾き・切片・相関係数・決定係数を表示する統計パネルも組み込みます。このインタラクティブな可視化ツールにより、ペアトレード分析に役立つ洞察を得ることができ、テーマや枠線のカスタマイズ、新しいバーの生成に応じたリアルタイム更新にも対応します。
MQL5でカスタムインジケータを作成する(第7回):セッション分析のためのハイブリッドTime Price Opportunity (TPO)マーケットプロファイル
MQL5でカスタムインジケータを作成する(第7回):セッション分析のためのハイブリッドTime Price Opportunity (TPO)マーケットプロファイル
ハイブリッドTime Price Opportunity (TPO)マーケットプロファイル用のカスタムインジケータをMQL5で開発します。このインジケータは、タイムゾーン調整に対応し、イントラデイ、日足、週足、月足、固定期間など、複数のセッション時間足をサポートします。このインジケータでは、価格をグリッド化し、各セッションの高値、安値、始値、終値などのデータを追跡します。また、TPOカウントに基づいて、ポイントオブコントロール(PoC)やバリューエリア(VA)などの主要要素を計算します。さらに、TPO文字、単独プリント、VA、PoC、終値マーカーの色をカスタマイズ可能にし、チャート上にプロファイルを視覚的に描画することで、詳細なセッション分析を可能にします。
MQL5入門(第41回)MQL5におけるファイル処理入門(III)
MQL5入門(第41回)MQL5におけるファイル処理入門(III)
MQL5でCSVファイルを読み込み、取引データを動的配列に整理する方法を学びます。ファイル内の要素数を数える方法、すべてのデータを1つの配列に格納する方法、さらに各列を専用の配列へ分割する方法をステップごとに解説します。これにより、高度な分析やトレードパフォーマンスの可視化へ進むための基礎を構築できます。
MQL5入門(第40回):MQL5におけるファイル処理入門(II)
MQL5入門(第40回):MQL5におけるファイル処理入門(II)
MQL5で、指定した期間の口座履歴を読み取り、構造化されたレコードをファイルに書き込むことで、CSV形式の取引ジャーナルを作成します。約定数の取得、チケット番号の取得、銘柄や注文タイプの判別、そしてエントリー(ロット、時間、価格、SL/TP)および決済(時間、価格、利益、結果)データの取得方法を、動的配列を使用して解説します。その結果、分析やレポート作成に適した、整理された永続的なログを作成できます。
MQL5における二変量コピュラ(第3回):混合コピュラモデルの実装とチューニング
MQL5における二変量コピュラ(第3回):混合コピュラモデルの実装とチューニング
MQL5上でネイティブ実装された混合コピュラを用いて、既存のコピュラツールキットを拡張します。Clayton–Frank–GumbelおよびClayton–Student-t–Gumbelの混合モデルを構築し、EMアルゴリズムによってパラメータ推定をおこないます。また、SCAD (Smoothly Clipped Absolute Deviation)とクロスバリデーションを組み合わせることで、モデルのスパース性制御を実現します。提供するスクリプトでは、ハイパーパラメータの調整、情報量基準を用いた混合モデルの比較、学習済みモデルの保存までを実行できます。これらのコンポーネントを利用することで、実務者は非対称なテール依存性を捉え、選択したモデルをインジケータやエキスパートアドバイザー(EA)へ組み込めるようになります。
MQL5取引ツール(第16回):改良版スーパーサンプリング・アンチエイリアシング(SSAA)と高解像度レンダリング
MQL5取引ツール(第16回):改良版スーパーサンプリング・アンチエイリアシング(SSAA)と高解像度レンダリング
MQL5キャンバスダッシュボードにスーパーサンプリングによるアンチエイリアシングと高解像度レンダリングを追加し、最終的な表示サイズへダウンサンプリングする手法を実装します。また、角丸矩形の塗りつぶしと枠線、角丸三角形の矢印、さらに統計パネルおよびテキストパネル向けのテーマ対応カスタムスクロールバーを実装します。これらのツールにより、MetaTrader 5上で、より滑らかで視認性の高いUIコンポーネントを構築できるようになります。
MQL5とデータ処理パッケージの統合(第7回):銘柄間連携のためのマルチエージェント環境の構築
MQL5とデータ処理パッケージの統合(第7回):銘柄間連携のためのマルチエージェント環境の構築
マルチエージェント取引のための完全なPython–MQL5統合について解説します。内容には、MT5データ取得、インジケーター計算、各エージェントによる意思決定、そして単一のアクションを出力する重み付きコンセンサス処理が含まれます。シグナルはJSON形式で保存され、Flaskによって提供され、MQL5のエキスパートアドバイザー(EA)によって取得されて実行されます。実行時には、ポジションサイズを計算し、ATRに基づくSL/TPも設定されます。Flaskのルートは、安全なライフサイクル制御とステータス監視のための機能を提供します。
MQL5入門(第39回):MQL5におけるファイル処理入門(I)
MQL5入門(第39回):MQL5におけるファイル処理入門(I)
本記事では、MQL5におけるファイル処理を、実践的なプロジェクトベースのワークフローを用いて紹介します。FileSelectDialogを使用してCSVファイルを選択または作成し、FileOpenでそれを開き、口座名、残高、ログイン、期間、最終更新日時などの構造化されたヘッダーを書き込みます。その結果として、再利用可能な取引ジャーナルと、MetaTrader 5でファイルを安全に扱うための基盤が得られます。
MQL5取引ツールのアクセシビリティ課題を克服する(第1回):MQL5インジケータに状況対応型音声アラートを追加する方法
MQL5取引ツールのアクセシビリティ課題を克服する(第1回):MQL5インジケータに状況対応型音声アラートを追加する方法
本記事では、標準的なターミナルアラートの枠を超え、MQL5のリソース管理機能を活用して状況に応じた音声フィードバックを実現する、アクセシビリティを重視した拡張手法を紹介します。一般的な通知音ではなく、「何が起こったのか」と「なぜ起こったのか」を音声で伝えることで、トレーダーは視覚情報だけに頼ることなく市場イベントを把握できます。このアプローチは、特に視覚障害のあるトレーダーにとって有用ですが、ハンズフリーで操作したい多忙なユーザーやマルチタスク環境で取引を行うユーザーにもメリットがあります。
Python-MetaTrader 5ストラテジーテスター(第5回):複数銘柄および複数時間足ストラテジーテスター
Python-MetaTrader 5ストラテジーテスター(第5回):複数銘柄および複数時間足ストラテジーテスター
銘柄および時間足を横断してスケーラブルに動作するMetaTrader 5互換のバックテストワークフローを紹介します。本システムでは、HistoryManagerを用いてデータ取得を並列化し、すべての時間足からバーおよびティックデータを同期し、スレッドごとに銘柄分離されたOnTickハンドラを実行します。モデリングモードが速度と精度に与える影響、ターミナルデータに依存すべき場面、イベント駆動型更新によるI/O削減手法、そして複数通貨自動売買ロボットの構築方法について学びます。
バックトラッキング探索アルゴリズム(BSA)
バックトラッキング探索アルゴリズム(BSA)
もし最適化アルゴリズムが過去の探索経路を記憶し、その記憶を使ってより良い解を見つけられるとしたらどうでしょうか。BSAはまさにそれを実現し、探索と実績のある探索方向の再利用をバランスよく両立させます。本記事では、そのアルゴリズムの秘密を解き明かします。シンプルなアイデア、最小限のパラメータ、そして安定した結果が特徴です。
プライスアクション分析ツールキットの開発(第29回):Boom & Crash Interceptor EA
プライスアクション分析ツールキットの開発(第29回):Boom & Crash Interceptor EA
Boom & Crash Interceptor EAは、チャートを能動的なアラートシステムへと変貌させます。超高速の価格変動スキャン、ボラティリティ急増の検出、トレンド確認、そしてピボットゾーンフィルタを組み合わせることで、爆発的な値動きをいち早く捉えます。鮮明な緑色の「Boom」矢印と赤色の「Crash」矢印が売買判断をサポートし、市場の急騰・急落スパイクをこれまで以上に効果的に捉え、活用できるようになります。本記事では、その仕組みと、このツールがトレードにおける次の重要な優位性となり得る理由を詳しく解説します。
イルカエコーロケーションアルゴリズム(DEA)
イルカエコーロケーションアルゴリズム(DEA)
本記事ではDEAアルゴリズムについて詳しく解説します。DEAは、イルカがエコーロケーション(反響定位)を用いて獲物を探す独特の能力に着想を得たメタヒューリスティック最適化手法です。数学的基礎からMQL5での実装、さらには解析や従来アルゴリズムとの比較まで、この比較的新しい手法がなぜ最適化問題に取り組む研究者の手法群に加える価値がある理由を詳しく見ていきます。
機械学習を用いたフラクタル市場構造入門
機械学習を用いたフラクタル市場構造入門
本記事では、金融時系列を自己相似的なフラクタル構造という観点から考察します。市場の価格変動が自己相似フラクタルとして捉えられる可能性を支持する類似性が多数存在することから、このような構造の予測可能性の地平線について考えることができます。
共分散行列適応進化戦略(CMA-ES)
共分散行列適応進化戦略(CMA-ES)
目的関数の幾何構造を捉えるように学習する、最も興味深い非勾配最適化アルゴリズムの一つを扱います。CMA-ESの古典的実装に対してわずかな修正を加えたもの、すなわち正規分布を冪分布に置き換える手法に焦点を当てます。アルゴリズムの背後にある数理を徹底的に解説し、さらに実装面についても検討します。また、CMA-ESがどのような問題で無類の性能を発揮し、どのような状況では使用を避けるべきかについても確認します。
市場シミュレーション(第24回):SQL入門(VII)
市場シミュレーション(第24回):SQL入門(VII)
前回の記事では、SQLに必要な導入を完了しました。SQLについて何を説明したいのかは、十分に明確にできたと思います。これは、市場のリプレイ/シミュレーションシステムの構築を見に来る人であれば誰でも、そこで何が起きているのかを少なくともある程度イメージできるようにするためのものでした。重要な点は、SQLが完全に処理できることをわざわざプログラミングする意味はないということです。
イーグル戦略最適化(ES)
イーグル戦略最適化(ES)
イーグル戦略最適化(ES)は、鷲の狩猟行動に着想を得た最適化アルゴリズムです。マンテーニャ法によるレヴィ飛行を用いた大域探索と、ホタルアルゴリズムによる集中的な局所探索(local exploitation)を交互に実行することで、探索と活用のバランスを実現します。本アルゴリズムは、数学的根拠に基づく探索戦略と、2つの自然現象を統合したバイオインスパイアードなアプローチを兼ね備えています。
PPPとIMFデータを用いた公正な為替レートの算出
PPPとIMFデータを用いた公正な為替レートの算出
Pythonを用いた購買力平価(PPP)ベースの為替レート分析システムの構築。IMFデータを用いて、5つの方法によって理論為替レートを計算するアルゴリズムを開発しました。本記事は、ファンダメンタルな通貨分析、経済データの処理、トレードシステムとの統合に関する実践的なガイドです。完全なコードはオープンソースとして公開されています。
Pythonを用いたIMFデータの取得
Pythonを用いたIMFデータの取得
PythonでIMFデータを取得する:マクロ経済に基づく通貨戦略に活用するためのIMF(国際通貨基金)データマイニング。マクロ経済は、一般のトレーダーおよびアルゴリズムトレーダーにどのように役立つのでしょうか。
生物地理学に基づく最適化(BBO)
生物地理学に基づく最適化(BBO)
生物地理学に基づく最適化(BBO, Biogeography-Based Optimization)は、群島内の島々の間で発生する種の移住という自然現象に着想を得た、洗練された大域的最適化手法です。このアルゴリズムは、シンプルでありながら強力な考え方に基づいています。すなわち、良質な解はその特徴を他の解へ伝播し、低品質な解は新たな特徴を積極的に取り込むことで、最良の解から最悪の解へと情報が自然に流れるようになります。さらに、適応的な突然変異オペレーターによって探索と活用の優れたバランスが実現されます。BBOはさまざまな最適化問題に対して高い効率を示しています。
金融時系列における共形予測の考察
金融時系列における共形予測の考察
共形予測(Conformal Prediction)と、それを実装するMAPIEライブラリについて考察します。このアプローチは機械学習における最も現代的な手法の一つであり、既存のさまざまな機械学習モデルに対するリスク管理に焦点を当てることを可能にします。共形予測それ自体は、データ内のパターンを見つける方法ではありません。これは、既存のモデルが個々のサンプルを予測する際の信頼度を判定するだけであり、信頼性の高い予測を選別できるようにします。
市場シミュレーション(第23回):SQL入門(VI)
市場シミュレーション(第23回):SQL入門(VI)
本記事では、データベースを可視化し、その構造をどのように理解するかについて見ていきます。これを実現するために、データベースの内部構造を分析します。一見すると不要な作業のように思えるかもしれませんが、本気でデータベース管理者を目指すのであれば、これは十分に意味のある作業です。実際、データベースの保守や設計を生業としている人もいます。
PythonによるCFTCデータマイニングとAIモデルの構築
PythonによるCFTCデータマイニングとAIモデルの構築
CFTCデータのマイニングを試み、Pythonを通じてCOTおよびTFFレポートをダウンロードし、これらをMetaTrader 5の相場データおよびAIモデルと統合して、予測を得てみましょう。FX市場におけるCOTレポートとは何でしょうか。また、COTおよびTFFレポートをどのように予測に活用するのでしょうか。
中央銀行のバランスシートデータからグローバル流動性を読み解く
中央銀行のバランスシートデータからグローバル流動性を読み解く
中央銀行のバランスシートデータを分析することで、外国為替市場全体と主要通貨におけるグローバル流動性の姿を把握できます。米連邦準備制度(Fed)、欧州中央銀行(ECB)、日銀(BOJ)、および中国人民銀行(PBoC)のデータを統合し、複合インデックスを作成し、機械学習を用いて隠れたパターンを明らかにします。このアプローチは、ファンダメンタル分析とテクニカル分析を組み合わせることで、生データを実際の取引シグナルへと変換します。
外国為替市場向けCAPMモデルインジケータ
外国為替市場向けCAPMモデルインジケータ
MQL5における外国為替市場向け古典的CAPMモデルの適用を扱います。本インジケータは、ヒストリカルボラティリティに基づいて期待リターンとリスクプレミアムを算出します。インジケータ値は相場の天井圏や底値圏で上昇し、資産価格決定の基本原理を反映します。リスクリワード比の変化をリアルタイムで考慮しながら、逆張り戦略および順張り戦略に活用できます。本記事では、その数学的背景と技術的な実装方法について詳しく解説します。
口座ダイナミクスの追跡:MQL5による残高、エクイティ、含み損益の可視化
口座ダイナミクスの追跡:MQL5による残高、エクイティ、含み損益の可視化
カスタムMT5インジケーターを作成し、全ディール履歴を処理して、開始残高、残高、エクイティ、および含み損益を連続曲線として描画します。このインジケーターはバーごとに更新され、複数銘柄にまたがるポジションを追跡し、ローカルキャッシュを利用することで外部依存を回避します。これを使用することで、エクイティと残高の乖離、実現損益と含み損益の関係、そしてリスクを取ったタイミングを分析できます。
初心者からエキスパートへ:サプライ&デマンドゾーンの統計的検証
初心者からエキスパートへ:サプライ&デマンドゾーンの統計的検証
サプライ&デマンド取引戦略の背後にある、見落とされがちな統計的基盤を明らかにします。MQL5とPythonをJupyter Notebookワークフローで連携させることで、マーケットに対する視覚的な仮定を定量的な洞察へと変換する体系的なデータ駆動型リサーチをおこないます。本記事では、データ収集からPythonによる統計分析、アルゴリズム設計、テスト、最終的な結論に至るまで、一連の研究プロセスを解説します。手法と結果の詳細については、本文をご参照ください。
MQL5でカスタムインジケータを作成する(第6回):平滑化、色相シフト、マルチタイムフレーム対応を備えたRSI計算の拡張
MQL5でカスタムインジケータを作成する(第6回):平滑化、色相シフト、マルチタイムフレーム対応を備えたRSI計算の拡張
MQL5で多用途なRSIインジケータを構築します。このインジケータは複数のバリエーション、データソース、平滑化手法をサポートし、より高度な分析を可能にします。さらに、視覚的な色表現のための色相シフト、買われすぎ・売られすぎゾーンの動的境界、トレンドアラート用の通知機能を追加します。また、補間を伴うマルチタイムフレーム対応も実装し、異なる時間足のRSI値を補間によって滑らかに対応付けるカスタマイズ可能なRSIツールを提供します。
MQL5取引ツール(第14回):アンチエイリアシングと角丸スクロールバーを備えたピクセルパーフェクトなスクロール対応テキストキャンバス
MQL5取引ツール(第14回):アンチエイリアシングと角丸スクロールバーを備えたピクセルパーフェクトなスクロール対応テキストキャンバス
本記事では、MQL5のCCanvasベース価格ダッシュボードを拡張し、利用ガイドを表示するためのピクセルパーフェクトなスクロール可能テキストパネルを追加します。これにより、ネイティブのスクロール機能の制限を回避しつつ、カスタムアンチエイリアス処理と角丸デザインのスクロールバーを実現します。テキストパネルは、不透明度を設定可能なテーマ対応背景をサポートし、説明文や連絡先情報などのコンテンツを動的に改行表示できます。また、上下ボタン、スライダーのドラッグ操作、本文領域内でのマウスホイール操作によるインタラクティブなナビゲーションにも対応しています。
MQL5取引ツール(第13回):グラフパネルと統計パネルを備えたCCanvasベースの価格ダッシュボードの実装
MQL5取引ツール(第13回):グラフパネルと統計パネルを備えたCCanvasベースの価格ダッシュボードの実装
MQL5においてCCanvasクラスを使用してインタラクティブなパネルを構築し、最近の価格グラフや口座統計を可視化する「CCanvasベースの価格ダッシュボード」を開発します。本システムは、背景画像、フォグ効果、グラデーション塗りつぶしにも対応しています。さらに、ドラッグ&リサイズ機能をマウスイベント処理で実装し、テーマ切り替え(ダーク/ライトモード)による動的な色変更、最小化/最大化コントロールも備え、チャート領域を効率的に管理できる設計となっています。
MetaTrader 5とMQL5経済指標カレンダー:ニュースを再現性のあるトレードシステムに変える方法
MetaTrader 5とMQL5経済指標カレンダー:ニュースを再現性のあるトレードシステムに変える方法
MetaTrader 5に組み込まれている経済指標カレンダーを利用したニューストレードの体系的アプローチを紹介します。対象となる内容には、データ構造、API関数、時間同期ルール、イベントフィルタリングが含まれます。また、サーバーへ過度な負荷をかけることなく履歴を管理するためのキャッシュ機構および増分更新方式についても解説します。さらに、同一アルゴリズムを用いた決定論的テストを実現するために、履歴データを.EX5リソースとしてエクスポートする実用的な仕組みも提供します。
ルーチン作業なしのアルゴリズム取引:MetaTrader 5におけるSQLiteを用いた高速取引分析
ルーチン作業なしのアルゴリズム取引:MetaTrader 5におけるSQLiteを用いた高速取引分析
本記事では、MQL5におけるSQLiteを用いた取引ジャーナル管理のための「最小実用構成」を紹介します。内容には、取引、シグナル、イベント用テーブル構造、インデックス設計、プリペアドステートメントによる高速かつ安全なデータ記録、さらに標準的な分析用SQLクエリが含まれます。また、MetaTrader 5の統計ダッシュボードとの統合方法や、MetaEditor上でデータベースを操作する手法についても解説します。このアプローチにより、取引ジャーナルの自動化、計算処理の高速化、そしてEAコードを複雑化させることなく高度な分析を実現できます。