MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
機械学習や取引におけるメタモデル:取引注文のオリジナルタイミング

機械学習や取引におけるメタモデル:取引注文のオリジナルタイミング

機械学習におけるメタモデル:人間がほとんど介在しない取引システムの自動作成 - いつ、どのように取引をおこなうかはモデルが自ら決定します。
DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス
DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス

DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス

本稿からチャートオブジェクトコレクションクラスの開発を開始します。このクラスでは、サブウィンドウと指標とともにチャートオブジェクトのコレクションリストを保存し、選択したチャートとそのサブウィンドウ、または複数のチャートのリストを一度に操作する機能を提供します。
トレーダミネーター 3:売買ロボットの台頭
トレーダミネーター 3:売買ロボットの台頭

トレーダミネーター 3:売買ロボットの台頭

記事 "Dr. Tradelove..." で Expert Advisorを作成しました。それは選択済みのトレーディングシステムのパラメータを自立的に最適化するものです。それ以上に EAにある一つのトレーディングシステムのパラメータだけを最適化するのではなく、複数あるトレーディングシステムから最良のものを選ぶExpert Advisorを作成しようと決めました。それがどうなったか見ていきます。
DoEasyライブラリの時系列(第47部): 複数銘柄・複数期間標準指標
DoEasyライブラリの時系列(第47部): 複数銘柄・複数期間標準指標

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

この記事では、標準指標を操作する方法の開発を開始します。これにより、最終的には、ライブラリクラスに基づいて複数銘柄の複数期間の標準指標を作成できるようになります。さらに、「スキップされたバー」イベントを時系列クラスに追加し、ライブラリ準備関数をCEngineクラスに移動することで、メインプログラムコードからの過度の負荷を排除します。
preview
独自のLLMをEAに統合する(第4部):GPUを使った独自のLLMの訓練

独自のLLMをEAに統合する(第4部):GPUを使った独自のLLMの訓練

今日の人工知能の急速な発展に伴い、言語モデル(LLM)は人工知能の重要な部分となっています。私たちは、強力なLLMをアルゴリズム取引に統合する方法を考える必要があります。ほとんどの人にとって、これらの強力なモデルをニーズに応じて微調整し、ローカルに展開して、アルゴリズム取引に適用することは困難です。本連載では、この目標を達成するために段階的なアプローチをとっていきます。
preview
ニューラルネットワークが簡単に(第26部):強化学習

ニューラルネットワークが簡単に(第26部):強化学習

機械学習の手法の研究を続けます。今回からは、もう1つの大きなテーマである「強化学習」を始めます。この方法では、モデルは問題を解決するためのある種の戦略を設定することができます。この強化学習の特性は、取引戦略を構築する上で新たな地平を切り開くものと期待されます。
preview
MQL5入門(第11回):MQL5の組み込みインジケーターの操作に関する初心者向けガイド(II)

MQL5入門(第11回):MQL5の組み込みインジケーターの操作に関する初心者向けガイド(II)

RSI、MA、ストキャスティクスなどの複数のインジケーターを使用してMQL5でエキスパートアドバイザー(EA)を開発し、隠れた強気および弱気のダイバージェンスを検出する方法を学びます。教育目的で、詳細な例および完全にコメントされたソースコードを用いて、効果的なリスク管理を実装し、取引を自動化する方法をご紹介します。
preview
自動で動くEAを作る(第15回):自動化(VII)

自動で動くEAを作る(第15回):自動化(VII)

自動化に関するこの連載を完結させるために、前回に引き続きトピックについて説明しましょう。EAを時計仕掛けのように動かすために、すべてがどのように組み合わされるかを見ていきます。
preview
MetaTraderのMultibot:1つのチャートから複数のロボットを起動させる

MetaTraderのMultibot:1つのチャートから複数のロボットを起動させる

今回は、個々のチャートにロボットの各インスタンスを設定する必要がなく、1つのチャートにのみ接続された状態で複数のチャートで使用できる汎用MetaTraderロボットを作成するための簡単なテンプレートについて考えてみます。
preview
知っておくべきMQL5ウィザードのテクニック(第42回):ADXオシレーター

