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

icon

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

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

新しい記事を追加
最新 | ベスト
ボリンジャーバンドによる取引システムの設計方法を学ぶ
ボリンジャーバンドによる取引システムの設計方法を学ぶ

ボリンジャーバンドによる取引システムの設計方法を学ぶ

この記事では、取引の世界で最も人気のある指標の1つであるボリンジャーバンドについて学びます。テクニカル分析を検討し、ボリンジャーバンド指標に基づいてアルゴリズム取引システムを設計する方法を確認します。
preview
単一チャート上の複数インジケータ(第04部): エキスパートアドバイザーに進む

単一チャート上の複数インジケータ(第04部): エキスパートアドバイザーに進む

以前の記事では、複数のサブウィンドウでインジケータを作成する方法を説明しました。これは、カスタムインジケータを使用するときに興味深いものになります。今回は、エキスパートアドバイザーに複数のウィンドウを追加する方法を説明します。
preview
エキスパートアドバイザーが失敗する理由の分析

エキスパートアドバイザーが失敗する理由の分析

この記事では、通貨データの分析を示して、エキスパートアドバイザーが特定の時間領域で良好なパフォーマンスを示し他の領域でパフォーマンスが低下する理由をよりよく理解します。
さまざまな移動平均システムを設計する方法を学ぶ
さまざまな移動平均システムを設計する方法を学ぶ

さまざまな移動平均システムを設計する方法を学ぶ

この記事の主題である移動平均自体を使用する場合でも、任意のストラテジーに基づいて生成されたシグナルをフィルタリングするために使用できるストラテジーはたくさんあります。この記事の目的は、移動平均ストラテジーのいくつかと、アルゴリズム取引システムを設計する方法を共有することです。
preview
アルゴリズム取引システムを設計する理由と方法を学ぶ

アルゴリズム取引システムを設計する理由と方法を学ぶ

この記事では、MQL5のいくつかの基本に言及した後で、単純なアルゴリズム取引システムを設計することによって初心者がアルゴリズム取引システム(エキスパートアドバイザー)を設計するためのMQLの基本を示します。
一からの取引エキスパートアドバイザーの開発
一からの取引エキスパートアドバイザーの開発

一からの取引エキスパートアドバイザーの開発

この記事では、最小限のプログラミングで自動売買ロボットを開発する方法について説明します。
preview
MQL5の行列とベクトル

MQL5の行列とベクトル

特別な「matrix」と「vector」データ型を使用すると、数学表記に非常に近いコードを作成することができます。行列とベクトルのメソッドを使用すると、計算でネストされたループを作成したり配列で正しいインデックスを作成したりする必要がなくなるため、複雑なプログラムの開発における信頼性と速度が向上します。
preview
固定プライスアクションストップロスまたは固定RSI(スマートストップロス)

固定プライスアクションストップロスまたは固定RSI(スマートストップロス)

ストップロスは、取引における資金管理に関する主要なツールです。ストップロス、テイクプロフィット、ロットサイズを効果的に使用することで、トレーダーは取引の一貫性を改善し、全体的に収益性を高めることができます。ストップロスは優れたツールですが、使用時に課題に遭遇することがあります。主要なものはストップロスハントです。この記事では、取引でのストップロスハントを減らす方法と、従来のストップロスの使用法と比較して収益性を判断する方法について説明します。
MetaTrader用の高度なEAコンストラクター - BotBrains.app
MetaTrader用の高度なEAコンストラクター - BotBrains.app

MetaTrader用の高度なEAコンストラクター - BotBrains.app

この記事では、自動売買ロボットのためのノーコード開発プラットフォームであるBotBrains.appの機能を紹介します。自動売買ロボットを作成するために、コードを書く必要はありません。必要なブロックをスキームにドラッグアンドドロップし、パラメータを設定して、それらの間の接続を確立するだけです。
より優れたプログラマー(第07部): 成功したフリーランス開発者になるためのメモ
より優れたプログラマー(第07部): 成功したフリーランス開発者になるためのメモ

より優れたプログラマー(第07部): 成功したフリーランス開発者になるためのメモ

MQL5でフリーランス開発者として成功したいならば、この記事はあなたにぴったりです。
preview
MQL言語を使用したゼロからのディープニューラルネットワークプログラミング

MQL言語を使用したゼロからのディープニューラルネットワークプログラミング

この記事は、MQL4/5言語を使用してディープニューラルネットワークを最初から作成する方法を読者に教えることを目的としています。
preview
時間の取扱い(第1部):基本

時間の取扱い(第1部):基本

