MQL5言語での自動売買ロボットのプログラミングと使用に関する記事

icon

MetaTraderプラットフォームのために作られたExpert Advisorsは、開発者により導入された様々な機能を実行します。自動売買ロボットは1日24時間、通貨をトラックし、取引をコピーし、レポートを送信し、ニュースを分析し、 特別に作成されたグラフィカルインターフェイスを提供することができます。

記事はプログラミングのテクニック、データ処理のための数学的なアイデア、自動売買ロボットの開発と発注についてのヒントを記載します。

新しい記事を追加
最新 | ベスト
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第18部): 口座オブジェクトとその他のライブラリオブジェクトの相互作用
MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第18部): 口座オブジェクトとその他のライブラリオブジェクトの相互作用

MetaTraderプログラムを簡単かつ迅速に開発するためのライブラリ(第18部): 口座オブジェクトとその他のライブラリオブジェクトの相互作用

本稿では、口座オブジェクトの作業をすべてのライブラリオブジェクトの新しい基本オブジェクトに配置します。また、CBaseObj基本オブジェクトを改善し、追跡パラメータの設定とライブラリオブジェクトイベント受信をテストします。
古典的な隠れたダイバージェンスを解釈する新しいアプローチ第2部
古典的な隠れたダイバージェンスを解釈する新しいアプローチ第2部

古典的な隠れたダイバージェンスを解釈する新しいアプローチ第2部

本稿では、さまざまな指標のレギュラーダイバージェンスと効率性について批判的に検討します。さらに、分析の精度を高めるためのフィルタリングオプションと、非標準ソリューション機能の説明が含まれています。 その結果、技術的なタスクを解決するための新しいツールを作成します。
クロスプラットフォームグリッドEAの開発(パートIII):マーチンゲールによる補正ベースのグリッド
クロスプラットフォームグリッドEAの開発(パートIII):マーチンゲールによる補正ベースのグリッド

クロスプラットフォームグリッドEAの開発(パートIII):マーチンゲールによる補正ベースのグリッド

この記事では、可能な限り最高のグリッドベースのEAの開発に取り組みます。 いつものように、MetaTrader4とMetaTrader5の両方で動作することができるクロスプラットフォームEAになります。 当初このEAは、長期間にわたって利益を上げることができませんでしたが、それ以外は良好でした。 2番目となるこのEAは、数年以上にわたって動作する可能性があります。 しかし、残念ながら、最大ドローダウンが50%未満で、年間利益の50%以上の条件は得ることができませんでした。
クロスプラットフォームグリッドEAの開発(パートII):トレンド方向のレンジベースのグリッド
クロスプラットフォームグリッドEAの開発(パートII):トレンド方向のレンジベースのグリッド

クロスプラットフォームグリッドEAの開発(パートII):トレンド方向のレンジベースのグリッド

この記事では、レンジ内のトレンド方向のトレードのグリッドEAを開発します。 したがって、このEAは主に外国為替相場や商品相場に適しています。 今回のテストによると、グリッド戦略は2018年から利益を出しました。 しかし、2014-2018年の期間は残念な結果となりました。
ローソク足分析技術の研究(第3部): パターン操作のライブラリ
ローソク足分析技術の研究(第3部): パターン操作のライブラリ

ローソク足分析技術の研究(第3部): パターン操作のライブラリ

本稿の目的は、カスタムツールを作成して、前述のパターンに関する一連の情報全体を受信して使用できるようにすることです。ユーザが独自の指標、取引パネル、エキスパートアドバイザーなどで使用できるパターン関連関数のライブラリが作成されます。
トレードにおけるOLAPの適用(パート2):インタラクティブな多次元データ分析結果の可視化
トレードにおけるOLAPの適用(パート2):インタラクティブな多次元データ分析結果の可視化

トレードにおけるOLAPの適用(パート2):インタラクティブな多次元データ分析結果の可視化

この記事では、OLAP技術を使用して口座ヒストリーとトレードレポートの処理に設計されたMQLプログラム用のインタラクティブなグラフィカルインタフェースの作成について考察します。 視覚的な結果を得るために、最大化可能でスケーラブルなウィンドウ、ラバーコントロールの適応レイアウト、および図を表示するための新しいコントロールを使用します。 ビジュアライゼーション関数を提供するために、座標軸に沿った変数の選択と、集計関数、ダイアグラムタイプ、並べ替えオプションの選択を含むGUIを実装します。
トレードにおけるOLAPの適用(パート1):多次元データのオンライン分析
トレードにおけるOLAPの適用(パート1):多次元データのオンライン分析

トレードにおけるOLAPの適用(パート1):多次元データのオンライン分析

