MQL5言語での取引ロボットのプログラミング例の記事

エキスパートアドバイザはプログラミングの"頂点"であり、それぞれの自動トレーディングの開発者の求めたゴールです。このセクションの記事を読んで、あなた自身のトレーディングロボットを作成してください。記述されたステップに従うことにより、あなたはどのように自動トレーディングシステムを作成し、デバッグし、テストするかを学びます。

記事はMQL5プログラミングを教えるだけでなく、どのようにトレーディングアイデアとテクニックを導入するかを示します。あなたはどのようにトレーリングストップをプログラムするか、どのように資金管理を適用するか、どのようにインディケータ値を取得するか、さらに多くのことを学びます。

最新の | ベスト

トレーダーの為の正規表現

正規表現(英語ではregular expressions) とは、正規表現のパターンやマスクと呼ばれる指定されたルールに従ったテキストを処理する為の特別な言語です。この記事では、MQL5のRegularExpressionsライブラリを使用した取引レポートの処理をご紹介し、それを使った最適化結果をデモンストレーションします。

手動取引のサポーターを作成する

近年、為替市場の為のトレードロボットの数は、雪だるま式に増えています。これらのトレードロボットの中には、様々な概念や戦略がありますが、負けない人工知能の作成は誰も成し遂げていません。その為、多くのトレーダーは手動取引を支持しています。しかし、このようなスペシャリストの為に、トレードパネルと呼ばれるロボットアシスタントが作成されています。この記事では、トレードパネルの作成例を『ゼロから』ご紹介...

グラフィカルインタフェース V:リストビュー要素(チャプター 2)

前の章では、縦横スクロールバーを作成するためのクラスを書きました。この章では、それを実装します。縦スクロールバーはそのコンパウンドの一部となるリストビュー要素を作成するためのクラスが記述されます。

グラフィカルインタフェース V: 縦横のスクロールバー(チャプター 1)

MetaTrader環境でのグラフィカルインタフェースを作成するためのライブラリの開発の検討が続きます。シリーズの第一部の最初の記事では、縦横のスクロールバーを作成するためのクラスを作成します。

グラフィカルインタフェースIV:マルチウィンドウモードと優先度のシステム(チャプター2)

この章では、MQLアプリケーションでのマルチウィンドウインタフェースの作成の可能性をもたらすライブラリの実装を拡張します。また、グラフィカルオブジェクト上でのマウスの左クリックの優先順位のシステムを開発します。これは、要素がユーザのアクションに応答しない場合に発生する問題を回避するために必要です。

グラフィカルインタフェースIII:シンプルボタンと多機能ボタンのグループ(チャプター 2)

シリーズの最初の章は、シンプルボタンと多機能ボタンについてでした。2番目の記事は、アプリケーション内でユーザーがセット(グループ)のうちオプションのいずれかを選択することができる際の要素の作成を可能にする相互接続されたボタンのグループに専念します。

グラフィカルインタフェース III: シンプルなボタンと多機能ボタン(チャプター 1)

ボタンについて考えましょう。ここでは、簡単なボタン、拡張機能を持ったボタン(アイコンボタンとスプリットボタン)、また相互接続されたボタン(ボタングループとラジオボタン)を作成するためのいくつかのクラスの例を説明していきます。そのうえ、それらの能力を拡大するためのコントロールのために既存クラスにいくつかの追加を導入します。

グラフィカルインタフェース II:メインメニュー要素(チャプターー4)

これは、グラフィカルインターフェイスに関するシリーズの第二部の最終章です。ここでは、メインメニューの作成を検討します。このコントロールの開発とユーザの行動に正確な反応するライブラリクラスのハンドラ設定が実証されます。また、メインメニューの項目にコンテキストメニューを取り付ける方法についても説明します。そのに加えて、現在非アクティブな要素のブロックも言及されます。

グラフィカルインタフェース II:ライブラリのイベントハンドラの設定(チャプター3)

以前の記事には、メインメニューの構成部分を作成するためのクラスの実装が含まれています。ここで、主要な基本クラスと作成されたコントロールのクラスでイベントハンドラを細かく見ることにします。また、マウスカーソルの位置に応じたチャートの状態の管理にも特別な注意が払われます。

グラフィカルインタフェース IV:情報インターフェース要素(チャプター1)