時間の処理、証券会社のオフセット、夏時間または冬時間への変更を簡素化および明確化する関数とコードスニペット。正確なタイミングは取引において重要な要素になることがあります。現在時刻でロンドンやニューヨークの証券取引所がすでに開いているかまだ開いていないか、外国為替取引の取引時間はいつ開始および終了するかなどです。手動で取引して生活しているトレーダーにとって、これは大きな問題ではありません。
より優れたプログラマー(第02部): MQL5プログラマーとして成功するためにやめなければいけない5つのこと
より優れたプログラマー(第02部): MQL5プログラマーとして成功するためにやめなければいけない5つのこと

より優れたプログラマー(第02部): MQL5プログラマーとして成功するためにやめなければいけない5つのこと

この記事は、プログラミングのキャリアを向上させたい人にとって必読です。本連載は、どんなに経験が豊富な読者でも最高のプログラマーになれることを目的としています。議論されたアイデアは、MQL5プログラミングの初心者だけでなくプロにも役立ちます。
DoEasyライブラリのグラフィックス(第76部): フォームオブジェクトと事前定義されたカラースキーム
DoEasyライブラリのグラフィックス(第76部): フォームオブジェクトと事前定義されたカラースキーム

DoEasyライブラリのグラフィックス(第76部): フォームオブジェクトと事前定義されたカラースキーム

本稿では、さまざまなライブラリGUIデザインテーマの構築の概念について説明し、グラフィック要素クラスオブジェクトの子孫であるフォームオブジェクトを作成し、ライブラリのグラフィカルオブジェクトのシャドウを作成するため、および機能をさらに開発するためのデータを準備します。
DoEasyライブラリのグラフィックス(第75部): 基本的なグラフィック要素でプリミティブとテキストを処理するメソッド
DoEasyライブラリのグラフィックス(第75部): 基本的なグラフィック要素でプリミティブとテキストを処理するメソッド

DoEasyライブラリのグラフィックス(第75部): 基本的なグラフィック要素でプリミティブとテキストを処理するメソッド

本稿では引き続き、CCanvas標準ライブラリクラスを使用したすべてのライブラリグラフィカルオブジェクトの基本的なグラフィック要素クラスを開発します。グラフィカルプリミティブを描画するメソッドとグラフィック要素オブジェクトにテキストを表示するメソッドを作成します。
DoEasyライブラリのグラフィックス(第74部): CCanvasクラスを使用した基本的グラフィック要素
DoEasyライブラリのグラフィックス(第74部): CCanvasクラスを使用した基本的グラフィック要素

DoEasyライブラリのグラフィックス(第74部): CCanvasクラスを使用した基本的グラフィック要素

本稿では、前の記事からのグラフィカルオブジェクトを構築するという概念を作り直し、標準ライブラリCCanvasクラスを利用したライブラリのすべてのグラフィカルオブジェクトの基本クラスを準備します。
DoEasyライブラリのグラフィックス(第73部): グラフィック要素のフォームオブジェクト
DoEasyライブラリのグラフィックス(第73部): グラフィック要素のフォームオブジェクト

DoEasyライブラリのグラフィックス(第73部): グラフィック要素のフォームオブジェクト

本稿からは、ライブラリでのグラフィックの使用に関する新しい大きなセクションを始めます。本稿では、マウスステータスオブジェクト、すべてのグラフィック要素の基本オブジェクト、およびライブラリのグラフィック要素のフォームオブジェクトのクラスを作成します。
パターンと例(第I部): マルチトップ
パターンと例(第I部): マルチトップ

パターンと例(第I部): マルチトップ

これは、アルゴリズム取引の枠組みにおける反転パターンに関連する連載の最初の記事です。まず、最も興味深いパターンファミリーから始めます。これは、ダブルトップパターンとダブルボトムパターンに由来するものです。
DoEasyライブラリでのその他のクラス(第72部): コレクション内のチャートオブジェクトパラメータの追跡と記録
DoEasyライブラリでのその他のクラス(第72部): コレクション内のチャートオブジェクトパラメータの追跡と記録

DoEasyライブラリでのその他のクラス(第72部): コレクション内のチャートオブジェクトパラメータの追跡と記録

本稿では、チャートオブジェクトクラスとそのコレクションの操作を完成します。また、チャートプロパティとそのウィンドウの変更の自動追跡を実装し、オブジェクトプロパティに新しいパラメータを保存します。このような変更により、を将来チャートコレクション全体のイベント機能実装できるようになります。
DoEasyライブラリでのその他のクラス(第71部): チャットオブジェクトコレクションイベント
DoEasyライブラリでのその他のクラス(第71部): チャットオブジェクトコレクションイベント

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