この記事では、多次元データ(OLAP)のオンライン分析のフレームワークを作成する方法、およびMQLで実装する方法、およびトレード口座ヒストリー処理の例を使用してMetaTrader環境でそのような分析を適用する方法について説明します。
クロスプラットフォームグラインドEAの開発
クロスプラットフォームグラインドEAの開発

クロスプラットフォームグラインドEAの開発

この記事では、MetaTrader4 と MetaTrader5 の両方で稼働する Expert Advisor (EA) の作成方法を扱います。 そのために、グリッドオーダーを構築するEAを開発していきます。 グラインダーズ(グリッドトレード)は、現在の価格の上に複数の指値オーダーを配置し、同時に現在の価格の下にリミットオーダーを同じ数オーダーするEAです。
CSSセレクタを使用した HTML ページからの構造化データの抽出
CSSセレクタを使用した HTML ページからの構造化データの抽出

CSSセレクタを使用した HTML ページからの構造化データの抽出

この記事では、CSS セレクタに基づいて HTML ドキュメントからデータを分析および変換するための汎用的な方法について説明します。 トレードレポート、テスターレポート、お気に入りの経済カレンダー、パブリックシグナル、アカウント監視、その他のオンラインクオートソースは MQL から直接利用可能になります。
MetaTrader5 と Python インテグレーション: データの受信と送信
MetaTrader5 と Python インテグレーション: データの受信と送信

MetaTrader5 と Python インテグレーション: データの受信と送信

包括的なデータ処理には広範なツールが必要であり、多くの場合、1つのアプリケーションのサンドボックスの範疇を超えています。 専門のプログラミング言語は、データ、統計、機械学習の処理と分析に使用されます。 データ処理の主要なプログラミング言語の1つは Python です。 この記事では、ソケットを使用して MetaTrader5 と Python を接続する方法、およびターミナル API を介してクオートを受け取る方法について説明します。
アルゴリズムトレードにおける Kohonen ニューラルネットワークの活用 パート II. 最適化と予測
アルゴリズムトレードにおける Kohonen ニューラルネットワークの活用 パート II. 最適化と予測

アルゴリズムトレードにおける Kohonen ニューラルネットワークの活用 パート II. 最適化と予測

Kohonen ネットワークを扱うために設計されたユニバーサルツールに基づいて、最適なEAパラメータを分析して選択するシステムを構築し、時系列の予測を検討します。 第 I 部では、必要なアルゴリズムを追加して、一般に公開されているニューラルネットワーククラスを修正し、改善しました。 今回はこれを実践に応用しましょう。
長期取引戦略の基盤としてのマルチンゲール
長期取引戦略の基盤としてのマルチンゲール

長期取引戦略の基盤としてのマルチンゲール

本稿では、マルチンゲールシステムについて詳細に検討します。このシステムを取引に適用できるかどうか、またリスクを最小限に抑えるための使用方法が検討されます。この単純なシステムの主な欠点は、預金全体を失う可能性があることです。マルチンゲール技術を使って取引することを決定した場合、この事実は考慮に入れられなければなりません。
ジグザグの力(第二部)データの受け取り、処理、表示の例
ジグザグの力(第二部)データの受け取り、処理、表示の例

ジグザグの力(第二部)データの受け取り、処理、表示の例

本稿の最初の部分では、変更されたジグザグ指標と、そのタイプの指標のデータを受け取るためのクラスについて説明しました。ここでは、これらのツールに基づいて指標を開発する方法を示し、ジグザグ指標によって形成されたシグナルに従って取引を行うことを特徴とするテスト用のEAを作成します。さらに、本稿ではグラフィカルユーザインタフェースを開発するためのEasyAndFastライブラリの新しいバージョンを紹介します。
強化学習におけるモンテカルロ法の応用
強化学習におけるモンテカルロ法の応用

強化学習におけるモンテカルロ法の応用

自己学習を行うEAを作成するためのReinforcement learningの適用。前回の記事では、Random Decision Forestアルゴリズムを学び、Reinforcement learning(強化学習)に基づく簡単な自己学習EAを作成しました。このアプローチの主な利点は、取引アルゴリズムを書くことの単純さと『学習」の高速性でした。強化学習(以下、単にRL)は、どのEAにも簡単に組み込むことができ、最適化のスピードを上げられます。
ジグザグの力(第一部)指標基本クラスの開発
ジグザグの力(第一部)指標基本クラスの開発

ジグザグの力(第一部)指標基本クラスの開発

