
ファイルは2つあります。
[EA用]
[インジケーター用]
MT4 Build765で作成・動作確認しています
最新版(ver2.1)がこちらにあります。
ダウンロード後、Manual_Backtest_EA.mq4 は[Experts]のフォルダー、Manual_Backtest_Indi.mq4 は[Indicators]のフォルダーに入れてください。
使い方
①ストラテジーテスターを起動します。
②画像のように設定します。

モデルは「コントロールポイント」か「全ティック」に設定してください。
ビジュアルモードが便利です。
③スタート後、新しいチャートが表示されるのでそのチャートにインジケーターManual_Backtest_Indiを表示させます。一時停止させた方がやりやすいです。
④あとはテスターを動かしながら(1.スキップの左 [>>] を押しながら 2.[Pause/Break]キーを押しながら)、[買い][売り]とかクリックすると発注されます。
キーボードのショートカット
[A] ・・・ 買い注文
[D] ・・・ 売り注文
[S] ・・・ ポジション全決済
⑤インジケーター側でポジションの指値(リミット)、逆指値(ストップ)の設定もできます。

⑥そして変更がチャート上でできます。

レンジの外に移動させたり、トレールのようなこともできます。
⑦トレード終了後、結果表示(レポート、グラフ)となります。
結構「Forex Tester2」というソフトに近づけたかなと。最低限のことはこれで十分だと思います。あとはポジション管理とか、個別の決済でしょうか。やろうと思えばできなくもないです。
自分としては裁量トレードする人にお役に立てるインジ&EAだと思います。ぜひ使ってみて感想を聞かせてください。もっとこうした方がいいなどありましたら、参考にさせてもらいます。機能を追加させます。
【追記】2015/02/12 20:23
早速バグがあり、修正しました(OrderModify error 1)。最新版はManual_Backtest_EA.mq4(2015/02/12 ver1.1)です。
【追記】2015/02/15 12:34
頻繁に修正することになりそうなので、しばらくはβ版ということにしてください。
上に最新版をアップしました。ver1.2
上書き保存、コンパイルをお願いします。
【主な修正】
1.買い、売りの位置を逆に。
2.キーボードのショートカット[←][→][↑][↓]は廃止。
3.ロット数を変更可能にしました。

0.1が1万通貨ということで、デフォルトで0.1にしました。1.0がいいでしょうか。
これからの予定
・指値、逆指値注文
・簡易結果表示
「【MT4】Strategy TesterでManual Backtestをする(ほぼ完成版)」へ続く・・・


