MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
リニアなトレーディングシステムを指数に高める
リニアなトレーディングシステムを指数に高める

リニアなトレーディングシステムを指数に高める

本稿では MQL5 プログラマーの中級者にリニアなトレーディングシステム(固定ロット)からいわゆる指数の技術を簡単に実装することでより収益を上げる方法をお伝えします。これは結果として生じる資金曲線の成長が幾何学的または指数関数で放物線の形を取ります。特にラルフ・ビンス氏によって開発された実用的な「固定比率」のポジションサイジングの MQL5 のバリアントを実装します。
自動取引のためのバーチャル・プライベート・サーバー(VPS)の実用
自動取引のためのバーチャル・プライベート・サーバー(VPS)の実用

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

VPS による自動取引本稿は自動トレーダーは自動取引を支持する方を対象としています。
preview
母集団最適化アルゴリズム:差分進化(DE)

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

この記事では、これまでに取り上げたアルゴリズムの中で最も議論の的となっているアルゴリズム、差分進化(DE)アルゴリズムについて考察します。
preview
MQL5:あなたもこの言語の達人になれます

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

この記事は自己インタビューのようなもので、私がどのようにMQL5言語への第一歩を踏み出したかをお話しします。どうすれば優れたMQL5プログラマーになれるかをお見せして、この偉業を達成するために必要なベースについて説明します。唯一の前提条件は学ぶ意欲です。
preview
Rebuyのアルゴリズム:効率を上げるための数学モデル

Rebuyのアルゴリズム:効率を上げるための数学モデル

この記事では、取引システムの効率をより深く理解するためにRebuyアルゴリズムを使用し、数学と論理を使用して取引効率を向上させる一般的な原則に着手し、どのような取引システムでも制約なく使用するという観点から、最も非標準的な、効率を高める方法を適用します。
preview
データサイエンスとML(第42回):PythonでARIMAを用いた外国為替時系列予測、知っておくべきことすべて

データサイエンスとML(第42回):PythonでARIMAを用いた外国為替時系列予測、知っておくべきことすべて

ARIMAは自己回帰和分移動平均(Auto Regressive Integrated Moving Average)の略称で、強力な従来の時系列予測モデルです。このモデルは、時系列データ内の急上昇や変動を検出する機能により、次の値を正確に予測できます。この記事では、ARIMAが何であるか、どのように機能するか、市場での次の価格を高い精度で予測する際に何ができるかなどについて説明します。
preview
StringFormat():レビューと既成の例

StringFormat():レビューと既成の例

この記事では、PrintFormat()関数のレビューを続けます。StringFormat()を使った文字列の書式設定と、そのプログラムでのさらなる使用法について簡単に説明します。また、ターミナル操作ログに銘柄データを表示するためのテンプレートも作成します。この記事は、初心者にも経験豊富な開発者にも役立つでしょう。
DoEasyライブラリのグラフィックス(第87部): グラフィカルオブジェクトコレクション - プロパティ変更の管理
DoEasyライブラリのグラフィックス(第87部): グラフィカルオブジェクトコレクション - プロパティ変更の管理

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

本稿では、標準のグラフィカルオブジェクトイベントの追跡作業を継続し、ユーザがターミナルで開いたチャートに配置されたグラフィカルオブジェクトのプロパティの変更を制御できる機能を作成します。
preview
データサイエンスと機械学習(第27回):MetaTrader 5取引ボットにおける畳み込みニューラルネットワーク(CNN)に価値はあるか?

データサイエンスと機械学習(第27回):MetaTrader 5取引ボットにおける畳み込みニューラルネットワーク(CNN)に価値はあるか?

畳み込みニューラルネットワーク(CNN)は、画像や映像のパターンを検出する能力に優れていることで有名で、さまざまな分野に応用されています。この記事では、金融市場の価値あるパターンを識別し、MetaTrader 5取引ボットのための効果的な取引シグナルを生成するCNNの可能性を探ります。このディープマシンラーニングの手法を、よりスマートな取引判断のためにどのように活用できるかを見てみましょう。
MQL5の電子テーブル
MQL5の電子テーブル

