MT4のタグを付けられた記事一覧

フォワードテストをしてみる

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

前回、前々回とバックテストをやってみました。

では、今回はフォワードテストです。

 

バックテストは、過去の履歴データを元にテストを行いました。

フォワードテストは、未来です。

 

未来は、わからないじゃないか!!

って、いう人もいると思いますがその通りです。

 

分からないので、実際に走らせてみるのがフォワードテストです。

でも、テストというだけあって、実弾口座では行いません。

 

デモ口座でのテストということになります。

 

簡単に言うと、デモ口座でEAを走らせることをフォワードテストといいます。

 

なぜ、こんなことをやるかというと、

過去のデータは、ある程度は信用おけますが、通信の問題やPCの負荷など色々問題がありそうな気がしませんか?

それに、ちゃんと思ったように動くかやってみないと分かりませんよね。

 

ということで、実際のEAの動きのチェック。

パラメータ調整は、大丈夫だったか。

といったことを確かめることがフォワードテストの意味するところです。

 

資金に余裕がある人で、自分の作ったEAに自信があれば、このフェーズは飛ばしてもかまいませんが、

少なくても2週間ぐらいはやった方がいいでしょう。

 

このフェーズで、もしダメでもデモですから懐は痛みません。

納得がいくまで、バックテスト、フォワードテストを繰り返してください。

 

ここで焦るとしっぺ返しが大きいので。。。

 

ということで、バックテスト、フォワードテストはしっかりと!

という話でした。

タグ

バックテストしてみる

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

今回は、バックテストのやり方を説明します。

前回のEAを作ってみるで作ったMA_EAを利用して、バックテストしてみたいと思います。

 

バックテストは、デモ環境でしか行えません。

もしかしたら、本番環境でも行えるかもしれませんが、121証券ではレートの履歴データをデモ環境でしか取得できないためです。

まず、本番環境の人はデモ環境に切り替えてください。

ナビゲーターの口座に、本番とデモ用の口座があるはずです。

デモ口座をダブルクリックして、切り替えてください。

デモ口座がない場合や期限切れの場合は、メニューのファイル-デモ口座の申請で申し込んでください。

 

デモ口座は、有効期限(121証券は2週間)がありますが、何度でも申請できるので期限が切れたら申請しましょう。

121証券の場合

申請するとき、口座タイプを選択できます。

forex-jpyを選択してください。

日本のサーバになるので、実際の口座に近くなります。

121証券の場合、時間が日本時間になっているので、時間による操作を考えるとこちらの口座を選択しておいた方がいいでしょう。

 

では、バックテストに必要な履歴データを取得します。

メニューのツール-History CenterかF2キーを押してください。

 

ヒストリー・センター

ヒストリー・センター

今回のテストは、USDJPYで行おうと思うので、通貨ペアのタブを開き、USDJPYを選択してください。

次にDownloadボタンを押して、出てきたウィンドウはOKを押してください。

履歴のダウンロードが始まります。

ダウンロードには、時間がかかるので気長に待ちましょう。

また、テストするときは最新の情報が必要なので、毎回ダウンロードするようにしてください。

 

ダウンロードが終了したら、閉じるボタンを押してください。

 

次にテスターを開きます。

メニューの表示-Strategy Testerを選択してください。

 

テスター

テスター

 Expert Advisor:MA_EA

通貨ペア:USDJPY

モデル:Every tick

期間:M5

期間を全期間で行うと時間がかかるので、4月にしたいと思います。

「日時と時間を使用」にチェックを入れます。

送信者:2009.04.01

宛先:2009.04.30

を指定します。

これで、5分足の4月1日から30日までの試験を行えます。

 

次に、いくらでテストをするか設定します。

Expert propertiesをクリックしてください。

ma_ea_param

日本円では、テストができないのでUSD、500ドルを指定します。

121証券の最低入金額が5万円なので近いところで500ドルとします。

 

パラメータの入力タブでは、EAのパラメータを設定できますが、今回はそのまま利用します。

では、試験をやってみましょう。

スタートボタンを押してください。

tester2

こんな感じで終了です。

ちなみに、「Visual mode」にチェックを入れてスタートすると描画しながらトレードの様子を見ることができます。

描画スピードは、バーを操作することで変更できます。

 

Graphタブを押すと以下のようなグラフになっていると思います。

