円建て口座でのバックテスト。

とある私の知人が、EAを作って細々と販売されていらっしゃったのだけど..どうも、そのEAはドル建て口座を前提にした資金管理を組み込んでいたようで、顧客が円建て口座で動かした結果、とんでもない損失を出してしまったとか..^^;


そういえば、はんぞさんも似たようなトラブルに遭われていたし、古い処では、アキバではたらくプログラマのBlogにも解説があります。海外製のEAや、それを参考に作られたEAを使う時は、円建て口座に対応していない可能性に注意しましょう。。


使いたいEAが、円建て口座でどう動くのか知りたい時は、Aplari などの円建てのデモ口座が開ける業者でフォワードテストするのも良いのですが、バックテストでも確認することができます。






↓資金と通貨を設定する画面にはJPYの選択肢がありませんが..

↓無理やり、JPYを入力して、資金欄には100倍程度の金額を設定することが可能です。(1ドル100円程度なので100倍..)


↓ドル建てと円建てでVisual Mode でテスト中の各関数の返す値を比較したところ、それっぽい値が取得できています。

↑EAの中では、AccountCurrency() が "JPY"の時だけ、例外的な処理をするようにプログラムを書けばOKです。





円建てでテストする場合に注意すべき点が1つあって、

↑気配値に必要なJPYペアが無いと必要証拠金額が計算されません。

↑このように気配値に追加すると計算されます。
EURAUD なら、EURJPY,AUDJPY が必要になります。EURDKKm (ユーロ・デンマーククローナのmini)の場合は、DKKJPYmが無いので、EURJPYm,USDDKKm,USDJPYmです。



↑但し、気配値ウィンドウ内には存在しなくても、内部的にJPYペアの価格があれば計算されます。(何かの操作でこうなる場合があるみたいです..orz)



MT4の設定画面に何故 JPY が無いのか?は謎ですが..(昔、一部のブローカーでは有ったような..)、もしかしたらテスト結果に不具合を生じる問題があるのかも知れません..。それでも、ロット計算のテストには有効だと思うので、EAを作られる人は試してみてください。