MQL5の電子テーブル

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

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

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

ケリー基準とモンテカルロシミュレーションを使用したポートフォリオリスクモデル

数十年にわたり、トレーダーは破産リスクを最小限に抑えつつ長期的な資産成長を最大化する手法として、ケリー基準の公式を活用してきました。しかし、単一のバックテスト結果に基づいてケリー基準を盲目的に適用することは、個人トレーダーにとって非常に危険です。というのも、実際の取引では時間の経過とともに取引優位性が薄れ、過去の実績は将来の結果を保証するものではないからです。本記事では、Pythonによるモンテカルロシミュレーションの結果を取り入れ、MetaTrader 5上で1つ以上のエキスパートアドバイザー(EA)にケリー基準を現実的に適用するためのリスク配分アプローチを紹介します。
一般的トレーディングシステムを基にした Expert Advisors と売買ロボット最適化の錬金術(パート5)
一般的トレーディングシステムを基にした Expert Advisors と売買ロボット最適化の錬金術(パート5)

一般的トレーディングシステムを基にした Expert Advisors と売買ロボット最適化の錬金術(パート5)

本稿では、先行記事で説明したトレーディングシステムを改良する方法を提供します。本稿は、Expert Advisor のプログラミング経験がいくらかすでにお持ちのトレーダーの方々にとって興味深いものとなるでしょう。
Connecting NeuroSolutions Neuronets
Connecting NeuroSolutions Neuronets

Connecting NeuroSolutions Neuronets

ニューロネットの作成に加え、NeuroSolutions ソフトウェアスウィートによりそれらを DLLとしてエクスポートすることが可能となります。本稿では、ニューロネット作成とDLL生成とそれを MetaTrader 5でのトレーディングのためExpert Advisor に連携する手順について述べています。
preview
時系列マイニングのためのデータラベル(第6回):ONNXを使用したEAへの応用とテスト

時系列マイニングのためのデータラベル(第6回):ONNXを使用したEAへの応用とテスト

この連載では、ほとんどの人工知能モデルに適合するデータを作成できる、時系列のラベル付け方法をいくつかご紹介します。ニーズに応じて的を絞ったデータのラベル付けをおこなうことで、訓練済みの人工知能モデルをより期待通りの設計に近づけ、モデルの精度を向上させ、さらにはモデルの質的飛躍を助けることができます。
RSS フィードによるトレードシグナルの送信
RSS フィードによるトレードシグナルの送信

RSS フィードによるトレードシグナルの送信

みなさんのコミュニティのメンバーと今すぐコミュニケーションをする有名な方法である RSS FEEDS として、トレードシグナルを送信する方法は私のアイデアです。
preview
エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第1部):オシレーター

エキスパートアドバイザー(EA)に指標を追加するための既製のテンプレート(第1部):オシレーター

この記事では、オシレーターカテゴリから標準的な指標を検討します。パラメータの宣言と設定、指標の初期化と初期化解除、EAの指標バッファからのデータとシグナルの受信など、EAですぐに使用できるテンプレートを作成します。
マーケット価格予測に対する汎用回帰モデル(第2部): 自然、技術、社会の過渡関数
マーケット価格予測に対する汎用回帰モデル(第2部): 自然、技術、社会の過渡関数

マーケット価格予測に対する汎用回帰モデル(第2部): 自然、技術、社会の過渡関数

本稿は前稿からの論理的続編で、最初の記事で出された結論を確認する事実にハイライトを当てています。これらの事実は、その出版後10年以内に明らかになったもので、マーケット価格変化のパターンを説明する3つの検出された動的過渡関数を中心としています。
MQL5 クックブック:オーバーフィットの影響低減とクオート不足への対処
MQL5 クックブック:オーバーフィットの影響低減とクオート不足への対処

MQL5 クックブック:オーバーフィットの影響低減とクオート不足への対処