本稿では、いくつかのチャートオブジェクトイベント(銘柄チャートとチャートサブウィンドウの追加/削除、およびチャートウィンドウの指標の追加/削除/変更)を追跡する機能を作成します。
スワップ(第I部):ロックと合成ポジション
スワップ(第I部):ロックと合成ポジション

スワップ(第I部):ロックと合成ポジション

この記事では、スワップ取引手法の古典的な概念を拡張しようとします。私が、この概念に特別な注意を払う価値があり、この概念が研究に絶対的に推奨されるという結論に達した理由を説明します。
DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス
DoEasyライブラリでのその他のクラス(第69部): チャットオブジェクトコレクションクラス

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

本稿からチャートオブジェクトコレクションクラスの開発を開始します。このクラスでは、サブウィンドウと指標とともにチャートオブジェクトのコレクションリストを保存し、選択したチャートとそのサブウィンドウ、または複数のチャートのリストを一度に操作する機能を提供します。
DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス
DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス

DoEasyライブラリでのその他のクラス(第68部): チャットウィンドウオブジェクトクラスとチャートでの指標オブジェクトクラス

本稿では、チャートオブジェクトクラスの開発を続け、利用可能な指標のリストを含むチャートウィンドウオブジェクトのリストに追加します。
preview
ニューラルネットワークが簡単に(第13回): Batch Normalization

ニューラルネットワークが簡単に(第13回): Batch Normalization

前回の記事では、ニューラルネットワーク訓練の品質を向上させることを目的とした手法の説明を開始しました。本稿では、このトピックを継続し、別のアプローチであるデータのBatch Normalizationについて説明します。
preview
ニューラルネットワークが簡単に(第12回): ドロップアウト

ニューラルネットワークが簡単に(第12回): ドロップアウト

ニューラルネットワークを研究する次のステップとして、ニューラルネットワークの訓練中に収束を高める手法を検討することをお勧めします。そのような手法はいくつかありますが、本稿では、それらの1つである「ドロップアウト」について考察します。
DoEasyライブラリでのその他のクラス(第67部): チャットオブジェクトクラス
DoEasyライブラリでのその他のクラス(第67部): チャットオブジェクトクラス

DoEasyライブラリでのその他のクラス(第67部): チャットオブジェクトクラス

本稿では、(単一の取引製品チャートの)チャートオブジェクトクラスを作成し、MQL5シグナルオブジェクトのコレクションクラスを改善して、コレクションに格納されている各シグナルオブジェクトでリストの更新時にすべてのパラメータが更新されるようにします。
preview
ニューラルネットワークが簡単に(第11部): GPTについて

ニューラルネットワークが簡単に(第11部): GPTについて

GPT-3は現在存在する言語ニューラルネットワークの中でおそらく最も高度なモデルの1つであり、その最大バリアントには1,750億個のパラメータが含まれています。もちろん、家庭にあるようなPCでそのような怪物を作成するつもりはありませんが、どのアーキテクチャソリューションを作業に使用し、それらからどのように利益を得ることができるかは確認することができます。
preview
自動取引のための便利でエキゾチックな技術

自動取引のための便利でエキゾチックな技術

本稿では、自動取引のためのいくつかの非常に興味深く有用な技術を紹介します。それらのいくつかには馴染みがあるかもしれません。最も興味深い手法を取り上げ、なぜ使用する価値があるのかを説明します。さらに、これらの技術の実際面での傾向を示します。エキスパートアドバイザーを作成し、説明されているすべての技術を相場履歴を使用してテストします。
preview
取引におけるニューラルネットワークの実用化(第2部)コンピュータービジョン

取引におけるニューラルネットワークの実用化(第2部)コンピュータービジョン

コンピュータービジョンを使用すると、価格チャートと指標の視覚的表現に関してニューラルネットワークを訓練できるようになります。この方法では、ニューラルネットワークにデジタルでフィードする必要がないため、テクニカル指標全体でより幅広い操作が可能になります。
DoEasyライブラリでのその他のクラス(第66部): MQL5.comシグナルコレクションクラス
DoEasyライブラリでのその他のクラス(第66部): MQL5.comシグナルコレクションクラス

DoEasyライブラリでのその他のクラス(第66部): MQL5.comシグナルコレクションクラス

本稿では、シグナルを管理する関数を備えたMQL5.comシグナルサービスのシグナルコレクションクラスを作成します。さらに、DOMの売買取引高の合計を表示するように板情報スナップショットオブジェクトクラスを改善します。
DoEasyライブラリでの価格(第64部): 板情報、DOMスナップショットのクラスおよびスナップショットシリーズオブジェクト
DoEasyライブラリでの価格(第64部): 板情報、DOMスナップショットのクラスおよびスナップショットシリーズオブジェクト

