MQL4とMQL5のプログラム記事

icon

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

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

新しい記事を追加
最新 | ベスト
preview
DoEasy - コントロール(第4部):パネルコントロールとPadding and Dockパラメータ

DoEasy - コントロール(第4部):パネルコントロールとPadding and Dockパラメータ

今回は、Paddingパラメータ(要素の四辺の内部インデント/マージン)とDockパラメータ(コンテナ内のオブジェクトの配置方法)の扱いを実装します。
ADXによる取引システムの設計方法を学ぶ
ADXによる取引システムの設計方法を学ぶ

ADXによる取引システムの設計方法を学ぶ

今回は、最も人気のある指標を使って取引システムを設計する連載の続きとして、ADX (Average Directional Index)指標についてお話します。この指標を理解するために詳しく学び、簡単な戦略でその使い方を学びます。深く学ぶことで、より多くの洞察得ることができ、それをよりよく活用することができるのです。
preview
DoEasy - コントロール(第3部):バインドされたコントロールの作成

DoEasy - コントロール(第3部):バインドされたコントロールの作成

本稿では、基本要素にバインドされた従属コントロールを作成します。開発は、基本的な制御機能を使用して実行されます。さらに、影を持つことができるオブジェクトに適用するとまだいくつかのロジックエラーが発生するため、グラフィック要素の影オブジェクトを少しいじります。
ストキャスティクスによる取引システムの設計方法を学ぶ
ストキャスティクスによる取引システムの設計方法を学ぶ

ストキャスティクスによる取引システムの設計方法を学ぶ

この記事では、学習シリーズを継続します。今回は、基本的な知識の新しいブロックを構築するために、最も人気があり、便利な指標の1つであるストキャスティックスオシレータ指標を使用して取引システムを設計する方法を学びます。
preview
データサイエンスと機械学習(第02回):ロジスティック回帰

データサイエンスと機械学習(第02回):ロジスティック回帰

データ分類は、アルゴトレーダーとプログラマーにとって非常に重要なものです。この記事では、「はい」と「いいえ」、上と下、買いと売りを識別するのに役立つ可能性のある分類ロジスティックアルゴリズムの1つに焦点を当てます。
preview
一からの取引エキスパートアドバイザーの開発(第11部):両建て注文システム

一からの取引エキスパートアドバイザーの開発(第11部):両建て注文システム

この記事では、両建て注文システムを作成します。先物契約は、トレーダーを極度に苦しめる資産タイプですが、なにがそんなに難しいのでしょうか。
MACDによる取引システムの設計方法を学ぶ
MACDによる取引システムの設計方法を学ぶ

MACDによる取引システムの設計方法を学ぶ

今回は、このシリーズの新しいツール、MACD(Moving Average Convergence Divergence、移動平均収束発散)に基づいた取引システムの設計方法について学びます。
CCIによる取引システムの設計方法を学ぶ
CCIによる取引システムの設計方法を学ぶ

CCIによる取引システムの設計方法を学ぶ

今回は、取引システムの設計方法を学ぶ連載の新しい記事として、CCI(商品チャンネル指数、Commodities Channel Index)を紹介し、その詳細を説明し、この指標に基づいた取引システムの作り方を紹介します。
preview
一からの取引エキスパートアドバイザーの開発(第10部):カスタムインジケータへのアクセス

一からの取引エキスパートアドバイザーの開発(第10部):カスタムインジケータへのアクセス

エキスパートアドバイザー(EA)でカスタムインジケータに直接アクセスするにはどうすればよいでしょうか。取引EAが本当に役立つのは、カスタムインジケータを使用できる場合のみです。それ以外の場合、取引EAはコードと命令のセットにすぎません。
preview
一からの取引エキスパートアドバイザーの開発(第9部):概念的な飛躍(II)

一からの取引エキスパートアドバイザーの開発(第9部):概念的な飛躍(II)

この記事では、Chart Tradeをフローティングウィンドウに配置します。前稿では、フローティングウィンドウ内でテンプレートを使用できるようにする基本的なシステムを作成しました。
preview
一からの取引エキスパートアドバイザーの開発(第8部):概念的な飛躍

