MQL5プログラミング記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
ニューラルネットワークが簡単に(第56回):核型ノルムを研究の推進力に

ニューラルネットワークが簡単に(第56回):核型ノルムを研究の推進力に

強化学習における環境の研究は喫緊の課題です。いくつかのアプローチについてすでに見てきました。この記事では、核型ノルムの最大化に基づくもう一つの方法について見てみましょう。これにより、エージェントは新規性と多様性の高い環境状態を特定することができます。
preview
MQL5における修正グリッドヘッジEA(第1部):シンプルなヘッジEAを作る

MQL5における修正グリッドヘッジEA(第1部):シンプルなヘッジEAを作る

古典的なグリッド戦略と古典的なヘッジ戦略を混合した、より高度なグリッドヘッジEAのベースとして、シンプルなヘッジEAを作成する予定です。この記事が終わるころには、簡単なヘッジ戦略の作り方がわかり、この戦略が本当に100%儲かるかどうかについての人々の意見も知ることができるでしょう。
preview
DoEasyライブラリの時系列(第58部): 指標バッファデータの時系列

DoEasyライブラリの時系列(第58部): 指標バッファデータの時系列

時系列の操作に関するトピックのしめくくりとして、指標バッファに格納されているストレージ、検索、およびデータの並べ替えを整理します。これにより、プログラムでライブラリベースで作成される指標の値に基づいて分析をさらに実行できます。ライブラリのすべてのコレクションクラスの一般的な概念により、対応するコレクションで必要なデータを簡単に見つけることができます。それぞれ、今日作成されたクラスでも同じことが可能です。
preview
Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

Deus EAの実装:MQL5におけるRSIと移動平均を使った自動売買

この記事では、RSIと移動平均指標に基づいて自動売買をおこなうDeus EAの実装手順を概説します。
DoEasyライブラリのグラフィックス(第79部): 「アニメーションフレーム」オブジェクトクラスとその子孫オブジェクト
DoEasyライブラリのグラフィックス(第79部): 「アニメーションフレーム」オブジェクトクラスとその子孫オブジェクト

DoEasyライブラリのグラフィックス(第79部): 「アニメーションフレーム」オブジェクトクラスとその子孫オブジェクト

本稿では、単一のアニメーションフレームとその子孫のクラスを開発します。このクラスでは、形状の下の背景を維持および復元しながら、形状を描画できるようにします。
preview
ニューラルネットワークが簡単に(第28部):方策勾配アルゴリズム

ニューラルネットワークが簡単に(第28部):方策勾配アルゴリズム

強化学習法の研究を続けます。前回は、Deep Q-Learning手法に触れました。この手法では、特定の状況下でとった行動に応じて、これから得られる報酬を予測するようにモデルを訓練します。そして、方策と期待される報酬に応じた行動がとられます。ただし、Q関数を近似的に求めることは必ずしも可能ではありません。その近似が望ましい結果を生み出さないこともあります。このような場合、効用関数ではなく、行動の直接的な方針(戦略)に対して、近似的な手法が適用されます。その1つが方策勾配です。
preview
DoEasy-コントロール(第18部):TabControlでタブをスクロールする機能

DoEasy-コントロール(第18部):TabControlでタブをスクロールする機能

この記事では、ヘッダーバーがコントロールのサイズに収まらない場合に備えて、TabControl WinFormsオブジェクトにヘッダースクロールコントロールボタンを配置します。また、トリミングされたタブヘッダーをクリックしたときのヘッダーバーのシフトを実装します。
preview
リプレイシステムの開発(第52回):物事は複雑になる(IV)

リプレイシステムの開発(第52回):物事は複雑になる(IV)

この記事では、信頼性と安定性のある操作を確保するために、マウスポインタを変更してコントロール指標との対話を有効にします。
preview
多銘柄多期間指標の作成

多銘柄多期間指標の作成

この記事では、多銘柄、多期間の指標を作成する原則について見ていきます。また、エキスパートアドバイザー(EA)や他の指標から、このような指標のデータにアクセスする方法も紹介します。EAや指標でマルチ指標を使用する主な特徴について考察し、カスタム指標バッファを使用してそれらをプロットする方法を見ていきます。
DoEasyライブラリのグラフィックス(第90部): 標準グラフィカルオブジェクトのイベント基本機能
DoEasyライブラリのグラフィックス(第90部): 標準グラフィカルオブジェクトのイベント基本機能

DoEasyライブラリのグラフィックス(第90部): 標準グラフィカルオブジェクトのイベント基本機能