開発の現段階では、グラフィカルインタフェース作成のライブラリは、フォームとそれに取り付けることができるいくつかのコントロールを含んでいます。今後の記事の1つがマルチウィンドウモードについてになることは、以前に言及されました。そのための準備が整ったので、それは次の章で対処します。この章では、ステータスバーとツールチップ情報インタフェース要素を作成するためのクラスを作成します。

グラフィカルインタフェース II: 区切り線とコンテキストメニュー要素(チャプター 2)

本稿では、区切り線要素を作成します。区切り線要素は、独立したインターフェース要素としてだけでなく、他の多くの構成要素の一部として使用することもできます。本稿ではまた、その後、コンテキストメニュークラスの開発に必要なものすべての詳細を考察します。それに加え、アプリケーションのすべてのグラフィカル・インターフェース要素へのポインタ格納の基本であるクラスに必要なすべての追加をご紹介します。

グラフィカルインタフェース II:メニュー項目要素(チャプター1)

シリーズの第二部では、メインメニュー、コンテキストメニューなどのインターフェイス要素の開発の詳細をお話しします。また、要素の描画にもふれ、そのための特別なクラスを作成します。カスタムイベントを含むプログラムイベントの管理なども詳しく話し合われます。

グラフィカルインタフェース I: 種々のプログラム及びメタトレーダー4ターミナルでのライブラリのテスト(チャプター 5)

このグラフィカルインターフェイスに関するシリーズの第一部の前章では、フォームクラスは、そのコントロールを押すしてフォームの管理を許可するメソッドによって改善されました。本稿では、インディケータやスクリプトなどの異なるMQLプログラムでのテストが行われます。ライブラリはすべてのMetaTraderプラットフォームで使用できるクロスプラットフォーム対応として設計されたので、MetaTrader...

グラフィカルインタフェース I: フォームボタンとインターフェイス要素削除のための関数(チャプター 4)

本稿では、コントロールのクリックによるフォーム管理のメソッドを追加してWindowクラスの開発を続けていこうと思います。フォームのボタンによってのプログラムの終了を有効にするだけでなく、フォームの最小化と最大化機能も実装します。

グラフィカルインタフェース I: グラフィカルインタフェースの動画化(チャプター 3)

前回の記事では、コントロールのフォームクラスの開発に着手しました。本稿では、チャート領域にフォームを移動するためのクラスメソッドを書き入れによってそれを続行します。その後、このインターフェイスコンポーネントをライブラリコアに統合します。また、マウスカーソルが上をホバリングしたときにフォームコントロールの色が変わることを保証します。

グラフィカルインタフェース I: コントロールのフォーム(チャプター 2)

本稿ではグラフィカルインタフェースの第一及び主要素である、コントロールのフォームを作成します。このフォームには複数のコントロールが任意の場所と組み合わせで添付することができます。

グラフィカルインタフェース I: ライブラリストラクチャの準備(チャプター 1)

本稿は、グラフィカルインタフェースの開発に関するあと一つのシリーズの始まりです。現在、MQLアプリケーション内で高品質なグラフィカルインタフェースを迅速かつ簡単に作成できるよコードライブラリは1つもありません。ここで、グラフィカルインタフェースとは私たちになじみ深いオペレーティングシステムで使用されるグラフィカルインタフェースを意味します。

GUIのレイアウトとコンテナの使用: CBoxクラス

この記事は、CBoxクラスによるレイアウトマネージャーを使って、レイアウトとコンテナに基づくGUIの生成の代替手法について取り扱います。CBoxクラスは、GUIパネルの必要不可欠なコンテナとして機能する補助コントロールです。グラフィカルパネルのデザインを容易にし、ときとして、コーディングの時間を割きます。

MetaTrader 5 でRSS フィードを表示するためのインタラクティブアプリケーション構築

本稿では RSS フィードを表示するためのアプリケーションを作成する機能を見ていきます。本稿は MetaTrader 5 用のインタラクティブプログラム作成に標準ライブラリの特徴を利用する方法を示します。

MQL5 クックブック:ОСО オーダー

トレーダーのトレーディング活動にはさまざまなメカニズムや注文同士の関係を含む相互関係がつきものです。本稿は OCO 注文処理のソリューションを提案します。新規データタイプがそこで作成されるのみならず、標準クラスは広くかかわっています。