多くの研究者は、価格行動の決定に十分な注意を払っていません。同時に、機械学習やニューラルネットワークなどの複雑な方法が使用されます。その場合に生じる最も重要な質問は、特定のモデルを訓練するためにどのデータを供するべきかということです。
アルゴリズムトレードにおける Kohonen ニューラルネットワークの実用的利用 パートI ツール
アルゴリズムトレードにおける Kohonen ニューラルネットワークの実用的利用 パートI ツール

アルゴリズムトレードにおける Kohonen ニューラルネットワークの実用的利用 パートI ツール

本稿では、MetaTrader5 で Kohonen マップを使用します。 改善および拡張されたクラスは、アプリケーションタスクを解決するためのツールになります。
トレンドとフラットの戦略を個別に最適化する
トレンドとフラットの戦略を個別に最適化する

トレンドとフラットの戦略を個別に最適化する

この記事では、さまざまな市場条件に対して個別に最適化する方法について説明しています。個別最適化とは、上昇トレンドと下降トレンドを別々に最適化して取引システムの最適なパラメータを決定することです。誤ったシグナルの影響を減らして収益性を向上させるために、システムは柔軟に作られています。つまり、市場の動きは常に変化を伴う為、システムには特定の設定や入力データのセットがあります。
MetaTrader5でカスタム MOEX シンボルを作成およびテストする方法
MetaTrader5でカスタム MOEX シンボルを作成およびテストする方法

MetaTrader5でカスタム MOEX シンボルを作成およびテストする方法

この記事では、MQL5 言語を使用したカスタム交換シンボルの作成について説明します。 特に、人気の Finam ウェブサイトからの為替相場を使用します。 この記事で考えられるもう1つのオプションは、カスタムシンボルの作成に使用するテキストファイルを任意の形式で動作させる方法です。 これにより、任意の財務銘柄とデータソースを操作できるようになります。 カスタムシンボルを作成した後、MetaTrader5 ストラテジーテスターのすべての関数を使用して、交換ツールのトレードアルゴリズムをテストすることができます。
ピボット・パターン:『ヘッドアンドショルダー』パターンのテスト
ピボット・パターン:『ヘッドアンドショルダー』パターンのテスト

ピボット・パターン:『ヘッドアンドショルダー』パターンのテスト

この記事は、前回のピボット・パターン:『ダブルトップ・ダブルボトム』パターンのテストの論理的な続編になります。ここでもう一つのよく知られている『ヘッドアンドショルダー』の反転パターンを検討し、2つのパターンの取引パフォーマンスを比較し、2つのパターンの取引を1つの取引システムに組み合わせてみたいと思います。
OpenCL を使用したローソク足パターンのテスト
OpenCL を使用したローソク足パターンのテスト

OpenCL を使用したローソク足パターンのテスト

この記事では、OpenCL ローソク足パターンテスターを "1 分 OHLC " モードで実装するアルゴリズムについて説明します。 また、高速かつ低速の最適化モードで起動したビルトインストラテジーテスターとの速度を比較します。
DIY マルチスレッド非同期 MQL5 WebRequest
DIY マルチスレッド非同期 MQL5 WebRequest

DIY マルチスレッド非同期 MQL5 WebRequest

この記事では、MQL5 での HTTPリクエストの処理効率を高めることができるライブラリについて説明します。 非ブロッキングモードでの WebRequest の実行は、補助チャートとEAを使用してカスタムイベントを交換し、共有リソースを読み取る追加のスレッドで実装されます。 ソースコードも同様に適用されます。
リバーシング: エントリポイントを形式化し、裁量トレードアルゴリズムを開発する
リバーシング: エントリポイントを形式化し、裁量トレードアルゴリズムを開発する

リバーシング: エントリポイントを形式化し、裁量トレードアルゴリズムを開発する

これは、リバーシングトレード戦略のシリーズの最新の記事です。 ここでは、以前の記事で不安定なテスト結果を引き起こした問題を解決します。 また、リバーシング戦略を使用して、任意の相場で裁量トレードの独自のアルゴリズムを開発し、それをテストします。
リバーシング: 最大ドローダウンの削減と他の相場のテスト
リバーシング: 最大ドローダウンの削減と他の相場のテスト

リバーシング: 最大ドローダウンの削減と他の相場のテスト

この記事では、リバーシング(反転)技術について扱います。 以前に考慮されたツールの許容レベルまで最大残高ドローダウンを削減します。 利益を減少させるかどうかを確認します。 また、株式、コモディティ、インデックス、ETF、農業相場など、他の相場でのリバース方式の実行方法も確認します。 注意として、この記事には多くの画像が含まれています!
上位100件の最適化パス(その1)最適化分析器の開発
上位100件の最適化パス(その1)最適化分析器の開発