本稿では、標準のグラフィカルオブジェクトイベントを追跡するための基本的な機能を実装します。グラフィカルオブジェクトのダブルクリックイベントから始めます。
preview
MQL5の圏論(第9回):モノイド作用

MQL5の圏論(第9回):モノイド作用

MQL5における圏論の実装についての連載を続けます。ここでは、前の記事で説明したモノイドを変換する手段としてモノイド作用を継続し、応用の増加につなげます。
preview
PatchTST機械学習アルゴリズムによる24時間の値動きの予測

PatchTST機械学習アルゴリズムによる24時間の値動きの予測

この記事では、PatchTSTと呼ばれる2023年にリリースされた比較的複雑なニューラルネットワークアルゴリズムを適用し、今後24時間の値動きを予測します。公式リポジトリを使用し、若干の修正を加え、EURUSDのモデルを訓練し、PythonとMQL5の両方で将来の予測をおこなうために適用します。
preview
知っておくべきMQL5ウィザードのテクニック(第02回):コホネンマップ

知っておくべきMQL5ウィザードのテクニック(第02回):コホネンマップ

この連載では、MQL5ウィザードがトレーダーの主力であるべきことを示します。なぜでしょうか。MQL5ウィザードを使用すれば、新しいアイデアを組み立てることで時間を節約できるだけでなく、コーディングの重複によるミスを大幅に減らすことができるため、最終的に、取引の哲学のいくつかの重要な分野にエネルギーを注ぐことができるからです。
母集団最適化アルゴリズム
母集団最適化アルゴリズム

母集団最適化アルゴリズム

最適化アルゴリズム(OA)の分類についての入門記事です。この記事では、OAを比較するためのテストスタンド(関数群)を作成し、広く知られたアルゴリズムの中から最も普遍的なものを特定することを試みています。
preview
リプレイシステムの開発(第58回):サービスへの復帰

リプレイシステムの開発(第58回):サービスへの復帰

リプレイ/シミュレーターサービスの開発と改良を一時中断していましたが、再開することにしました。ターミナルグローバルのようなリソースの使用をやめたため、いくつかの部分を完全に再構築しなければなりません。ご心配なく。このプロセスを詳細に説明することで、誰もが私たちのサービスの進展についていけるようにします。
preview
母集団最適化アルゴリズム:モンキーアルゴリズム(MA)

母集団最適化アルゴリズム:モンキーアルゴリズム(MA)

今回は、最適化アルゴリズムであるモンキーアルゴリズム(MA、Monkey Algorithm)について考えてみたいと思います。この動物が難関を乗り越え、最もアクセスしにくい木のてっぺんまで到達する能力が、MAアルゴリズムのアイデアの基礎となりました。
preview
母集団最適化アルゴリズム:差分進化(DE)

母集団最適化アルゴリズム:差分進化(DE)

この記事では、これまでに取り上げたアルゴリズムの中で最も議論の的となっているアルゴリズム、差分進化(DE)アルゴリズムについて考察します。
preview
多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

多通貨エキスパートアドバイザーの開発(第9回):単一取引戦略インスタンスの最適化結果の収集

EA開発の主な段階を概説しましょう。最初におこなうべき重要な作業の1つは、開発した取引戦略のインスタンスを最適化することです。最適化プロセスにおいて、テスターが通過したパスに関する必要な情報を一箇所に集約してみましょう。
preview
リプレイシステムの開発—市場シミュレーション(第5回):プレビューの追加

リプレイシステムの開発—市場シミュレーション(第5回):プレビューの追加

現実的で利用しやすい方法で市場リプレイシステムを実装する方法を開発することができたので、プロジェクトを続けて、リプレイの動作を改善するためのデータを追加してみましょう。
preview
MQL5の高度な変数とデータ型

MQL5の高度な変数とデータ型

変数とデータ型は、MQL5プログラミングだけでなく、どのプログラミング言語でも非常に重要なトピックです。MQL5の変数とデータ型は、単純なものと高度なものに分類できます。単純なものについては前回の記事ですでに述べたので、今回は高度なものを特定し、それについて学ぶことにします。
DoEasyライブラリのグラフィックス(第77部): 影オブジェクトクラス
DoEasyライブラリのグラフィックス(第77部): 影オブジェクトクラス

DoEasyライブラリのグラフィックス(第77部): 影オブジェクトクラス

本稿では、グラフィック要素オブジェクトの子孫である 影オブジェクトのクラスを作成し、オブジェクトの背景をグラデーションで塗りつぶす機能を追加します。
DoEasyライブラリのグラフィックス(第80部): 「幾何学的アニメーションフレーム」オブジェクトクラス
DoEasyライブラリのグラフィックス(第80部): 「幾何学的アニメーションフレーム」オブジェクトクラス