知っておくべきMQL5ウィザードのテクニック(第42回):ADXオシレーター

ADXは、一部のトレーダーが一般的なトレンドの強さを測定するために使用する、もう1つの比較的人気のあるテクニカルインジケーターです。これは他の2つのインジケーターの組み合わせとして機能し、オシレーターとして表示されます。この記事では、MQL5ウィザードアセンブリとそのサポートクラスを使用して、そのパターンについて説明します。
preview
データサイエンスと機械学習(第08回)::簡単なMQL5でのK平均法

データサイエンスと機械学習(第08回)::簡単なMQL5でのK平均法

データサイエンティストやトレーダーにとってデータマイニングは非常に重要です。多くの場合、データは私たちが思っているほど単純ではありません。人間の目は、データセット内のささいな基本パターンと関係を理解できません。k平均法アルゴリズムがその助けになるかもしれません。調べてみましょう...
preview
データサイエンスと機械学習(第11回):単純ベイズ、取引における確率論

データサイエンスと機械学習(第11回):単純ベイズ、取引における確率論

確率を利用した取引は綱渡りのようなもので、正確さとバランス、そしてリスクに対する鋭い理解が必要です。取引の世界では、確率がすべてです。確率は、成功と失敗、利益と損失の違いになります。確率の力を活用することで、トレーダーは十分な情報に基づいた意思決定をおこない、リスクを効果的に管理し、経済的目標を達成することができます。つまり、経験豊富な投資家であれ、初心者のトレーダーであれ、確率を理解することは、取引の可能性を引き出す鍵になるのです。この記事では、確率を利用したエキサイティングな取引の世界を探求し、取引ゲームを次のレベルに引き上げる方法を紹介します。
preview
初心者からエキスパートへ:Reporting EAで詳細な取引レポートをマスターする

初心者からエキスパートへ:Reporting EAで詳細な取引レポートをマスターする

本記事では、取引レポートの内容をより充実させ、最終レポートをPDF形式としてメール配信する方法について解説します。これは前回の記事からさらに一歩踏み込んだ内容であり、MQL5とPythonを組み合わせて、より便利でプロフェッショナルな形式の取引レポートを生成し、スケジュールする方法を継続して探求するものです。本記事を通じて、MQL5エコシステム内で取引レポート生成を最適化するための知見を得ていただければ幸いです。
Connecting NeuroSolutions Neuronets
Connecting NeuroSolutions Neuronets

Connecting NeuroSolutions Neuronets

ニューロネットの作成に加え、NeuroSolutions ソフトウェアスウィートによりそれらを DLLとしてエクスポートすることが可能となります。本稿では、ニューロネット作成とDLL生成とそれを MetaTrader 5でのトレーディングのためExpert Advisor に連携する手順について述べています。
preview
MQL5:あなたもこの言語の達人になれます

MQL5:あなたもこの言語の達人になれます

この記事は自己インタビューのようなもので、私がどのようにMQL5言語への第一歩を踏み出したかをお話しします。どうすれば優れたMQL5プログラマーになれるかをお見せして、この偉業を達成するために必要なベースについて説明します。唯一の前提条件は学ぶ意欲です。
われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか
われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか

われわれはいかにして MetaTrader シグナルサービスとソーシャルトレーディングを発展させたのでしょうか

われわれはシグナルサービスを強化し、メカニズムを改良し、新しい関数を追加し、欠陥を修正し続けています。2012年の MetaTrader シグナルサービスと現在の MetaTrader シグナルサービスはまったく異なる2つのサービスのようなものです。現在、特定バージョンの MetaTrader クライアントターミナルをサポートするサーバーのネットワークで構成される仮想ホスティングクラウドサービスを導入中です。
DoEasyライブラリの時系列(第45部): 複数期間指標バッファ
DoEasyライブラリの時系列(第45部): 複数期間指標バッファ

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