上位100件の最適化パス(その1)最適化分析器の開発

本稿では、最適な最適化パスを選択するためのアプリケーションの開発について、いくつかのオプションを使用して説明します。 このアプリケーションは、様々な要因によって最適化結果を分類することができます。最適化パスは常にデータベースに書き込まれるため、再び最適化せずに常に新しいロボットパラメータを選択できます。さらに、すべての最適化パスを1つのチャートで表示し、パラメトリックVaR比を計算し、パスの正規分布と特定の比率セットの取引結果のグラフを作成することができます。さらに、いくつかの計算された比率のグラフは、最適化開始から(または選択された日付から別の選択された日付まで)動的に構築されます。
ピボット・パターン:『ダブルトップ・ダブルボトム』パターンのテスト
ピボット・パターン:『ダブルトップ・ダブルボトム』パターンのテスト

ピボット・パターン:『ダブルトップ・ダブルボトム』パターンのテスト

トレーディングの実践において、トレーダーはしばしば、トレンドの傾向の逆転のポイントを探します。なぜなら、トレンドが生まれたときに、その価格が最も大きな変動の可能性を秘めているからです。そのため、技術分析の実践において、様々な反転パターンが考慮されます。最も有名で頻繁に使用されるパターンの1つはダブルトップ・ダブルボトムです。この記事では、パターンの自動検出の例を提案し、またその履歴データに対する収益性をテストします。
運動継続モデル-チャート上での検索と実行統計
運動継続モデル-チャート上での検索と実行統計

運動継続モデル-チャート上での検索と実行統計

この記事では、運動継続モデルの1つをプログラムによって定義します。 この主なアイデアは、2つの波の定義です(メインと補正) 極値点については、フラクタルだけでなく、 "潜在的な " フラクタル-まだフラクタルとして形成されていない極値点を適用します。
ギャップ ー 収入戦略か50/50か?
ギャップ ー 収入戦略か50/50か?

ギャップ ー 収入戦略か50/50か?

ギャップ現象の研究とは、前の時間枠の終値と次の時間の終値との間の有意差の状況や、日々のバーの向かう方向を分析することです。関数GetOpenFileNameのDLLシステムを使用します。
EAのリモートコントロールの方法
EAのリモートコントロールの方法

EAのリモートコントロールの方法

トレーディングロボットの主な利点は、リモートの VPS サーバー上で24時間動作できることです。 しかし、時にはサーバーに直接アクセスすることができず、タスクに介入する必要があります。 EAをリモートで管理することは可能でしょうか。 この記事では、外部コマンドを使用してEAを制御するオプションの1つを提案します。
ディープニューラルネットワーク(その7)ニューラルネットワークのアンサンブル: スタッキング
ディープニューラルネットワーク(その7)ニューラルネットワークのアンサンブル: スタッキング

ディープニューラルネットワーク(その7)ニューラルネットワークのアンサンブル: スタッキング

アンサンブルの構築を続けます。今回は、以前に作成したバギングアンサンブルに、訓練可能な結合器、つまりディープニューラルネットワークが追加されます。ニューラルネットワークの1つは、刈り込み後に7つの最良アンサンブル出力を組み合わせます。2つ目はアンサンブルの500個の出力をすべて入力として取り込み、刈り込んで結合します。ニューラルネットワークは、Python用のKeras/TensorFlowパッケージを使用して構築されます。このパッケージの特徴には簡単に触れます。テストが実行されて、バギングアンサンブルとスタッキングアンサンブルの分類品質が比較されます。
ディープニューラルネットワーク(その8)バギングアンサンブルの分類品質の向上
ディープニューラルネットワーク(その8)バギングアンサンブルの分類品質の向上

ディープニューラルネットワーク(その8)バギングアンサンブルの分類品質の向上

本稿では、バギングアンサンブルの分類品質を高めるために使用できる3つの方法を検討し、その効率を評価します。ELMニューラルネットワークのハイパーパラメータと後処理パラメータの最適化の効果が評価されます。
メタトレーダー5の EA の自動最適化
メタトレーダー5の EA の自動最適化

メタトレーダー5の EA の自動最適化

この記事では、MetaTrader5での自己最適化メカニズムの実装について説明します。
考えられる.EAをリアルタイムで最適化するためのインジケータの使用法
考えられる.EAをリアルタイムで最適化するためのインジケータの使用法

考えられる.EAをリアルタイムで最適化するためのインジケータの使用法