DoEasyライブラリのグラフィックス(第80部): 「幾何学的アニメーションフレーム」オブジェクトクラス

本稿では、前の記事のクラスのコードを最適化し、指定された数の頂点を持つ正多角形を描画するための幾何学的アニメーションフレームオブジェクトクラスを作成します。
preview
母集団最適化アルゴリズム:Shuffled Frog-Leaping (SFL) アルゴリズム

母集団最適化アルゴリズム:Shuffled Frog-Leaping (SFL) アルゴリズム

本稿では、Shuffled Frog-Leaping (SFL)アルゴリズムの詳細な説明と、最適化問題を解く上でのその能力を紹介します。SFLアルゴリズムは、自然環境におけるカエルの行動から着想を得ており、関数最適化への新しいアプローチを提供します。SFLアルゴリズムは、効率的で柔軟なツールであり、様々な種類のデータを処理し、最適解を得ることができます。
preview
独自のLLMをEAに総合する(第5部): LLMを使った取引戦略の開発とテスト(I) - 微調整

独自のLLMをEAに総合する(第5部): LLMを使った取引戦略の開発とテスト(I) - 微調整

今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じて微調整(ファインチューニング)し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
preview
データサイエンスと機械学習(第17回):木の中のお金?外国為替取引におけるランダムフォレストの芸術と科学

データサイエンスと機械学習(第17回):木の中のお金?外国為替取引におけるランダムフォレストの芸術と科学

金融情勢を解読する際の芸術性と正確性の融合についてガイドします。アルゴリズム錬金術の秘密を発見してください。ランダムフォレストがデータを予測能力に変換する方法を明らかにし、株式市場の複雑な地形をナビゲートするための独自の視点を提供します。金融の魔術の核心に触れ、市場の動向を形作り、収益の機会を開拓するランダムフォレストの役割を解き明かす旅にご参加ください。
preview
ボラティリティベースの取引システムの構築と最適化の方法(チャイキンボラティリティ - CHV)

ボラティリティベースの取引システムの構築と最適化の方法(チャイキンボラティリティ - CHV)

この記事では、チャイキンボラティリティ(CHV、Chaikin Volatility)という名前の、ボラティリティに基づく後1つの指標を提供します。カスタム指標の使用方法と構築方法を確認した後、カスタム指標の構築方法を理解します。使用できるいくつかの簡単な戦略を共有し、どちらがより優れているかを理解するためにテストします。
preview
Controlsクラスを使用してインタラクティブなMQL5ダッシュボード/パネルを作成する方法(第2回):ボタンの応答性の追加

Controlsクラスを使用してインタラクティブなMQL5ダッシュボード/パネルを作成する方法(第2回):ボタンの応答性の追加

この記事では、ボタンの応答性を有効にすることで、静的なMQL5ダッシュボードパネルをインタラクティブなツールへと変換することに焦点を当てます。GUIコンポーネントの機能を自動化し、ユーザーのクリックに適切に反応する方法を探究します。この記事の最後には、ユーザーのエンゲージメントと取引体験を向上させる動的なインターフェイスを構築します。
DoEasyライブラリでの価格(第60部): 銘柄ティックデータのシリーズリスト
DoEasyライブラリでの価格(第60部): 銘柄ティックデータのシリーズリスト

DoEasyライブラリでの価格(第60部): 銘柄ティックデータのシリーズリスト

本稿では、単一銘柄のティックデータを格納するためのリストを作成し、EAでの必要なデータの作成と取得を確認します。さらに、使用される銘柄ごとの個別のティックデータリストでティックデータのコレクションを構成します。
preview
モデル解釈をマスターする:機械学習モデルからより深い洞察を得る

モデル解釈をマスターする:機械学習モデルからより深い洞察を得る

機械学習は複雑で、経験を問わず誰にとってもやりがいのある分野です。この記事では、構築されたモデルを動かす内部メカニズムに深く潜り込み、複雑な特徴、予測、そしてインパクトのある決断の世界を探求し、複雑さを解きほぐし、モデルの解釈をしっかりと把握します。トレードオフをナビゲートし、予測を強化し、確実な意思決定をおこないながら特徴の重要性をランク付けする技術を学びます。この必読書は、機械学習モデルからより多くのパフォーマンスを引き出し、機械学習手法を採用することでより多くの価値を引き出すのに役立ちます。
preview
ニューラルネットワークの実験(第2回):スマートなニューラルネットワークの最適化