本稿では、複数期間モードと複数銘柄モードで使用する指標バッファオブジェクトおよびコレクションクラスの改善を始めます。現在の銘柄チャートの任意の時間枠からデータを受信して表示するためのバッファオブジェクトの使用を検討するつもりです。
preview
データサイエンスと機械学習(第14回):コホネンマップを使って市場で自分の道を見つける

データサイエンスと機械学習(第14回):コホネンマップを使って市場で自分の道を見つける

複雑で変化し続ける市場をナビゲートする、最先端の取引アプローチをお探しですか。人工ニューラルネットワークの革新的な形態であるコホネンマップは、市場データの隠れたパターンやトレンドを発見するのに役立ちます。この記事では、コホネンマップがどのように機能するのか、そして、より賢く、より効果的な取引戦略を開発するために、どのように活用できるのかを探ります。経験豊富なトレーダーも、これから取引を始める人も、このエキサイティングな新しいアプローチを見逃す手はありません。
preview
ニューラルネットワークが簡単に(第37回):スパースアテンション(Sparse Attention)

ニューラルネットワークが簡単に(第37回):スパースアテンション(Sparse Attention)

前回は、アテンションメカニズムをアーキテクチャーに用いたリレーショナルモデルについて説明しました。これらのモデルの特徴の1つは、コンピューティングリソースを集中的に利用することです。今回は、セルフアテンションブロック内部の演算回数を減らす仕組みの1つについて考えてみたいと思います。これにより、モデルの一般的なパフォーマンスが向上します。
preview
ダイナミックマルチペアEAの形成(第1回):通貨相関と逆相関

ダイナミックマルチペアEAの形成(第1回):通貨相関と逆相関

ダイナミックマルチペアEAは、相関戦略と逆相関戦略の両方を活用し、取引パフォーマンスの最適化を図ります。リアルタイムの市場データを分析することで、通貨ペア間の相関関係や逆相関関係を特定し、それらを取引に活かします。
preview
PythonとMQL5でロボットを開発する(第1回):データ前処理

PythonとMQL5でロボットを開発する(第1回):データ前処理

機械学習に基づく自動売買ロボットの開発の詳細なガイドです。連載第1回は、データと特徴量の収集と準備についてです。プロジェクトは、Pythonプログラミング言語とライブラリ、およびMetaTrader 5プラットフォームを使用して実装されます。
DoEasyライブラリのグラフィックス(第86部): グラフィカルオブジェクトコレクション - プロパティ変更の管理
DoEasyライブラリのグラフィックス(第86部): グラフィカルオブジェクトコレクション - プロパティ変更の管理

DoEasyライブラリのグラフィックス(第86部): グラフィカルオブジェクトコレクション - プロパティ変更の管理

本稿では、ライブラリ内のグラフィカルオブジェクトのプロパティ値の変更の追跡とともに、削除と名前変更を検討します。
preview
MetaTrader 5用のMQTTクライアントの開発:TDDアプローチ(第4回)

MetaTrader 5用のMQTTクライアントの開発:TDDアプローチ(第4回)

この記事は、MQTTプロトコルのネイティブMQL5クライアントの開発ステップを説明する連載の第4回です。このセクションでは、MQTT v5.0のプロパティとは何か、そのセマンティクス、いくつかのプロパティの読み方について説明し、プロトコルを拡張するためにプロパティをどのように使用できるかの簡単な例を示します。
preview
MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第7回):オーサムオシレーターシグナルを持つジグザグ

MQL5を使ったシンプルな多通貨エキスパートアドバイザーの作り方(第7回):オーサムオシレーターシグナルを持つジグザグ

この記事の多通貨エキスパートアドバイザー(EA)は、オーサムオシレーター(AO、Awesome Oscillator)でフィルタされたジグザグ(ZigZag)指標を使用するまたは互いのシグナルをフィルタするEA(自動売買)です。
preview
知っておくべきMQL5ウィザードのテクニック(第39回):RSI (Relative Strength Index)