トレーディングロボットの効率は、そのパラメータの正しい選択 (最適化) に依存します。 ただし、ある特定の時間間隔で最適と見なされるパラメータは、別の期間でもその有効性を保持することはできません。 その上、EA がテストの期間で利益を出したとしてもリアルでは損失になることもあります。 継続的な最適化における問題はこれらを背景としています。 ルーチンワークに直面するとき、人は自動化する方法を模索しようとします。 この記事では、この問題を解決するための非標準的なアプローチを提案します。
特定のディストリビューション法によるカスタムシンボルを用いた時系列モデリング
特定のディストリビューション法によるカスタムシンボルを用いた時系列モデリング

特定のディストリビューション法によるカスタムシンボルを用いた時系列モデリング

この記事では、カスタムシンボルを作成および操作するためのターミナルの機能の概要を示し、カスタムシンボル、トレンド、さまざまなチャートパターンを使用してトレードヒストリーをシミュレートするための手法を提供します。
リバーシング: 聖杯や危険な妄想?
リバーシング: 聖杯や危険な妄想?

リバーシング: 聖杯や危険な妄想?

この記事では、リバーシングマーチンゲール技術を研究し、トレード戦略を向上させることができるかどうかということはもちろん、使用する価値があるかどうかを判断します。 ヒストリカルデータを操作し、リバーシングテクニックに最適なインジケータを確認するEAを作成します。 また、独立したトレードシステムとしてのインジケータなしで使用できるかどうかもチェックします。 また、リバーシングが、負けトレードから勝ちトレードに変えられるかを確かめます。
1. テストメソッド1トレンドとレンジ戦略の組み合わせ
1. テストメソッド1トレンドとレンジ戦略の組み合わせ

1. テストメソッド1トレンドとレンジ戦略の組み合わせ

トレード戦略には多くのものがあります。 トレードのために、ある戦略はトレンドを探し、またある戦略はレンジ価格変動の範囲を定義します。 この2つのアプローチを組み合わせて収益性を高めることは可能でしょうか。
MQLベースのエキスパートアドバイザとデータベースの統合 (SQL server、.NET、および C#)
MQLベースのエキスパートアドバイザとデータベースの統合 (SQL server、.NET、および C#)

MQLベースのエキスパートアドバイザとデータベースの統合 (SQL server、.NET、および C#)

この記事では、MQL5 ベースのEAに対して Microsoft SQL server データベースサーバーを使用する方法について説明します。 DLL からの関数のインポートが使用します。 DLL は、Microsoft .NET プラットフォームと C# 言語を使用して作成します。 この記事で使用するメソッドは、マイナーな調整があり、MQL4で書かれているEAに適しています。
10のレンジトレーディング戦略の比較分析
10のレンジトレーディング戦略の比較分析

10のレンジトレーディング戦略の比較分析

この記事はレンジ期間のトレードにおける利点および欠点について調査します。 この記事で作成およびテストされた10の戦略は、チャネル内の価格変動の追跡に基づいています。 各戦略は、ダマシの相場参入シグナルを回避することを目的としたフィルタリング機構を備えています。
MQL5.comフリーランスサービスが注文50,000件を達成
MQL5.comフリーランスサービスが注文50,000件を達成

MQL5.comフリーランスサービスが注文50,000件を達成

公式のMetaTraderフリーランスサービスのメンバー受注完了数が2018年10月に50,000件に達しました。これは、MQLプログラマー向けの世界最大のフリーランスサイトです。サイトには1,000人以上の開発者が登録しており、新規注文は毎日数十件を超えます。サイトは7ヶ国語に訳されています。
14,000自動売買ロボットがMetaTraderマーケットに
14,000自動売買ロボットがMetaTraderマーケットに

14,000自動売買ロボットがMetaTraderマーケットに

最大級のアルゴリズム取引既成アプリストアでは13,970件の製品があります。これには4,800件のロボット、6,500件の指標、2,400件のユーティリティその他のソルーションが含まれます。半分以上のアプリケーション (6,000) はレンタルもできます。全製品の4分の1(3,800)は無料でダウンロードできます。
ディープニューラルネットワーク(その4)ニューラルネットワーク分類器のアンサンブル: バギング
ディープニューラルネットワーク(その4)ニューラルネットワーク分類器のアンサンブル: バギング

ディープニューラルネットワーク(その4)ニューラルネットワーク分類器のアンサンブル: バギング

本稿では、バギング構造を持つニューラルネットワークのアンサンブルを構築および訓練する方法について説明します。また、アンサンブルを構成する個々のニューラルネットワーク分類器の超パラメータ最適化の特性も特定されます。このシリーズの前の記事で得られた最適化ニューラルネットワークの品質は、作成されたニューラルネットワークのアンサンブルの品質と比較されます。アンサンブルの分類の質をさらに向上させる可能性が考慮されます。