取引ロボットの構造

FBSウェブサイトの記事を読む

これまでのレッスンを終えると、MetaTrader 5のトレーディングロボットの種類について、すでにご存知のことと思います。 また、MT5の主なアルゴリズム取引ツールがどこにあるのか、どのように設定すればよいのかを知っています。 このレッスンでは、トレーディングロボットの骨組みを見てみましょう。 このレッスンを受ければ、MQL5でのコーディングに対する不安が解消されることをお約束します。

トレーディングロボットとはどのようなものですか?

まず、Meta Editorでロボットの構造を見てみま’しょう。

怖いでしょう? しかし、実際には、すべての取引ロボットには、知っておくべき同じコア要素があります。

トレーディングロボットには、大きく分けて4つのパーツがあります:

  • Setup
  • OnIntIt
  • OnDeinit
  • OnTick

それぞれの要素を詳しく見ていきま’しょう。

Setup

ロボットの管理情報が集約されている部分です。 ここでは、メモを書いたり、変数(固有の名前を持つさまざまな種類の情報)を宣言したり、変更のリストを追跡したり、所有権を設定したりします。

上のスクリーンショットでは、 Setup のサンプルを見ることができます。 著作権、ロボットの主な特性、そして特定のファイルの内容をエキスパートアドバイザーに挿入する#includeコマンドで構成されています。 また、このセクションでは、#inputコマンドの下で主な入力を宣言しています。

OnInIt

二つ目は「OnInit」と呼ばれています。 この部分は、EAを初めて起動したときに起動します。

 この部分では、プログラムの初回起動後に実行されるコマンドが表示されます。 次回以降、これらのコマンドについて解説していきます!

OnDeInIt

エキスパート・アドバイザーの次のセクションは、OnDeinitiation、略してOnDeInIt と呼ばれています。 エキスパートアドバイザーがシャットダウンされたときに実行されます。

OnTick

これがエキスパートアドバイザーの一番面白いところです。 3つの主要部分で構成されており、1ティック(価格に関する新しい情報)ごとに更新されます。 それらはエントリー、エグジット、サイズです。これらの機能は、いつ購入し、いくらで売却し、いつ取引を終了するかを教えてくれるので、エキスパートアドバイザーにとって重要です。

このコードは、MetaTrader 5のプラットフォームに新しいティックが到着するたびに開始されます。 つまり、ビッド、アスクの価格やボリュームが変化した場合、この変化はコードのOnTickセクションにも影響を与えます。

上のスクリーンショットでは、ロボットが最後の取引処理時間やその他のデータをチェックしていることがわかります。

では、もしあなたがコンピュータだったら、コード構造をどのように読み取るでしょうか?

まず、OnInitセクションに行って、その中のすべてを実行します。 自分の戦略に必要な変数やパラメータを設定’します。 このアクションは一度だけ実行されます。

このアクションが完了した後、OnTickセクションに移動します。 まず、撤退すべき取引があるかどうかを確認します。 その後、エントリー可能な取引を探します。 最後に、サイジングアルゴリズムで、ポジションの大きさを確認します。

EAをシャットダウンしたら、OnDeInItを実行します。 このオプションは、チャートからグラフィックを削除し、エキスパートアドバイザー自体にリンクしているものをすべて削除します。

結論

結論から言うと、トレーディングロボットを作ろうと思ったら、その構造を徹底的に知る必要があります。 幸いなことに、どのロボットも似たような構造をしているので、段階的に組み立てていくことができます。

取引を開始します

2022-04-04 ・更新

FBSは、当ウェブサイトを運営するためにお客様のデータ記録を保持しています。「同意する」ボタンをクリックすることにより、当社の プライバシーポリシー に同意したことになります。