基礎から学ぶシステムトレード
シストレブログ人気ランキング  

シストレ徹底攻略シストレマスターへの道ワールド・トレーディング・エッジ基礎から学ぶシステムトレードシストレニュースシストレツールシストレナビTOPへ

 

2012年01月31日(火)

コピートレードのプログラミング(3) [MQL4]



コピートレードの続きです。

漠然とトレードをコピーすると言っても、具体的にどういう情報をコピーすればよいでしょうか?

MT4のトレードでは、成行き注文であれば、

 ・売買の種類
 ・売買ロット数
 ・売買価格

が必要ですし、待機注文であれば、さらにその注文の有効期限が付く場合があります。

また、どちらの場合でも、損切りオーダー利食いオーダーが付加されることもよくあります。

トレードだけでなく、口座情報までコピーしたければ、これらの情報すべてをコピーする必要がありますが、それは面倒です。

ここでは、簡単のため、トレードが約定したという情報のみをコピーすることにします。つまり、オープンポジションのロット数が変化した都度、その情報をコピーします。

ここで、MT4とMT5でポジションの扱い方の違いに注意する必要があります。

MT4では、同じ通貨ペアのトレードでも、送信するオーダー毎に別々のチケット番号が発行されて区別することができます。業者によっては両建ても可能なので、同じ通貨ペアで買いポジションと売りポジションが混在することもあり得ます。

しかし、MT5の場合、オープンポジションは通貨ペア毎に合算されてしまい、オープンしたポジションの合計ロット数だけしかわからないようになっています。両建てポジションも同じロット数同士でキャンセルされてしまいます。

MT4同士のトレードのコピーであれば、オーダー単位でコピーすることもできるのですが、ここでは、コピー元がMT4でもMT5でも共通に処理できるよう、オープンしたポジションのロット数だけを渡すようにしてみます。

次に複数の通貨ペアをどのように区別するかです。

もちろん一つのファイルで複数の通貨ペア情報を渡すこともできますが、その場合、コピー先で、そのファイルの内容を分析して各通貨ペア毎に分けるという作業が必要になります。

ここでは、最も簡単に、一つのファイルには一つの通貨ペアの情報だけしか渡さないようにします。

すると、ファイルの中身にはロット数の情報だけ入れればよいことになります。買いか売りかの区別は、買いをプラスの値、売りをマイナスの値にすれば、一つの数値だけで済みます。

では、通貨ペアはどこで区別するかというと、それはファイル名で区別します。例えば「EUR/USD」の通貨ペアであれば、「EURUSD.txt」というファイル名にするなどです。以下に具体例を示します。

EUR/USD 0.1ロットの買いポジションの場合、

「EURUSD.txt」 というファイルに「0.1」という内容を書き込みます。

USD/JPY 0.2ロットの売りポジションの場合、

「USDJPY.txt」 というファイルに「-0.2」という内容を書き込みます。

ここまで簡単に考えると、プログラムは割と簡潔に書くことができます。

次回から実際のプログラムの書き方を説明していきます。


>>“基礎から学ぶシステムトレード”全記事バックナンバーはこちらから




Posted at 17時03分


ページのトップへ ページのトップへ

Sponsor AD

2012/1

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

プロフィール

豊嶋久道

2003年よりFX取引を始め、システムトレードの道へ。最近ではFXオプション取引も含めたトレーディングシステムの研究を行っている。システムトレードを基礎から正しく理解するための情報を発信する予定。

PHOTO

実際の相場におけるランダムウォーク

実際の相場におけるランダムウォーク

カテゴリーリスト

最近の記事

検索


当サイトコメントについて

当コメントは情報提供のみを目的として作成されたものであり、投資に関してはご自身でご判断くださいますようお願い致します。また、当資料は著作物であり著作権法により保護されております。無断で全文または一部を転載することはできません。

RSS1.0

[Login]


powered by a-blog
Copyright (C) 2008 PhiConcept,Inc. All rights reserved.