Strategy Testerで複数通貨ペアを扱えるライブラリ
今回のライブラリファイルやテストに使ったインジケータセットはここです。
DL PASS: MT4MultiLib
MT4のStrategyTesterでのバックテストでは指定した通貨ペア(Symbol())
以外の値を取得出来ないようです。(と思っているけど方法があるのかなぁ?)
例えば、MT4のStrategyTesterを使用してUSDJPYのバックテストをしてい
る時に
Print( "Open[1]=",Open[1]);
や
Print("iOpen("USDJPY",Period(),1)=",USDJPY",Period(),1));
は値が取得できますが、
Print("iOpen("EURJPY",Period(),1)=",EURJPY",Period(),1));
等と違う通貨ペアでやっても値は取得出来ません。
という事で、USDJPYテスト時にEURJPYの値も取得できちゃうぞ、という
ライブラリを作成してみました。(仕様詳細、注意事項、制限はDLファイル
の"読んでね.txt"を参照して下さい。)ちなみにピリオドは、設定ピリオド
以上であればOKです。例えばM15設定時にM15、M30、H1等はOKですが、
M1,M5はNG等。
で、実際にライブラリを実装して動作させてみました。
まずはここにあるMCPというインジケータです。
#これV2もあるみたいですね・・・まだ見てもないですが・・・・
http://codebase.mql4.com/8022
Ku-chart これは、ここを元にしましたが、少々元のプログラムを
書き換えているので参考になるかどうか?ですが
http://d.hatena.ne.jp/fai_fx/20111122/1321894623
動作動画
使えるか使えないかはあなたしだい・・・って違う!!!
ライブラリが悪いとも・・・・これが真実かぁ!
後、これ使えるけど改造出来ない?とうのを教えて貰えれば改造するかも?
これは本人の気分しだい・・・・って体調との相談なのですが・・。
<補足>
動作は簡単に書いてしまうと目的の通貨ペアのHistoryファイルを直接読んで
しまえ!という事をやっています。記述はMT4のみw。実はC++でDLLの作成
もちょっと考えてみましたが、MT4上での時間経過の取得とか複数の通貨ペア
のデータベース管理をどうしようとか・・その他色々考えてるとMT4の機能を
使っちゃった方が簡単かもと思ってしまいました。処理速度は・・・作ってか
ら考えようとwww
#ここらへんで・・・色々変な作りになってますがご勘弁を・・・・
#もっとべたに書いた方が処理速度的にいいのかもと思ってみましたが、
まだバグがある可能性があるのである程度メンテナンスを考えてます(謎