一からの取引エキスパートアドバイザーの開発(第8部):概念的な飛躍

新しい機能を実装する最も簡単な方法は何でしょうか。この記事では、1歩後退してから2歩前進します。
preview
DoEasy - コントロール(第2部):CPanelクラスでの作業

DoEasy - コントロール(第2部):CPanelクラスでの作業

今回は、グラフィック要素の処理に関連するエラーを取り除き、CPanelコントロールの開発を継続する予定です。特に、すべてのパネルテキストオブジェクトにデフォルトで使用されるフォントのパラメータを設定するメソッドを実装します。
preview
DoEasy - コントロール(第1部):最初のステップ

DoEasy - コントロール(第1部):最初のステップ

本稿では、MQL5を使用してWindows Formsスタイルのコントロールを作成するという広範なトピックを開始します。私が最初に興味を持ったのは、パネルクラスを作成することです。コントロールなしで物事を管理することはすでに困難になっています。したがって、可能なすべてのコントロールをWindows Formsスタイルで作成します。
preview
一からの取引エキスパートアドバイザーの開発(第7部):価格別出来高の追加(I)

一からの取引エキスパートアドバイザーの開発(第7部):価格別出来高の追加(I)

価格別出来高は、現存する最も強力なインジケータの1つです。ある程度の自信を持って取引するには、チャートにはこのインジケータが必須です。このインジケータはよく「テープリーディング」を好むトレーダーに使われますが、プライスアクションのみを使用して取引する場合にも活用できます。
preview
DoEasyライブラリのグラフィックス(第100部):拡張された標準グラフィックオブジェクトの処理を改善する

DoEasyライブラリのグラフィックス(第100部):拡張された標準グラフィックオブジェクトの処理を改善する

現在の記事では、拡張(および標準)グラフィックオブジェクトとキャンバス上のフォームオブジェクトの同時処理における明らかな欠陥を排除し、前の記事で実行されたテスト中に検出されたエラーを修正します。ライブラリの説明のこのセクションは本稿で締めくくります。
preview
データサイエンスと機械学習(第01回):線形回帰

データサイエンスと機械学習(第01回):線形回帰

私たちトレーダーは、数字に基づいた判断をするよう、システムと自分自身を訓練する時期に来ています。目ではなく、直感で信じるのは、これが世界が向かっているところだということです。波の方向に垂直に移動しましょう。
preview
単一チャート上の複数インジケータ(第06部):MetaTrader 5をRADシステムに変える(II)

単一チャート上の複数インジケータ(第06部):MetaTrader 5をRADシステムに変える(II)

前回の記事では、MetaTrader 5のオブジェクトを使ってChart Tradeを作成し、プラットフォームをRADシステムに変える方法を紹介しました。このシステムは非常によく機能しており、読者の多くは、提案されたシステムの機能を拡張できるようなライブラリを作成することをお考えになったのではないでしょうか。これに基づいて、より直感的で使い勝手の良いEAを開発することも可能でしょう。
RSIによる取引システムの設計方法を学ぶ
RSIによる取引システムの設計方法を学ぶ

RSIによる取引システムの設計方法を学ぶ

今回は、取引の世界で最も人気があり、一般的に使用されている指標の1つであるRSIを紹介します。この指標を使用した取引システムの設計方法を学びます。
preview
DoEasyライブラリのグラフィックス(第99部):単一のコントロールポイントを使用した拡張グラフィックオブジェクトの移動

DoEasyライブラリのグラフィックス(第99部):単一のコントロールポイントを使用した拡張グラフィックオブジェクトの移動

前回の記事では、コントロールフォームを使用して拡張グラフィックオブジェクトのピボットポイントを移動する機能を実装しました。次に、単一のグラフィックオブジェクトコントロールポイント(フォーム)を使用して複合グラフィックオブジェクトを移動する機能を実装します。
preview
DoEasyライブラリのグラフィックス(第98部):拡張された標準グラフィカルオブジェクトのピボットポイントの移動

DoEasyライブラリのグラフィックス(第98部):拡張された標準グラフィカルオブジェクトのピボットポイントの移動