ニューラルネットワークの実験(第2回):スマートなニューラルネットワークの最適化

この記事では、実験と非標準的なアプローチを使用して、収益性の高い取引システムを開発し、ニューラルネットワークがトレーダーに役立つかどうかを確認します。ニューラルネットワークを取引に活用するための自給自足ツールとしてMetaTrader 5を使用します。
preview
MQL5行列を使用した誤差逆伝播法によるニューラルネットワーク

MQL5行列を使用した誤差逆伝播法によるニューラルネットワーク

この記事では、行列を使用してMQL5で誤差逆伝播法(バックプロパゲーション)アルゴリズムを適用する理論と実践について説明します。スクリプト、インジケータ、エキスパートアドバイザー(EA)の例とともに、既製のクラスが提示されます。
preview
リプレイシステムの開発—市場シミュレーション(第2回):最初の実験(II)

リプレイシステムの開発—市場シミュレーション(第2回):最初の実験(II)

今回は、1分という目標を達成するために、別の方法を試してみましょう。ただし、このタスクは思っているほど単純ではありません。
preview
MQL5でJanus factorを実装する

MQL5でJanus factorを実装する

ゲイリー・アンダーソンは、「Janus factor」と名付けた理論に基づく市場分析法を開発しました。この理論は、トレンドを明らかにし、市場リスクを評価するために使用できる一連の指標を記述するものです。今回は、これらのツールをMQL5で実装してみます。
preview
MQL5での価格バーの並べ替え

MQL5での価格バーの並べ替え

この記事では、価格バーを並べ替えるアルゴリズムを紹介し、EAの潜在的な購入者を欺くためにストラテジーのパフォーマンスが捏造された事例を認識するために並べ替えテストをどのように使用できるかを詳述します。
preview
日足レンジブレイクアウト戦略に基づくMQL5 EAの作成

日足レンジブレイクアウト戦略に基づくMQL5 EAの作成

この記事では、日足レンジブレイクアウト(Daily Range Breakout)戦略に基づいてMQL5エキスパートアドバイザー(EA)を作成します。戦略の重要な概念を説明し、EAの設計図を設計し、MQL5でブレイクアウトロジックを実装します。最後に、EAの効果を最大限に引き出すためのバックテストと最適化の手法について探ります。
preview
MQL5の圏論(第5回)等化子

MQL5の圏論(第5回)等化子

圏論は、数学の多様かつ拡大を続ける分野であり、最近になってMQL5コミュニティである程度取り上げられるようになりました。この連載では、その概念と原理のいくつかを探索して考察することで、トレーダーの戦略開発におけるこの注目すべき分野の利用を促進することを目的としたオープンなライブラリを確立することを目指しています。
preview
ニューラルネットワークが簡単に(第49回):Soft Actor-Critic

ニューラルネットワークが簡単に(第49回):Soft Actor-Critic

連続行動空間の問題を解決するための強化学習アルゴリズムについての議論を続けます。この記事では、Soft Actor-Critic (SAC)アルゴリズムについて説明します。SACの主な利点は、期待される報酬を最大化するだけでなく、行動のエントロピー(多様性)を最大化する最適な方策を見つけられることです。
preview
Candlestick Trend Constraintモデルの構築(第3回):使用中のトレンド変化の検出

Candlestick Trend Constraintモデルの構築(第3回):使用中のトレンド変化の検出

この記事では、経済ニュースの発表、投資家の行動、さまざまな要因が市場のトレンド反転にどのような影響を与えるかを探ります。ビデオによる説明もあり、MQL5のコードをプログラムに組み込むことで、トレンドの反転を検出し、警告を発し、市場の状況に応じて適切な行動を取ることができます。これは、本連載の過去の記事に基づいています。
preview
DoEasyライブラリの時系列(第49部): 複数銘柄・複数期間の複数バッファ標準指標

DoEasyライブラリの時系列(第49部): 複数銘柄・複数期間の複数バッファ標準指標

本稿では、ライブラリクラスを改善して、データを表示するために複数の指標バッファを必要とする複数銘柄・複数期間標準指標を開発する機能を実装します。
preview
DoEasyライブラリの時系列(第57部): 指標バッファデータオブジェクト

DoEasyライブラリの時系列(第57部): 指標バッファデータオブジェクト

本稿では、1つの指標に対して1つのバッファのすべてのデータを含むオブジェクトを開発します。このようなオブジェクトは、指標バッファのシリアルデータを格納するために必要になります。その助けを借りて、任意の指標のバッファデータ、および他の同様のデータを相互に並べ替えて比較できるようになります。