DoEasyライブラリでの価格(第64部): 板情報、DOMスナップショットのクラスおよびスナップショットシリーズオブジェクト

本稿では、2つのクラス(DOMスナップショットオブジェクトのクラスとDOMスナップショットシリーズオブジェクトのクラス)を作成し、DOMデータシリーズの作成をテストします。
DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備
DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備

DoEasyライブラリでの価格(第62部): ティックシリーズをリアルタイムで更新して板情報で作業するための準備

この記事では、ティックデータの更新をリアルタイムで実装し、板情報を操作するための銘柄オブジェクトクラスを準備します(DOM自体は次の記事で実装されます)。
自己適応アルゴリズム(第IV部):その他の機能とテスト
自己適応アルゴリズム(第IV部):その他の機能とテスト

自己適応アルゴリズム(第IV部):その他の機能とテスト

引き続き、必要最小限の機能でアルゴリズムを実装して結果をテストします。収益性は非常に低いですが、連載では、完全に自動化された、根本的に異なる市場で取引される完全に異なる商品で収益性の高い取引モデルを示しています。
preview
ニューラルネットワークが簡単に(第10回): Multi-Head Attention

ニューラルネットワークが簡単に(第10回): Multi-Head Attention

ニューラルネットワークにおける自己注意のメカニズムについては、以前に検討しました。実際には、最新のニューラルネットワークアーキテクチャは、いくつかの並列した自己注意スレッドを使用して、シーケンスの要素間のさまざまな依存関係を見つけます。このようなアプローチの実装を検討し、ネットワーク全体のパフォーマンスへの影響を評価しましょう。
自己適応アルゴリズム(第III部):最適化の放棄
自己適応アルゴリズム(第III部):最適化の放棄

自己適応アルゴリズム(第III部):最適化の放棄

履歴データに基づく最適化を使用してパラメータを選択する場合、真に安定したアルゴリズムを取得することは不可能です。安定したアルゴリズムは、常時、どんな取引商品で作業していても、必要なパラメータを認識している必要があります。予測や推測ではなく、確実に知っているべきです。
自己適応アルゴリズムの開発(第II部): 効率の向上
自己適応アルゴリズムの開発(第II部): 効率の向上

自己適応アルゴリズムの開発(第II部): 効率の向上

この記事では、以前に作成したアルゴリズムの柔軟性を向上させることでトピックの開発を続けます。アルゴリズムは、分析期間内のローソク足の数の増加または上昇/下降ローソク足超過率のしきい値の増加によって、より安定しました。分析のためにより大きなサンプルサイズを設定するかより高いローソク足の超過率を設定して、妥協する必要がありました。
preview
パターン検索への総当たり攻撃アプローチ(第III部): 新しい水平線

パターン検索への総当たり攻撃アプローチ(第III部): 新しい水平線

本稿では、総当たり攻撃のトピックを続けます。プログラムアルゴリズムに市場分析の新しい機会を導入することで分析速度を高め、結果の品質を向上します。新しい追加により、このアプローチ内でグローバルパターンの最高品質で表示できるようになります。
自己適応アルゴリズムの開発(第I部):基本的なパターンの検索
自己適応アルゴリズムの開発(第I部):基本的なパターンの検索

自己適応アルゴリズムの開発(第I部):基本的なパターンの検索

この連載では、ほとんどの市場要因を考慮した自己適応アルゴリズムの開発を示すとともに、これらの状況を体系化してロジックで説明し、取引活動で考慮に入れる方法を示します。非常に単純なアルゴリズムから始めて、徐々に理論を習得し、非常に複雑なプロジェクトに進化していきます。
preview
ニューラルネットワークが簡単に(第8回): アテンションメカニズム

ニューラルネットワークが簡単に(第8回): アテンションメカニズム

以前の記事では、ニューラルネットワークを整理するための様々な選択肢を既に検証しました. また、画像処理アルゴリズムから借りた畳み込みネットワークについても検討しました. 今回の記事では、言語モデルの開発に弾みをつけた「アテンション・メカニズム」を考えることを提案します.
DoEasyライブラリの時系列(第59部): 単一ティックのデータを格納するオブジェクト
DoEasyライブラリの時系列(第59部): 単一ティックのデータを格納するオブジェクト

DoEasyライブラリの時系列(第59部): 単一ティックのデータを格納するオブジェクト

本稿からは、価格データを処理するライブラリ機能を作成します。今日、さらに別のティックで到着したすべての価格データを格納するオブジェクトクラスを作成します。