testergraph

ダメでしたね。

減っています。

 

ちなみに、結果タブではトレードの詳細、レポートタブでは売買レポートが表示されます。

 

こんな感じで、バックテストを実行します。

 

次回は、パラメータを変更しながらバックテストを行い、最適なパラメータを見つける方法を説明します。

タグ

自動売買の結果を外で確かめる

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

FTP接続ができるサーバーを持っていることが条件ですが、口座履歴の内容を見ることができます。

FTP接続ができるサーバーは、無料のものもありますので、探してくださいね。

 

メニューのツール-オプション画面を開き、「Publisher」タブを開きます。

「有効にする」にチェックを入れます。

Account:ログインしているID(121証券だと数字)

Refresh every:更新間隔、5分ぐらいがおすすめ

FTP server:FTPサーバー名

FTP path:アップロードしたいパス(そのままでいいなら/)

FTP login:FTPのログインID

FTP password:FTPのパスワード

 

普通は、「Passive mode」にチェックを入れます。

 

これで、設定完了。

「テスト」ボタンを押して、「successfully」ってでていればOK。

 

http://FTPでアップロード予定のパス/statement.htm

で口座履歴の内容を見ることができます。

 

メタトレーダーの口座履歴タブで、右クリックすると期間を指定できます。

この期間で、FTPで送信するファイルも変わるので、長すぎる場合は期間を変えてみると便利です。

 

この設定で、インターネットがつながる環境なら、EAの売買結果が分かることになります。

最近なら、携帯でも可能ですね。

タグ

メタトレーダーでメール送信

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

メタトレーダーでメール送信させる設定を紹介します。

 

でも、対応するEAなどがないと利用できません。

EAなどを作るときは、メール送信も考えて作りましょう。

 

Yahooメールを使った例です。

もちろん、YahooメールはPOP設定などを有効にしてください。

メタトレーダーは、メニューのツール-オプション画面で、

E-メールタブを表示します。

 

そこで、

「有効にする」にチェック

SMTPサーバ:smtp.mail.yahoo.co.jp:587

SMTPログインID:YahooのログインID

SMTPパスワード:Yahooのパスワード

送信元:Yahooのメールアドレス

送信先:送信したいメールアドレス

 

上記の入力したら、「Test」ボタンをおしてメールが飛んでくれば、設定完了です。

タグ

MQL4で利用できる変数

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

MQL4を利用するにあたって、変数を利用しないとほとんど何もできません。

ということで、よく使う変数を紹介します。

 

int    整数をあつかいます。
double   小数点のついた数をあつかいます。
storing  文字をあつかいます。
datetime 時刻をあつかいます。

 

普通に組む分には、上記の4つを知っていれば、問題ないはずです。

このほかに

bool、char、colorがあります。

 

宣言のやり方は、

int no;
double NowAsk;
string MyName;

のように宣言します。

 

宣言のときに初期化も可能です。

int no=0;
double NowAsk=0.0;

string MyName="kei";

こんな感じです。
代入するときは、
no=1;
no=no+1;
みたいに行います。
この場合、noは2になります。

 

no=1;    //noを1に初期化
no=no+1; //no(今は1)に1を足した値をnoに代入

 

ちなみに、//以降はコメントとしてあつかわれます。

その他にも

/*

コメント

*/

というコメントの書き方もあります。

 

ただし、MetaEditorでは日本語が使えません

英語で書くか、ローマ字を使ってコメントを書くようにしてください。

タグ

MQL4の作法

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

MQL4で、プログラムを組むときに必要な作法を紹介します。

メタトレーダーでインジケータやEA(自動売買)を行うプログラムを組むときに、標準で用意されている関数があります。

基本は、この関数の中にコードを書いてプログラムを実装していきます。

 

○起動したときに1度だけ呼ばれる関数

int init()

{

return(0);

}

 

○終了するときに1度だけ呼ばれる関数

int deinit()

{

return(0);

}

 

○レートが変化したときに呼ばれる関数

int start()

{

return(0);

}

※関数の前にvoid(型がない)を指定してある以外は、最後にreturn(値)で終了する必要があります。

 

インジケータやEAを作成するときに自動でスケルトン(処理が書かれていない関数)が自動的に作成されますが、initとdeinitは、省略可能です。

 