どのようなトレーディング戦略を使っていようと、将来の収益を確保するためどのパラメータを選択すべきかという疑問は常にあるものです。本稿は同時に複数のシンボルパラメータを最適化する機能を備えたExpert Advisor 例を提供します。この方法はパラメータのオーバーフィットによる影響を軽減し、1個のシンボルからのデータが調査に十分でない場合に対処するものです。
preview
データサイエンスと機械学習(第14回):コホネンマップを使って市場で自分の道を見つける

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

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

MQL5で動的な多銘柄多期間の相対力指標(RSI)指標ダッシュボードを作成する

この記事では、MQL5を使用して、動的に複数の銘柄と時間枠にわたるRSI指標のダッシュボードを開発し、トレーダーにリアルタイムでRSI値を提供する方法を解説します。このダッシュボードには、インタラクティブなボタン、リアルタイム更新、色分けされた指標が搭載されており、トレーダーがより的確な意思決定をおこなうためのサポートをします。
preview
初心者からエキスパートへ:ローソク足のプログラミング

初心者からエキスパートへ:ローソク足のプログラミング

この記事では、MQL5プログラミングの第一歩を、完全な初心者でも理解できるように解説します。よく知られているローソク足パターンを、実際に機能するカスタムインジケーターへと変換する方法を紹介します。ローソク足パターンは、実際の価格変動を反映し、市場の転換を示唆するため、非常に有用です。チャートを目視で確認してパターンを探す手法ではミスや非効率が生じやすいため、この記事では、パターンを自動的に識別・ラベル付けしてくれるインジケーターを作成する方法を説明します。その過程で、インデックス(索引)、時系列、ATR(市場の変動性に応じた精度向上のため)などの重要な概念についても解説し、今後のプロジェクトで再利用可能なカスタムローソク足パターンライブラリの開発にも触れていきます。
preview
プライスアクション分析ツールキットの開発(第19回):ZigZag Analyzer

プライスアクション分析ツールキットの開発(第19回):ZigZag Analyzer

すべてのプライスアクショントレーダーは、トレンドを確認し、転換点や継続の可能性があるレベルを見つけるために、トレンドラインを手動で使用します。本連載では、市場分析を簡単にするために、傾斜トレンドラインを描画することに特化したツールを紹介します。このツールは、トレーダーが効果的なプライスアクション評価に不可欠な主要トレンドとレベルを明確に示すことで、分析プロセスを簡素化します。
新しいカレンダーの表示
新しいカレンダーの表示

新しいカレンダーの表示

本稿では、外部インターネットリソースからの主要な経済的イベントを作業エリアに表示するシンプルで便利なインディケータを書くことについて説明します。
preview
初心者からエキスパートへ:MQL5での共同デバッグ

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

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

最後の改革

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

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

今回は、個々のチャートにロボットの各インスタンスを設定する必要がなく、1つのチャートにのみ接続された状態で複数のチャートで使用できる汎用MetaTraderロボットを作成するための簡単なテンプレートについて考えてみます。
preview
初心者からエキスパートへ:Reporting EAで詳細な取引レポートをマスターする

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

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

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

市場がしまっているときに研究したり、市場の状況をシミュレーションしたりできるシステムを作成してはどうでしょうか。ここで、このトピックを扱う新しい連載を開始します。
preview
ニュース取引が簡単に(第1回):データベースの作成

ニュース取引が簡単に(第1回):データベースの作成

ニュース取引は複雑で圧倒されるかもしれませんが、この記事ではニュースデータを入手する手順を説明し、さらに、MQL5経済指標カレンダーとその特徴についても学びます。
preview
MetaTrader 5をPostgreSQLに接続する方法

MetaTrader 5をPostgreSQLに接続する方法

この記事では、MQL5コードをPostgresデータベースに接続するための4つの方法について説明し、そのうちの1つであるREST APIの開発環境をWindows Subsystem For Linux (WSL)を使用して設定するためのステップバイステップのチュートリアルを提供します。APIのデモアプリが、データを挿入してそれぞれのテーブルにクエリを実行するための対応MQL5コード、このデータを使用するためのデモエキスパートアドバイザー(EA)とともに提供されます。
誤った考え、パート2統計は、偽りの科学か、暴落するなくてはならない歴史です。
誤った考え、パート2統計は、偽りの科学か、暴落するなくてはならない歴史です。