知っておくべきMQL5ウィザードのテクニック(第39回):RSI (Relative Strength Index)

RSIは、モメンタムオシレーターとして人気があり、最近の価格変動のペースと大きさを測定し、証券価格の過大評価と過小評価の状況を評価します。スピードと大きさに関するこれらの洞察は、反転ポイントを定義する上で鍵となります。このオシレーターを別のカスタムシグナルクラスで動作させ、そのシグナルの特徴を調べてみましょう。まず、ボリンジャーバンドについてのまとめから始めます。
MetaTrader マーケットの概要(インフォグラフィック)
MetaTrader マーケットの概要(インフォグラフィック)

MetaTrader マーケットの概要(インフォグラフィック)

数週間前「フリーランス」サービスのインフォグラフィックを公表しました。また「マーケット」の統計をいくつか明らかにすることを約束しました。ここでわれわれが収集したデータの検討にみなさんをご招待します。
preview
市場シミュレーション:ポジション表示(III)

市場シミュレーション:ポジション表示(III)

以前の記事では、ZOrderプロパティに値を設定する必要がある場合があることについて説明しました。しかし、なぜでしょうか。チャートにオブジェクトを追加する多くのコードが、このプロパティを使用していない、より正確に言えば、このプロパティに値を定義していないからです。すべてのプログラマーが何をすべきか、あるいはすべきでないか、また、どのようにコードを書くべきか、あるいは書くべきでないかを私が決めるために、ここにいるわけではありません。私は、読者の皆さん、そしてこれらの処理が内部でどのように動作しているのかを本当に理解したいすべての方々に対して、実際に舞台裏で何が起こっているのかを示すために、ここにいます。
preview
MQL5とデータ処理パッケージの統合(第2回):機械学習と予測分析

MQL5とデータ処理パッケージの統合(第2回):機械学習と予測分析

本連載では、MQL5とデータ処理パッケージの統合について考察し、機械学習と予測分析の強力な組み合わせを深掘りします。MQL5と一般的な機械学習ライブラリをシームレスに接続することで、金融市場向けの高度な予測モデルを実現する方法を探ります。
最後の改革
最後の改革

最後の改革

トレーディングターミナルを見てください。価格の提示はどのような意味に見えますか?バー、ろうそく足、罫線私たちは価格からしか利益を得ない一方、時間と価格の両方を追求しています。市場を分析する際に、価格のみに注意を向けるだけで良いのでしょうか?この記事は、(「3目並べ」)ポイント・フィギュアチャート作成のためのスクリプトとアルゴリズムを提唱します。記されている推奨にて、記載されている実用的な使用方法の様々な価格パターンを考察していきます。
自動取引のためのバーチャル・プライベート・サーバー(VPS)の実用
自動取引のためのバーチャル・プライベート・サーバー(VPS)の実用

自動取引のためのバーチャル・プライベート・サーバー(VPS)の実用

VPS による自動取引本稿は自動トレーダーは自動取引を支持する方を対象としています。
拡張MACD分析に基づいたトレーダーアシスタント
拡張MACD分析に基づいたトレーダーアシスタント

拡張MACD分析に基づいたトレーダーアシスタント

トレーダーアシスタントが、いかなるタイムフレームでの実際のトレーディングの最後の3つのバーにおいて、MACDステータスの拡張分析に基づいて、オープンポジションの判断を手伝います。バックテスティングにも使用できます。
preview
MetaTrader 5をPostgreSQLに接続する方法

MetaTrader 5をPostgreSQLに接続する方法

この記事では、MQL5コードをPostgresデータベースに接続するための4つの方法について説明し、そのうちの1つであるREST APIの開発環境をWindows Subsystem For Linux (WSL)を使用して設定するためのステップバイステップのチュートリアルを提供します。APIのデモアプリが、データを挿入してそれぞれのテーブルにクエリを実行するための対応MQL5コード、このデータを使用するためのデモエキスパートアドバイザー(EA)とともに提供されます。
有用なテクノロジーカクテルでYour MQL5 顧客を驚嘆させる!
有用なテクノロジーカクテルでYour MQL5 顧客を驚嘆させる!