ありがとうございました。
ところで、おもしろいプログラムを公開されましたね。
勉強させていただきます。
ありがとうございました。
こちらこそありがとうございました。
またよろしくお願いします。
自分としては結構便利だなぁと自画自賛してます。
これでまた検証を繰り返そうと思います。
いまポイジョンとっているのでインジケータの確認はまだできてないですが、重宝しそうなソフトですね。
実際のトレードのように検証としてのバックテストができるかなぁと思い作りました。
まだまだ改良をしないといけないかなぁとも感じてます。
週末にでも試してみてください。
別のソフトを立ち上げるのではなくインジケータだけでここまで出来るのは素晴らしいですー。
あるとうれしいな、って機能は「ForexTester2」や「MT4裁量バックテスター」と比較すると、
・ロット数の調整
・時刻の表示
・売りと買いの位置はMT4に合わせて左右反対の方がいいかも?表示も「成行売り」「成行買い」と言ったように名前も同一で。
・インジケータの配置はメインの右下ではなく左下の方が最新の足とかぶらないので見やすいかも(Chart Shiftでずらしています)
・オフラインチャートを自動生成(Visualが1分足なら60倍で1時間足と言うような形)して複数足を同時に見られるとよりデモトレードに近いのでいいかも。
もろろんソースをみて自分で改良してみる、という方法もありかと思っています。
複数足の箇所は、以前にお話しした内容を含めて重複して書いていますね。いまだうまくいってない箇所です・・。
自分も昔作ろうとしてザセツしたことがあります。OrderSend()をスクリプトで入れるように考えたんですけど、なんだけ旨くオーダーが通らなくてあきらめました。
使ってみて改良ポイントを考えました。
1.買いボタンが右、売りボタンが左のほうがよい
MT4のトレードパネルも右が買いですよね。(細かい話ですが)
他のツールでもスピード注文とかもそうなってるので習慣的にしっくり来ます。
2.これはちょっと実現するのが難しいような気がしますが、
トレード中にも成績を見たい。
今何回トレードしていてそのうち何回勝ったとか、勝率とか、RRレシオ(リスクリワード比?)とか、バックテストを最後待てやらずに途中でやめたりしてもある程度目安として見えると便利かなと。
あと、ご存知かもしれないですが、トリビアです。EA名と同じ名前のテンプレートを作っておくとバックテストの時そのテンプレートが適用された状態でチャートが表示されます。
saru999さんから、こちらのブログを教えていただきました。
高齢者トレ-ダ-です。
素人レベルのプログラミングで悪戦苦闘してEA作りを楽しんでいます。
いくつかの記事を拝見させていただきましたが、
珠玉のインジケ-タ-群、すごいですね。
これからもいろいろ勉強させていただきたいと思います。
よろしくお願いいたします。
ソフトにはソフトの良さがあると思うのですが、インジだけでそれに近づけたらいいなぁと思ってます。「ForexTester2」持っているのですが、最近使ってないです。(^_^;)
>・ロット数の調整
これは追加させたいです。インジのパラメーターでやるか、チャート上でやるか考えてます。
>・時刻の表示
日本時間に変換したものってことでしょうか。あるといいですね。考えます。
>・売りと買いの位置はMT4に合わせて左右反対の方がいいかも?表示も「成行売り」「成行買い」と言ったように名前も同一で。
これは気づきませんでした。左右変更します。「成行売り」となると横長にボタンを作らないといけないかなぁと。
>・インジケータの配置はメインの右下ではなく左下の方が最新の足とかぶらないので見やすいかも(Chart Shiftでずらしています)
ずっとChart Shiftでずらしてやっていたので気づきませんでした。これは対応したいです。
>・オフラインチャートを自動生成(Visualが1分足なら60倍で1時間足と言うような形)して複数足を同時に見られるとよりデモトレードに近いのでいいかも。
同期のインジで対応できるかなぁと。ちょっとまた考えてみます。
いろいろアドバイスありがとうございます。近日中に機能追加したものをアップします。
使っていただきありがとうございます。
自分もスクリプトでOrderSend()できると思ってやったのですが無理でした。
>1.買いボタンが右、売りボタンが左のほうがよい
これは気づきませんでした。なんとなく青は買いかなぁと思って作ったのですが、ほとんどの業者の発注画面は左が売り(青)で右が買い(赤)なんですね。また修正したいです。
>今何回トレードしていてそのうち何回勝ったとか、勝率とか、RRレシオ(リスクリワード比?)とか、バックテストを最後待てやらずに途中でやめたりしてもある程度目安として見えると便利かなと。
これはあるといいですね。ただEA側からどうやって出力を出すかを考えないといけないかなと。リスクリワード比を表示するのはおもしろいです。機能として追加してみたいです。
トリビア知りませんでした。これは便利です。いちいちチャートの設定をやっていて面倒でした。こういう方法があったんだ。教えていただきありがとうございます。
はじめまして。
こちらこそよろしくお願いします。
インジケーターはいろいろ作ってます。
EAはまた開発再開したいです。納得のいくものができればいいのですが。
自分もプログラムは独学でやっているので素人に近いレベルです。
私も教えてください。
これからもよろしくお願いします。
勉強会したいです。
ダウンロードさせて頂いたManual_Backtestセットのコードを睨んで
リファレンスなども読みつつ、しばらくいじくってみたら、
ボタンの作り方やOnChartEventの使い方も概ね理解できました。
やっぱりちゃんと動作するサンプルコードがあると勉強がはかどりますね。
ありがとうございます。
ところで、機能追加ですが、ここまで出てないものとして、
1) ストップ・リミットもBT中に変更可能にする
2) ペンディングオーダーの実装
3) 一日の特定の時間に停止する機能(ロンドン時間だけ検証したいなどの需要)
とりあえずこのくらい思いつきました。
3) は、停止するのはfai氏のhttp://d.hatena.ne.jp/fai_fx/20091006/1254754827#seemore
あたりの方法で実現できそうですが、サマータイムとか真面目に考えはじめると
ちょっと面倒くさいかもしれませんね。
お返事ありがとうございますー
ForexTester2はテスターとしては優秀かとは思いますが、MT4のインジケータが使えないとかなにかと不便を感じていますのでMT4ベースがいいなって思っています。
>>・ロット数の調整
>これは追加させたいです。インジのパラメーターでやるか、チャート上でやるか考えてます。
ロットは資金管理を意識しながら裁量トレードの練習をすることを考えると変更は出来る方がいいですね。チャート上で出来る方がよりいいですが、動作時の負荷や改良のための負担がかかるようであればインジのパラメータでもいいと思います。
>>・時刻の表示
>日本時間に変換したものってことでしょうか。あるといいですね。考えます。
「MT4最小バックテスター」では日時が表示されるため、今いつの値動きかをすぐにわかります。「Manual_Backtest」でも表示されるといいなと思ってました。
日本時間への変換は、出来ればあった方がいいかなと思います。
>>・売りと買いの位置はMT4に合わせて左右反対の方がいいかも?表示も「成行売り」「成行買い」と言ったように名前も同一で。
>これは気づきませんでした。左右変更します。「成行売り」となると横長にボタンを作らないといけないかなぁと。
出来れば色(RGB)も同一の方がそれっぽくなるのでいいですね。
名称を変えると横長になるのがネックですね…
合わせて他の方がおっしゃっている「トレード中にも成績を見たい」はCSVで逐次出力するのが出来るならそういった代替もありかと思っています。
複数足については
http://d.hatena.ne.jp/fai_fx/20100411/1270913869
をまねしてBuild600以降対応版でやってみたのですがいまだ出来てないですね・・。
あとは複数足が出来ればほぼほぼ「ForexTester2」や「MT4裁量バックテスター」に近づくと思いますー。
コードにコメントも入ってないですし、一部コピペもあったりして理解するのは難しいのではないかなぁと思います。他人のコードはどれも難しいですね。(^_^;)
あとオーダーはMT4系の形式で書いているのでそのままではMT5では使えないですね。
1) ストップ・リミットもBT中に変更可能にする
これは変更出来るのですが、また違うのでしょうか。
2) ペンディングオーダーの実装
これを今取り掛かってます。できるようにしたいです。
3) 一日の特定の時間に停止する機能(ロンドン時間だけ検証したいなどの需要)
こういうことが出来るんですね。知りませんでした。勉強になります。
Pauseキーでテスターを停められたんですね。これも知りませんでした。今までマウスでやっていたので便利になります。
ForexTester2はMT4のインジを使えるようにしてほしいです。ソフトとしてはいいソフトですけど。
ロット数の調整はチャート上でできるようにしました。今度またファイルをアップします。試してみてください。
それにしてもfaiさんのブログはいろいろ参考になります。またじっくりと見てコードに反映していこうと思います。
>これは変更出来るのですが、また違うのでしょうか。
すみません、勘違いしてました。
EA側ではなく、インジケーター側で設定するんですね。
さらに、エントリー後に手動でも動かせるので何の問題もないです。
失礼しました。
またコードを修正したので試してみてください。
使い勝手とか参考にしたいです。
初心者なので裁量用のバックテスターを探してここにたどり着きました。
さっそく使ってみたのですが、うちもMT4ではうまく作動しませんでした。
最新のMT4では動作しないのでしょうか?
それが原因でしょうか?
テスターの縦幅が狭いからではないでしょうか。
一度広げてみてください。
ですが、チェック入れてスタートさせても新しいチャートが出てこないです・・・。
スタート押しても、ただビッ!って音が出るだけです。
最適化グラフや最適化結果は空欄のままです。
それはおかしいですね。ビジュアルモードをオンにしてスタートさせたらUSDJPY,H1(visual)のように普通は新しいチャートが出てくるはずですが。。。
もう一度確認しましたがやはりできないようです。
mt4の会社2つ使ってますが両方使えないです。
やり方なにか間違えてるのかなあ・・・
EAは普段使っているのでEA自体は動かせるはずなんですが
デモでもできます。EAのビジュアルモードのバックテストができますでしょうか。
それができるならこのマニュアルでもできるはずです。
試してみてください。
Manual_Backtest_EA.mq4
[インジケーター用]
Manual_Backtest_Indi.mq4
ダウンロード後、Manual_Backtest_EA.mq4 は[Experts]のフォルダー、Manual_Backtest_Indi.mq4 は[Indicators]のフォルダーに入れ、再起動
したのですが、通貨ペア、モデル
の項目が出てきませんで、通貨選べません。どうしたら表示されますでしょうか?
他のEAを使ったときは出ますか?