チャート上で取引を視覚化する(第2回):データのグラフ表示
ここでは、取引エントリを分析するために取引の印刷画面のアンロードを簡素化するスクリプトをゼロから開発します。単一の取引に関するすべての必要な情報は、異なる時間枠を描画する機能を備えた1つのチャートに便利に表示されます。
DoEasyライブラリの時系列(第48部): 複数銘柄・複数期間指標バッファ
本稿では、指標バッファオブジェクトのクラスを改善して、複数銘柄モードで動作するようにします。これにより、カスタムプログラムで複数銘柄・複数期間指標を作成するための道が開かれます。複数銘柄・複数期間指標標準指標を作成するために、不足している機能を計算バッファオブジェクトに追加します。
データサイエンスと機械学習(第07回)::多項式回帰
線形回帰とは異なり、多項式回帰は、線形回帰モデルでは処理できないタスクをより適切に実行することを目的とした柔軟なモデルです。MQL5で多項式モデルを作成し、そこから何か良いものを作る方法を見つけてみましょう。
MQL5オブジェクト指向プログラミング(OOP)について
開発者として、私たちは、特に異なる動作をするオブジェクトがある場合に、コードを重複せずに再利用可能で柔軟なソフトウェアを作成し開発する方法を学ぶ必要があります。これは、オブジェクト指向プログラミングのテクニックと原則を使うことでスムーズにおこなうことができます。この記事では、MQL5オブジェクト指向プログラミングの基本を紹介し、この重要なトピックの原則とプラクティスをソフトウェアでどのように使用できるかを説明します。
MQL5における修正グリッドヘッジEA(第1部):シンプルなヘッジEAを作る
古典的なグリッド戦略と古典的なヘッジ戦略を混合した、より高度なグリッドヘッジEAのベースとして、シンプルなヘッジEAを作成する予定です。この記事が終わるころには、簡単なヘッジ戦略の作り方がわかり、この戦略が本当に100%儲かるかどうかについての人々の意見も知ることができるでしょう。
ボラティリティベースの取引システムの構築と最適化の方法(チャイキンボラティリティ - CHV)
この記事では、チャイキンボラティリティ(CHV、Chaikin Volatility)という名前の、ボラティリティに基づく後1つの指標を提供します。カスタム指標の使用方法と構築方法を確認した後、カスタム指標の構築方法を理解します。使用できるいくつかの簡単な戦略を共有し、どちらがより優れているかを理解するためにテストします。
ニューラルネットワークが簡単に(第29部):Advantage Actor-Criticアルゴリズム
本連載のこれまでの記事で、2つの強化学習アルゴリズムを見てきました。それぞれに長所と短所があります。このような場合ではよくあることですが、次に、2つの方法の良いところを組み合わせてアルゴリズムにすることが考え出されます。そうすれば、それぞれの欠点が補われることになります。今回は、そのような手法の1つを紹介します。
MQL5とデータ処理パッケージの統合(第1回):高度なデータ分析と統計処理
統合により、MQL5から生の財務データをJupyter Labのようなデータ処理パッケージにインポートし、統計テストを含む高度な分析をおこなうシームレスなワークフローが実現します。
予測による統計的裁定取引
統計的裁定取引について調べ、共和分で相関する銘柄をPythonで検索し、ピアソン係数の指標を作成し、PythonとONNX モデルで予測をおこなって統計的裁定取引を行うEAを作成します。
MFIによる取引システムの設計方法を学ぶ
最も人気のあるテクニカル指標に基づいて取引システムを設計する連載のこの新しい記事では、新しくマネーフローインデックス(Money Flow Index、MFI)テクニカル指標を考察します。その詳細を学び、MQL5によって簡単な取引システムを開発し、MetaTrader 5で実行します。
ニューラルネットワークが簡単に(第35回):ICM(Intrinsic Curiosity Module、内発的好奇心モジュール)
強化学習アルゴリズムの研究を続けます。これまで検討してきたすべてのアルゴリズムでは、あるシステム状態から別の状態への遷移ごとに、エージェントがそれぞれの行動を評価できるようにするための報酬方策を作成する必要がありました。しかし、この方法はかなり人工的なものです。実際には、行動と報酬の間には、ある程度の時間差があります。今回は、行動から報酬までの様々な時間の遅れを扱うことができるモデル訓練アルゴリズムに触れてみましょう。
ウィリアムズPRによる取引システムの設計方法を学ぶ
MetaTrader 5で使用される最も人気のあるテクニカル指標によってMQL5で取引システムを設計する方法を学ぶ連載の新しい記事です。今回は、ウィリアムズの%R指標による取引システムの設計方法について学びます。
ディープニューラルネットワーク(その8)バギングアンサンブルの分類品質の向上
本稿では、バギングアンサンブルの分類品質を高めるために使用できる3つの方法を検討し、その効率を評価します。ELMニューラルネットワークのハイパーパラメータと後処理パラメータの最適化の効果が評価されます。
一般的トレーディングシステムを基にしたExpert Advisors と売買ロボット最適化の錬金術(パート3)
本稿では、もっともシンプルなトレーディングシステムのアルゴリズム実装の分析を続行し、バックテストの自動化を紹介します。初心者トレーダーや EA プログラマ―に有用です。
デイトレードLarry Connors RSI2平均回帰戦略
Larry Connorsは著名なトレーダー兼著者であり、特に2期間RSI (RSI2)などのクオンツトレーディングや戦略で知られています。RSI2は短期的な買われすぎ・売られすぎの市場状況を識別するのに役立ちます。本記事では、まず私たちの研究の動機を説明し、その後Connorsの代表的な3つの戦略をMQL5で再現し、S&P 500指数CFDのデイトレードに適用していきます。
ニューラルネットワークが簡単に(第33部):分散型Q学習における分位点回帰
分散型Q学習の研究を続けます。今日は、この方法を反対側から見てみましょう。価格予測問題を解決するために、分位点回帰を利用する可能性を検討します。
リプレイシステムの開発 — 市場シミュレーション(第4回):設定の調整(II)
システムとコントロールを作り続けましょう。サービスをコントロールする能力がなければ、システムを前進させ、改善することは難しくなります。
取引におけるニューラルネットワーク:時系列の区分線形表現
本記事は、これまでの公開記事とはやや異なる内容となっています。本記事では、時系列データの代替的な表現について解説します。時系列の区分的線形表現とは、小さな区間ごとに線形関数を用いて時系列データを近似する手法です。
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第2回):指標シグナル:多時間枠放物線SAR指標
この記事の多通貨エキスパートアドバイザー(EA)は、1つの銘柄チャートからのみ複数の銘柄ペアの取引(注文を出す、注文を決済する、トレーリングストップロスとトレーリングプロフィットなどで注文を管理するなど)ができるEAまたは自動売買ロボットです。今回は、PERIOD_M15からPERIOD_D1までの多時間枠でパラボリックSARまたはiSARという1つの指標のみを使用します。
一からの取引エキスパートアドバイザーの開発(第19部):新規受注システム(II)
今回は、「見てわかる」タイプのグラフィカルな受注システムを開発します。なお、今回はゼロから始めるのではなく、取引する資産のチャート上にオブジェクトやイベントを追加して既存のシステムを修正します。
ニューラルネットワークが簡単に(第32部):分散型Q学習
この連載で前回Q学習法を紹介しました。この手法は、各行動の報酬を平均化するものです。2017年には、報酬分布関数を研究する際に、より大きな成果を示す2つの研究が発表されました。そのような技術を使って、私たちの問題を解決する可能性を考えてみましょう。
初心者のためのMetaTrader 5とRによるアルゴリズム取引
RとMetaTrader 5をシームレスに統合する技術を解き明かしながら、金融分析とアルゴリズム取引が出会う魅力的な探求に乗り出しましょう。この記事は、MetaTrader 5の強力な取引機能とRの精巧な分析の領域を橋渡しするためのガイドです。
PythonとMQL5でロボットを開発する(第3回):モデルベース取引アルゴリズムの実装
PythonとMQL5で自動売買ロボットを開発する連載を続けます。この記事では、Pythonで取引アルゴリズムを作成します。
カスタムインジケーター:ネット口座の部分的なエントリー、エグジット、リバーサル取引のプロット
この記事では、MQL5でインジケーターを作成する非標準的な方法について説明します。トレンドやチャートパターンに注目するのではなく、部分的なエントリーやエグジットを含めた独自のポジション管理を目的とします。取引履歴やポジションに関連する動的マトリックスと、いくつかの取引機能を広範に活用し、これらの取引がおこなわれた場所をチャート上に表示します。
モスクワ取引所(MOEX)の指値注文を使用した自動グリッド取引
この記事では、MOEXでの作業を目的としたMetaTrader 5用のMQL5エキスパートアドバイザー(EA)の開発について考察します。EAは、MetaTrader 5ターミナルを使用して、グリッド戦略に従いながらMOEXで取引することになります。EAには、ストップロスとテイクプロフィットによるポジションの決済、および特定の市況での未決注文の削除が含まれます。
プライスアクション分析ツールキットの開発(第21回):Market Structure Flip Detector Tool
The Market Structure Flip Detectorエキスパートアドバイザー(EA)は、市場センチメントの変化を常に監視する頼れるパートナーとして機能します。ATR (Average True Range)に基づく閾値を活用することで、構造の反転を的確に検出し、各高値切り下げおよび安値切り上げを明確なインジケーターで表示します。MQL5の高速な実行性能と柔軟なAPIにより、このツールはリアルタイム分析を可能にし、最適な視認性を保つよう表示を調整しながら、反転の回数やタイミングをモニターできるライブダッシュボードも提供します。さらに、カスタマイズ可能なサウンド通知やプッシュ通知により、重要なシグナルを確実に受け取ることができ、シンプルな入力と補助ルーチンがどのように価格変動を実用的な戦略へと変換するかを実感できます。
MQL5の圏論(第16回):多層パーセプトロンと関手
本連載16回目となる今回は、関手と、それが人工ニューラルネットワークを使ってどのように実装できるかを見ていきます。当連載ではこれまで、ボラティリティを予測するというアプローチをとってきましたが、今回はポジションのエントリーとエグジットのシグナルを設定するためのカスタムシグナルクラスの実装を試みます。
EAを用いたリスクとキャピタルの管理
この記事では、バックテストレポートでは見えないこと、自動売買ソフトを使用する際の注意点、エキスパートアドバイザー(EA)を使用している場合の資金管理、自動売買をおこなっている場合に取引活動を続けるために大きな損失をカバーする方法について説明します。
ニューラルネットワークが簡単に(第15部):MQL5によるデータクラスタリング
クラスタリング法について引き続き検討します。今回は、最も一般的なk-meansクラスタリング手法の1つを実装するために、新しいCKmeansクラスを作成します。テスト中には約500のパターンを識別することができました。
DoEasyライブラリの時系列(第52部): 複数銘柄・複数期間の単一バッファ標準指標のクロスプラットフォーム化
本稿では、複数銘柄・複数期間のAccumulation/Distribution標準指標の作成を検討します。指標に関してライブラリクラスをわずかに改善し、このライブラリに基づいて古いMetaTrader 4プラットフォーム用に開発されたプログラムが、MetaTrader5に切り替えたときに正常に機能するようにします。
自動で動くEAを作る(第12回):自動化(IV)
自動化されたシステムをシンプルだと思う方はおそらく、それを作るために必要なことを十分に理解していないのでしょう。今回は、多くのエキスパートアドバイザー(EA)を死に至らしめる問題点についてお話します。この問題を解決するために、無差別に注文をトリガーすることが考えられます。
独自のLLMをEAに統合する(第5部):LLMs(II)-LoRA-チューニングによる取引戦略の開発とテスト
今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じてファインチューニング(微調整)し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
ニューラルネットワークが簡単に(第16部):クラスタリングの実用化
前回は、データのクラスタリングをおこなうためのクラスを作成しました。今回は、得られた結果を実際の取引に応用するためのバリエーションを紹介したいと思います。
MQL5のインタラクティブGUIで取引チャートを改善する(第2回):移動可能なGUI (II)
MQL5で移動可能なGUIを作成するための詳細なガイドで、取引戦略やユーティリティでの動的なデータ表現の可能性を引き出しましょう。オブジェクト指向プログラミングの基本原理を理解し、同じチャート上に単一または複数の移動可能なGUIを簡単かつ効率的に設計実装する方法を発見してください。
DoEasyライブラリの時系列(第55部): 指標コレクションクラス
本稿では、指標オブジェクトクラスとそのコレクションの開発を続けます。指標オブジェクトごとに、その説明と正しいコレクションクラスを作成して、エラーなしのストレージを作成し、コレクションリストから指標オブジェクトを取得します。
一からの取引エキスパートアドバイザーの開発(第29部):おしゃべりプラットフォーム
この記事では、MetaTrader 5プラットフォームをしゃべらせる方法を学びます。EAをもっと楽しくしたらどうでしょうか。金融市場の取引は退屈で単調すぎることがよくありますが、私たちはこの仕事の疲れを軽減することができます。依存症などの問題を経験している方にとってはこのプロジェクトは危険な場合があるのでご注意ください。ただし、一般的には、それは退屈を軽減するだけです。
古典的な戦略をPythonで再構築する(第2回):ボリンジャーバンドのブレイクアウト
本稿では、線形判別分析(LDA: Linear Discriminant Analysis)とボリンジャーバンドを統合し、戦略的市場参入シグナルの生成を目的としたカテゴリ別ゾーン予測を活用する取引戦略を考察します。
PythonとMQL5を使用して初めてのグラスボックスモデルを作る
機械学習モデルの解釈は難しく、このような高度なテクニックを使用して何らかの価値を得たいのであれば、モデルが予想から外れる理由を理解することが重要です。モデルの内部構造に対する包括的な洞察がなければ、モデルのパフォーマンスを低下させるバグを発見できないことがあります。予測できない機能のエンジニアリングに時間を浪費し、長期的にはモデルのパワーを十分に活用できない危険性があります。幸いなことに、モデルの内部で何が起こっているかを正確に見ることができる、洗練され、よく整備されたオールインワンソリューションがあります。
市場シミュレーション(第1回):両建て注文(I)
本日から第2段階に入り、市場リプレイ/シミュレーションシステムについて見ていきます。まず、両建て注文の可能な解決策を示します。これは最終版ではありませんが、近い将来に解決しなければならない問題に対するひとつの可能なアプローチとなります。