有用なテクノロジーカクテルでYour MQL5 顧客を驚嘆させる!

MQL5 はプログラマーに関数の完全セットとオブジェクト指向API を提供します。それらのお陰でプログラマーは MetaTrader 環境内で願うことを行うことができるのです。ただ「ウェブテクノロジー」は今日ひじょに特殊なことをしてなにか違ったもので顧客を驚かせる必要があったり、ただ MT5 「標準ライブラリ」の特定箇所をマスターする十分な時間がないなんらかの状況で救助にきてくれる極端に多才なツールです。今回の例題によりご自身の開発時間管理の仕方と同時にすばらしいテクノロジーカクテルを作成する方法を実用例をご紹介します。
preview
ニューラルネットワークが簡単に(第58回):Decision Transformer (DT)

ニューラルネットワークが簡単に(第58回):Decision Transformer (DT)

強化学習の手法を引き続き検討します。この記事では、一連の行動を構築するパラダイムでエージェントの方策を考慮する、少し異なるアルゴリズムに焦点を当てます。
preview
MQL5での移動平均をゼロから作成する:単純明快

MQL5での移動平均をゼロから作成する:単純明快

簡単な例を使って、移動平均の計算原理を検証するとともに、移動平均を含むインジケーター計算の最適化方法について学びます。
MQL5の電子テーブル
MQL5の電子テーブル

MQL5の電子テーブル

本稿では、第一ディメンションに異なるタイプのデータを含む動的二次元配列クラスについて述べていきます。テーブル形式でデータを格納すると、整理の幅広い問題を解決し、異なるタイプの広範囲におよぶ情報を格納および処理するのに好都合です。テーブルに連携する機能性を実装するクラスのソースコードは本稿に添付があります。
preview
リプレイシステムの開発—市場シミュレーション(第1回):最初の実験(I)

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

市場がしまっているときに研究したり、市場の状況をシミュレーションしたりできるシステムを作成してはどうでしょうか。ここで、このトピックを扱う新しい連載を開始します。
preview
データサイエンスと機械学習(第15回):SVM、すべてのトレーダーのツールボックスの必須ツール

データサイエンスと機械学習(第15回):SVM、すべてのトレーダーのツールボックスの必須ツール

取引の未来を形作るサポートベクターマシン(SVM)の不可欠な役割をご覧ください。この包括的なガイドブックでは、SVMがどのように取引戦略を向上させ、意思決定を強化し、金融市場における新たな機会を解き放つことができるかを探求しています。実際のアプリケーション、ステップバイステップのチュートリアル、専門家の洞察でSVMの世界に飛び込みましょう。現代の複雑な取引をナビゲートするのに不可欠なツールを装備してください。SVMはすべてのトレーダーのツールボックスの必需品です。
preview
初心者からエキスパートへ:MQL5での共同デバッグ

初心者からエキスパートへ:MQL5での共同デバッグ

問題解決は、MQL5でのプログラミングのような複雑なスキルを習得するための簡潔なルーチンを確立することができます。このアプローチでは、問題解決に集中しながら、同時にスキルアップを図ることができます。問題に取り組めば取り組むほど、高度な専門知識が脳に伝達されます。個人的には、デバッグはプログラミングをマスターするための最も効果的な方法だと思っています。今日は、コードクリーニングのプロセスを紹介し、乱雑なプログラムをクリーンで機能的なものに変えるための最善のテクニックについて解説します。この記事を読んで、貴重な洞察を発見してください。
モメンタムによるトレーディングシステムの設計方法を学ぶ
モメンタムによるトレーディングシステムの設計方法を学ぶ

モメンタムによるトレーディングシステムの設計方法を学ぶ

前回は、価格の方向性であるトレンドを見極めることの重要性について述べました。この記事では、最も重要な概念と指標の1つであるモメンタム指標を紹介します。このモメンタム指標に基づいたトレーディングシステムの設計方法を紹介します。