オブジェクト指向アプローチによる EA モードのプログラミング

本稿は MQL5 でのマルチモード売買ロボットプログラミングの考えかたについて説明します。モードはすべてオブジェクト指向アプローチにより実装されます。どちらのモードクラス階層のインスタンスおよび検証用クラスも提供されます。売買ロボットのマルチモードプログラミングは MQL5 で書かれた EA...

リキッドチャート

時間の秒、5分から開くバーを持つ毎時チャートを見たいですか?バーのオープン時間が毎分変わるようであれば再作成されたチャートはどのように見えるのでしょうか?そのようなチャートでトレードすることにどんなメリットがあるのでしょうか?本稿ではこういった疑問に対する答えを見つけていきます。

MQL4 と MQL5 を利用してフラクタルベースのトレンドラインをプロットする。

本稿はMQL4 および MQL5 を使用して「フラクタル」インディケータを基にしたトレンドラインのプロット自動化について説明します。本稿では 2 言語に対するソリューションの比較展望が提示されています。トレンドラインは既知の2つの最終フラクタルを利用してプロットされます。

MQL5 クックブック:カスタムチャートイベント処理

本稿では出人の側面とMQL5 環境におけるカスタムチャートイベントシステムの作成について考察します。イベント分類方法例およびイベントクラスとカスタムイベントハンドラのプログラムコードもここで確認することができます。

最適化数点のシンプルな考え

最適化のプロセスにはコンピュータや MQL5 クラウドネットワーク検証エージェントのリソースも大量に必要とします。本稿では作業の促進とMetaTrader 5 ストラテジーテスタの改良に利用する簡単な考えをいくつか取り上げます。こういったアイデアはドキュメンテーション、フォーラム、記事から得ました。

ソーシャルテクノロジースタートアップの構築 パート1: MetaTrader 5 シグナルをツイートする

今日は MetaTrader 5 ターミナルを Twitter とリンクする方法を学習し、EA のトレードシグナルをツイートできるようにします。RESTful ウェブサービスに基づく PHP にソーシャルディシジョン支援システムを作成します。この考えはコンピュータ援用取引と呼ばれる自動トレーディングの特定の概念からきています。われわれは 別の方法でExpert Advisors...

MQL5 ウィザード:計算された価格での発注、ストップロスおよびテイクプロフィット設定標準ライブラリ拡張

本稿は MQL5 標準ライブラリの拡張について説明します。それは MQL5 ウィザードを用いてインクルードされたモジュールから受信する価格によって Expert Advisors を作成し、発注し、ストップロスおよびテイクプロフィットを設定することを可能にするものです。この方法はモジュール数に追加の制限は何も設けず、その連携動作において競合が発生することはありません。

MQL5 エキスパートアドバイザーから、GSMモデムを使用する

現在、トレーディングのアカウントを監視する手段がたくさんあります:モバイルターミナルはICQを用い、プッシュ通知を行います。しかし、すべてインターネットの接続を必要とします。この記事は、特に呼び出しやテキストメッセージはできるが、モバイルのインターネットを使用できないような時にトレーディングターミナルの情報を取得できるようになるエキスパートアドバイザーを作成するプロセスを紹介します。

MQL5クックブック - MQL5での未決注文の取り扱いとマルチカレンシーエキスパートアドバイザー

今回は、指値売り、逆指値売りなど未決注文に基づくトレーディングアルゴリズムを持つマルチカレンシーエキスパートアドバイザーを作成していきます。この記事は、以下を紹介します:特定の時間半位におけるトレーディング、未決注文の実行・修正・削除、最後のポジションが利取りや損切りにて閉じられたかのチェック、各シンボルにおける取引の履歴の管理などです。

スピンドルチャートインジケーター

この記事は、スピンドルチャート描写とトレード戦略とEAにおけるその使い方に関するものです。まず、日本のロウソク足チャートとも繋がりがある、そのチャートについてみていきます。次に、MQL5言語でのソースコードベースでのインジケーターの実装について分析します。インジケーターとトレード手法に基づいてEAをテストしてみましょう。

MQL5 プログラミング基礎:時刻