本稿では、拡張された標準グラフィカルオブジェクトの開発を継続し、グラフィカルオブジェクトのピボットポイントの座標を管理するためのコントロールポイントを使用して、複合グラフィカルオブジェクトのピボットポイントを移動する機能を作成します。
モメンタムによるトレーディングシステムの設計方法を学ぶ
モメンタムによるトレーディングシステムの設計方法を学ぶ

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

前回は、価格の方向性であるトレンドを見極めることの重要性について述べました。この記事では、最も重要な概念と指標の1つであるモメンタム指標を紹介します。このモメンタム指標に基づいたトレーディングシステムの設計方法を紹介します。
preview
単一チャート上の複数インジケータ(第05部):MetaTrader 5をRADシステムに変える(I)

単一チャート上の複数インジケータ(第05部):MetaTrader 5をRADシステムに変える(I)

プログラミングはできなくても創造性に富んだ素晴らしいアイデアを持っている人はたくさんいます。しかし、プログラミングの知識がないため、これらのアイデアを実行に移すことができないのです。MetaTrader5のプラットフォームそのものをIDEのように使って、Chart Tradeを作成する方法を一緒に見てみましょう。
preview
移動平均でできること

移動平均でできること

この記事では、移動平均指標を適用するいくつかの方法について考察しています。曲線分析が含まれるそれぞれの方法には、アイデアを視覚化する指標が付属しています。ほとんどの場合、ここで紹介されているアイデアは、その尊敬すべき著者に帰属しています。私の唯一の仕事は、それらをまとめて、主要なアプローチを確認し、うまくいけば、より合理的な取引決定を下せるようにすることでした。この記事は、MQL5の初心者向けです。
エンベロープによる取引システムの設計方法を学ぶ
エンベロープによる取引システムの設計方法を学ぶ

エンベロープによる取引システムの設計方法を学ぶ

この記事では、バンドで取引する方法の1つを紹介します。今回はエンベロープについて検討し、それに基づいてストラテジーを作成するのがいかに簡単であるかを見ていきます。
preview
プロのプログラマーからのヒント(第III部): ロギングSeqログ収集および分析システムへの接続

プロのプログラマーからのヒント(第III部): ロギングSeqログ収集および分析システムへの接続

エキスパートログに出力されるメッセージを統合および構造化するためのLoggerクラスの実装。Seqログ収集および分析システムへの接続。オンラインでのログメッセージの監視。
preview
DirectXチュートリアル(第I部): 最初の三角形の描画

DirectXチュートリアル(第I部): 最初の三角形の描画

これはDirectXの紹介記事で、APIを使用した操作の詳細について説明しており、コンポーネントが初期化される順序を理解するのに役立つはずです。この記事には、DirectXを使用して三角形をレンダリングするためのMQL5スクリプトを作成する方法の例が含まれています。
ボリンジャーバンドによる取引システムの設計方法を学ぶ
ボリンジャーバンドによる取引システムの設計方法を学ぶ

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

この記事では、取引の世界で最も人気のある指標の1つであるボリンジャーバンドについて学びます。テクニカル分析を検討し、ボリンジャーバンド指標に基づいてアルゴリズム取引システムを設計する方法を確認します。
preview
DoEasyライブラリのグラフィックス(第97部): フォームオブジェクトの移動の独立した処理

DoEasyライブラリのグラフィックス(第97部): フォームオブジェクトの移動の独立した処理

本稿では、マウスを使用したフォームオブジェクトの独立したドラッグの実装について検討します。さらに、以前にターミナルとMQL5に実装されたエラーメッセージと新しい取引プロパティをライブラリに追加します。
preview
単一チャート上の複数インジケータ(第04部): エキスパートアドバイザーに進む

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

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

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

この記事では、通貨データの分析を示して、エキスパートアドバイザーが特定の時間領域で良好なパフォーマンスを示し他の領域でパフォーマンスが低下する理由をよりよく理解します。
preview
MQLアプリケーションでのCCanvasクラスの使用

MQLアプリケーションでのCCanvasクラスの使用

この記事では、MQLアプリケーションでのCCanvasクラスの使用について検討します。理論には、CCanvasの基本を完全に理解するための詳細な説明と例が付属しています。
MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図
MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図

MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図

本稿は、前の記事で説明したMQLプログラムのMVCパターンのトピックの続きです。この記事では、パターンの3つのコンポーネント間の可能な相互作用の図を検討します。
DoEasyライブラリのグラフィックス(第95部):複合グラフィカルオブジェクトコントロール
DoEasyライブラリのグラフィックス(第95部):複合グラフィカルオブジェクトコントロール

DoEasyライブラリのグラフィックス(第95部):複合グラフィカルオブジェクトコントロール

本稿では、複合グラフィカルオブジェクトを管理するためのツールキット(拡張された標準グラフィカルオブジェクトを管理するためのコントロール)について検討します。今日は、複合グラフィカルオブジェクトの再配置から少し脱線して、複合グラフィカルオブジェクトを特徴とするチャートに変更イベントのハンドラを実装します。さらに、複合グラフィカルオブジェクトを管理するためのコントロールに焦点を当てます。
preview
単一チャート上の複数インジケータ(第03部): ユーザー向け定義の開発

単一チャート上の複数インジケータ(第03部): ユーザー向け定義の開発

今日はインジケータシステムの機能を初めて更新します。前回の「単一チャート上の複数のインジケータ」稿では、チャートのサブウィンドウで複数のインジケータを使用できるようにする基本的なコードについて検討しましたが、提示されたのは、はるかに大規模なシステムの出発点にすぎませんでした。
DoEasyライブラリのグラフィックス(第96部): フォームオブジェクトのグラフィックとマウスイベントの処理
DoEasyライブラリのグラフィックス(第96部): フォームオブジェクトのグラフィックとマウスイベントの処理

DoEasyライブラリのグラフィックス(第96部): フォームオブジェクトのグラフィックとマウスイベントの処理

本稿では、フォームオブジェクトでマウスイベントを処理する機能の作成を開始し、銘柄オブジェクトに新しいプロパティとそのトラッキングを追加します。さらに、チャート銘柄で新しいプロパティが考慮/追加されて追跡されるため、銘柄オブジェクトクラスを改善します。
preview
チャートをより面白くする: 背景の追加

チャートをより面白くする: 背景の追加

多くのワークステーションには、ユーザーに関する何かを語る代表的な画像が含まれています。これらの画像は、作業環境をより美しくエキサイティングなものにします。背景を追加してチャートをより面白くする方法を見てみましょう。
さまざまな移動平均システムを設計する方法を学ぶ
さまざまな移動平均システムを設計する方法を学ぶ

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

この記事の主題である移動平均自体を使用する場合でも、任意のストラテジーに基づいて生成されたシグナルをフィルタリングするために使用できるストラテジーはたくさんあります。この記事の目的は、移動平均ストラテジーのいくつかと、アルゴリズム取引システムを設計する方法を共有することです。
preview
単一チャート上の複数インジケータ(第01部): 概念

単一チャート上の複数インジケータ(第01部): 概念

今日は、チャート上の個別の領域を占有せずに1つのチャートで同時に実行される複数のインジケータを追加する方法を学習します。多くのトレーダーは、一度に複数のインジケータ(例: RSI、STOCASTIC、MACD、ADX)を監視する、または場合によってはインデックスを構成している異なるアセットで監視することによって、自信を高めることができます。
preview
単一チャート上の複数インジケータ(第02部): 実験1

単一チャート上の複数インジケータ(第02部): 実験1

前回の「単一チャート上の複数インジケータ」稿では、単一のチャートで複数のインジケータを使用する方法の概念と基本を説明しました。この記事では、ソースコードを提供して詳しく説明します。
DoEasyライブラリのグラフィックス(第94部): 複合グラフィカルオブジェクトの移動と削除
DoEasyライブラリのグラフィックス(第94部): 複合グラフィカルオブジェクトの移動と削除

DoEasyライブラリのグラフィックス(第94部): 複合グラフィカルオブジェクトの移動と削除

本稿では、さまざまな複合グラフィカルオブジェクトイベントの開発を開始します。また、複合グラフィカルオブジェクトの移動と削除についても部分的に検討します。実際、ここでは、前の記事で実装したものを微調整します。