使い方としては、initはstartで使う変数を初期化したり、最初に1度だけやりたい計算や設定ファイルからの読み込みなどを書きます。
deinitは、終了するときに変数の内容を書き込んだり、ポジションをクローズしたりするときに利用します。
startは、レートの変化に合わせてグラフを書いたり、ポジションを持ったり、クローズしたりします。

 

ちなみに、インジケータとEAの差は、
インジケータは、足の数に合わせた変数配列を8個持つことができます。
この配列は、グラフの値とすることができて、ラインを引くと設定しておけば、値を入れるだけでグラフを書くことができます。
売買を行うことはできません。

 

EAは、インジケータのようなバッファを持つことができません。
ただし、自分で宣言すれば変数配列を利用することは可能でが、グラフを自動的に書くようなことはできません。自分で宣言すればグラフを書くことは可能ですが、数に制限があったりするのでグラフを書くことは不向きです。
売買を行うことが可能です。
ということで、グラフを書くにはインジケータ、自動売買を行うにはEAと使い分けが必要です。

 

タグ

MQL4という言語

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

MQL4という言語は、メタトレーダー(MT4)のインジケータ(グラフなどを表示するもの)、EA(自動売買)のプログラムを書くための言語です。

MetaEditorという標準のエディター(メモ帳みたいなもの)がついていて、それを使ってコーディング(プログラムを書くこと)を行い、コンパイル(メタトレーダーが読める形にする)を行います。

 

MQL4は、よくCににているといわれますが、私の感覚だとC#ににていると思います。

クラスや構造体を作れないC#というところでしょうか。

ただし、多次元配列を作ることができ、しかもいろいろな型を混ぜられるので、構造体の配列っぽいことは可能です。

 

ちょっと難しくなりましたが、覚えることはたいしてありません。

1.入れ物の宣言

2.IF文

3.FOR文

基本は、これだけ押さえておけばプログラムは組めます。

他にもいくつか作法がありますが、少しずつすすめていきましょう。

タグ

プログラムの情報収集

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

メタトレーダーのプログラムを紹介するつもりですが、基礎情報を

 

MQL4

本家のサイトですが、英語です。

でも、code baseにサンプルプログラムがたくさんありますので、参考にできると思います。

リファレンス(関数などの仕様)も英語ですが

このサイトは、リファレンスを日本語で書いてくれています。
こういうことを無料で、やってくれる方には感謝ですね。
有料だと
本を買うとすると
があります。
次ぐらいから、徐々にプログラムに入っていきます。

タグ

メタトレーダーのインストール

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

メタトレーダー(MetaTrader)は、無料で使えるFXの売買ソフトです。

ですが、むちゃくちゃ高機能!!

元々入っているものでもいろいろなグラフを表示したりできるのですが、なんといってもグラフや自動売買プログラムまで組むことができるコンパイラーまでついていることです。

それが無料!

いうことなしですね。

 

インストールも簡単。

お金がかかりませんから、とりあえずデモ版をインストールしましょう。

デモの有効期限は2週間ですが、再取得もメタトレーダーから簡単にできます。

121証券で、説明します。



↑のタグをクリックしてください。

左の下の方に「取引システム ダウンロード」があるので、そのページの下の方にある「MetaTrader4」をダウンロードしてください。

デモ口座は、インストール後自動的に作られます。

 

後はインストールするだけ!

ちなみにマニュアルもこのページにあります。

RobotFXの「取引システムガイド」

メタトレーダーにしては、珍しい日本語マニュアルですのでゲットしておきましょう。

 

Vistaへのインストールの注意

Vistaはセキュリティがうるさくなっているので、そのままインストールすると動かないことがあります。

C:\Program Files\MetaTrader

がデフォルトですが、

C:\Users\あなたのPCユーザ名\Program Files\MetaTrader

に変更してください。

これで、問題なく動くはずです。

 

121証券の口座開設

121証券で口座を開設するときは、オンラインが便利です。

プリンターを持っているならば、必要書類を印刷してサインするだけ。

郵送用の封筒まで印刷できます。

この封筒は、郵便料金がかからないので子供になった気分で、工作してください。

のりやはさみが無いことがあるので、免許などのコピーをとるついでに、買っておきましょう。

 

口座開設までの時間は、約1週間で完了します。

タグ