誤った考え、パート2統計は、偽りの科学か、暴落するなくてはならない歴史です。

統計的なメソッドに客観的な現実、つまり金融上の出来事に適用とする試みは、不十分なデータや、確率分布やプロセスの非定常性に直面し、虚しく失敗してしまっています。この記事では、そのような金融上の出来事ではなく、主観的な意見を記述し、トレーダーがどのようにこれらを防ごうとしたか、トレーダーシステムについて記述します。トレーディング結果の統計的な規則性の抽出は、むしろ大変面白い作業です。時折、このプロセスのそのモデルに関する結論が導かれ、これらがトレーディングシステムに適用されます。
グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)
グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)

グラフィカルインタフェースX:レンダーテーブルの新機能(ビルド9)

今日までは、ライブラリの最も高度なテーブルはCTableでした。このテーブルは、OBJ_EDIT型のエディットボックスから組み立てられており、さらなる開発は難しいです。したがって、機能の最大化においては、ライブラリ開発の現段階を考慮しても、CCanvasTable型のレンダーテーブルを開発する方が賢明です。その現バージョンはまったく使えない状態ですが、この記事から始めて状況を改善していきましょう。
preview
MQL5取引ツールキット(第1回):ポジション管理EX5ライブラリ

MQL5取引ツールキット(第1回):ポジション管理EX5ライブラリ

MQL5で様々なポジション操作を管理するための開発者用ツールキットの作成方法をご紹介します。この記事では、MQL5でポジション管理タスクを処理する際に発生するさまざまなエラーの自動処理とレポートも含め、簡単なものから高度なものまでポジション管理操作を実行する関数ライブラリ(ex5)の作成方法を紹介します。
preview
DoEasy - コントロール(第31部):ScrollBarコントロールのコンテンツのスクロール

DoEasy - コントロール(第31部):ScrollBarコントロールのコンテンツのスクロール

この記事では、水平スクロールバーのボタンを使用してコンテナのコンテンツをスクロールする機能を実装します。
preview
MQL5入門(第4部):構造体、クラス、時間関数をマスターする

MQL5入門(第4部):構造体、クラス、時間関数をマスターする

最新記事でMQL5プログラミングの秘密を解き明かしましょう。構造体、クラス、時間関数の本質に迫り、コーディングの旅に力を与えます。初心者から経験豊富な開発者まで、個のガイドは、MQL5をマスターするための貴重な洞察を提供し、複雑な概念を簡素化します。プログラミングのスキルを高め、アルゴリズム取引の世界で一歩先を行きましょう。
トレーダーは開発者によるサービスを必要とするのでしょうか?
トレーダーは開発者によるサービスを必要とするのでしょうか?

トレーダーは開発者によるサービスを必要とするのでしょうか?

アルゴリズムによるトレードが人気になり求められ、珍しいアルゴリズムや変わった作業への需要につながりました。ある程度、そのような複雑なアプリケーションは、Code BaseやMarketにて取得できます。トレーダーは、これらのアプリケーションに数クリックでアクセスできますが、これらは完全に彼らの要求を満たすことができないこともあります。その場合、トレーダーは、MQL5 Freelanceセクションにて望ましいアプリケーションを作成できる開発者を探し、注文を行います。
preview
ニューラルネットワークが簡単に(第58回):Decision Transformer (DT)

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

強化学習の手法を引き続き検討します。この記事では、一連の行動を構築するパラダイムでエージェントの方策を考慮する、少し異なるアルゴリズムに焦点を当てます。
preview
ダイナミックマルチペアEAの形成(第1回):通貨相関と逆相関

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

ダイナミックマルチペアEAは、相関戦略と逆相関戦略の両方を活用し、取引パフォーマンスの最適化を図ります。リアルタイムの市場データを分析することで、通貨ペア間の相関関係や逆相関関係を特定し、それらを取引に活かします。
preview
MQL5の圏論(第6回):単射的引き戻しと全射的押し出し

MQL5の圏論(第6回):単射的引き戻しと全射的押し出し

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