本稿は時間と連携する標準的 MQL5 関数に着目します。また、プログラムテクニック、Expert Advisors およびインディケータを作成する際必要となる時間と関連する実践的に便利な関数も取り上げます。特に注意を払うのが時間測定の一般的理論です。本稿はまず MQL5 の初心者プログラマーに興味を持ってもらえる内容です。

MQL5 Cookbook:カスタム情報パネル上のポジションプロパティ

今回は、現在シンボルについてポジションプロパティを取得し、マニュアルトレーディングの間カスタム情報パネルにそのポジションプロパティを表示するシンプルな Expert Advisor を作成します。情報パネルはグラフィカルオブジェクトを用いて作成され、表示される情報はティック毎にリフレッシュされます。これは "MQL5 Cookbook: Getting Position...

MQL5 クックブック:MetaTrader 5 ストラレジーテスタでの position プロパティ分析

先行記事 "MQL5 Cookbook: Position Properties on the Custom Info Panel"の Expert Advisor の変更バージョンを提供します。お伝えする問題の中にはバーからのデータ取得、現シンボルにおける新規バーイベント確認、ファイルに標準ライブラリのトレードクラスのインクルード、トレード処理実行用トレードシグナルおよび関数検索のための関...

MQL5 Cookbook:トレードレベルを設定/変更する際エラーを避ける方法

シリーズの前稿 "MQL5 Cookbook: Analyzing Position Properties in the MetaTrader 5 Strategy Tester" からの Expert Advisor への取り組みの続編として、既存の関数を改良、最適化しつつ有用な関数を数多く用いて Expert Advisor を強化していきます。今回 Expert Advisor は...

MQL5 クックブック:ポジションプロパティを取得するためのディール履歴と関数ライブラリ

ポジションプロパティについて先行記事で提供されている情報を簡単にまとめます。本稿では、ディールヒストリーにアクセスした後にのみ取得可能なプロパティを得る関数を数個追加して作成します。また便利な方法でポジションやシンボルプロパティにアクセスできるようにするデータストラクチャについても知識を得ます。

MQL5 クックブック:Expert Advisorsにトレード条件を設定するためのインディケータ利用

本稿では MQL5 クックブックシリーズの先行記事をとおして作業をおこなってきているExpert Advisorの修正を続行します。今回は、Expert Advisor は値がポジションオープンの条件を確認するのに使用されるインディケータを使って強化されます。それに一点添えるために、外部パラメータにドロップダウンリストを作成し、3つのトレードインディケータの中から1つを選ぶことができるように...

Expert Advisor パラメータのユーザーパネルからの『オンザフライ』の変更

本稿ではパラメータをユーザーパネルから管理できる Expert Advisor の実装を示すちょっとした例を提供します。『オンザフライ』でパラメータを変更するとき、Expert Advisor はのちにファイルから読み込みパネル上で適切に表示するために情報パネルからファイルに取得した値を書きます。本稿はマニュアルでトレードを行う方または半自動モードでトレードを行う方に適しているでしょう。

MQL5 クックブック:トリプルスクリーン戦略に基づくトレーディングシステムに対するフレームワーク作成

本稿では MQL5で「リプルスクリーン」戦略に基づくトレーディングシステムに対するフレームワークを作成します。Expert Advisor を一から作成することはしません。代わりに、実質上すでにわれわれの目的に役だっている先行記事 "MQL5 Cookbook: Using Indicators to Set Trading Conditions in Expert Advisors"...

MQL5 クックブック: マルチ通貨 Expert Advisor - シンプル、かしこい、迅速なアプローチ

本稿ではマルチ通貨 Expert Advisorに適切なシンプルなアプローチの実装について述べます。これは理想的な条件下でありながら各シンボルに対して異なるパラメータでExpert Advisor を検証/トレーディングする設定を可能にするということです。例として2個のシンボルに対するパターンを作成しますが、コードに少し変更を加えるだけで必要に応じてそれ以外のシンボルも追加できるようにしてお...

MQL5 クックブック:パラメータ数無制限での複数通貨対応 EXPERT 作成

本稿ではトレーディングシステムの最適化に対して一組のパラメータを使うパターンを作成していきます。同時にパラメータ数は無制限に認めます。シンボルリストは標準的なテキストファイル (*.txt)内に作成します。各シンボルに対する入力パラメータもファイルに格納されます。このように Expert Advisorの入力パラメータ数に関してターミナルの制約を回避することができます。