2009年10月20日 (火)

MetaTrader5ベータ版

10月14日からMetaTrader5のベータ版がダウンロードできるようになっています。

http://www.metatrader4.com/forum/13908

■今後の計画
・ベータテストは4-5ヶ月間実施されます
・新しい機能が段階的にリリースされます
・最初の段階ではFX専用ですが、CDFや株式取引、オプション取引で利用できるようになります。
・現在はテスター機能はリリースされていませんが、次のステップでリリース予定です。
・2009年11月からブローカーでのテストが開始されます。

計画を見ているとベータテスト期間は長く、まだまだ日本のブローカーでMetaTrader5が利用できるのは先の話のようですね。ようやくMetaTrader4が日本で認知されてきたのを考えると、数年以上はかかるのではないでしょうか。
慌ててMetaTrader5に飛びつくのではなく、今の段階ではMetaTrader4でじっくり取引をしたほうがよいと思います。^^;

| | コメント (0)

2009年6月 2日 (火)

MetaTrader5リリース情報

MetaTraderの新バージョンであるMetaTrader5のリリースが秋に、またベータ版の配布は今年の夏に予定されているようですね。フォーラムに情報がありました。

MetaTrader 5 Client Terminal

ちなみにフォーラムではMetaTrader5の画面も公開されています。見た目はほとんど変わりませんが、アイコンなどが少し変わっているところをみると新バージョンらしさがでていますね^^

ちょっと気になったのは「MetaTrader5システムが1から作り直された」という事です。。もちろんMetaTrader4のよい面を拡張、悪い面を改善しているのでしょうが、それは良いことばかりではなく、逆に安定性を犠牲にすることにもなります。

MetaTrader4が常に不具合改修などでバージョンアップを繰り返しているように、プログラムが完成形に近づくには非常に長い年月がかかります。MetaTrader5がリリースされても最初は不具合が多く、完全自動売買させるにはリスクを伴うかもしれません。

たとえば、「数時間連続稼動させたらMetaTrader5が落ちて売買できなくなった。」「オーダーしたらポジションが指定の10倍になった。」という事が起きるかもしれないということです。これでは自動売買どころではありませんね。^^;

あまり過度な期待はせず、安定稼動し始めるまでは様子見程度のほうが良いでしょうね。なんだかんだで、あと1、2年はMetaTrader4の時代が続くような気がします。

さて気になるMetaTrader5の新機能ですが、、、長くなってので続きはまた今度^^

| | コメント (0)

2009年5月17日 (日)

MetaTrader4バージョンアップ(Build224)

5/14にMetaTrader4のバージョンがBuild224にバージョンアップしました。

http://www.metaquotes.net/news

今回の大きな変更はヘッジに関するエラーが追加されたことだと思います。MetaTraderを扱う業者がヘッジを禁止している場合、エラーが発生するようになるため注意が必要です。あと、あわせて幾つかの不具合が改修されているようですね。

[バージョンアップ内容]

1. Added new error code 149 ("Hedge is prohibited") that is returned to a client at the attempt to open an opposite position to an existing one if hedging is prohibited.
->ヘッジ(両建て)が禁止されている場合、ポジションをオープンする際に、エラーが発生するようになります。エラーコードは149「Hedge is prohibited」。

2. Changed descriptions of some functions in MQL4 Help.
->ヘルプファイルにて幾つかの関数の説明が変更になりました。

3.Fixed operation of the ArrayCopy function with timeseries array: in some cases the zero element of an array was not copied.
->ArrayCopy()関数で0番目の配列がコピーされなかった不具合を改修

4.Fixed displaying of the list of open positions in Windows Vista: eliminated title blinking.
->Windows Vistaを利用しているときの表示不具合を改修

5.Fixed error that could result in the reconnection of client terminals.
->再接続時にエラーになることがある不具合を改修

6.Fixed client terminal failure because of a critical error in Windows 7.
->Windows 7を利用したときの致命的なエラーを改修

7.Added new language packs (Latvian and Croatian), amended existing packs.
->言語パックの追加

※和訳は英語のニュアンスから大雑把に理解し記載しているため、間違いがある可能性があります。厳密を期す場合は、英語から直接理解して頂きますようお願いします。

※MetaTrader4の情報をお探しならこちら。

MetaTrader4を利用した完全自動売買システムの構築にお勧めのマニュアルです。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2009年4月12日 (日)

MetaTrader4バージョンアップ(Build223)

4/3にMetaTrader4のバージョンがBuild223にバージョンアップしました。

http://www.metaquotes.net/news

今回は不具合改修のみなので、大きな変更はありません。更新してもシステムには影響なので安心してバージョンアップしてください^^

[バージョンアップ内容]

1. Fixed error that resulted in terminal crash after the re-compilation of an Expert Advisor attached to several charts at the same time.
->複数のチャートに適応されたExpretAdvisorを再コンパイルしたときにMetaTraderがクラッシュする不具合を改修

2. Fixed error that could result in the re-connection of client terminals if they had no ticks for selected symbols.
->選択したシンボル(通貨ペア)のティックがないときに、再接続が発生することがある不具合を改修


※MetaTrader4の情報をお探しならこちら。

MetaTrader4を利用した完全自動売買システムの構築にお勧めのマニュアルです。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2008年11月16日 (日)

MetaTrader4バージョンアップ(Build220)

11/7にMetaTrader4のバージョンがBuild220にバージョンアップしました。

http://www.metaquotes.net/news

前回の218からなぜかバージョンが1つスキップされていますね。^^;

今回は不具合改修とテスター機能の改善があるようです。詳細は不明ですが、モデリングの改善がふくまれているので、もしかするとテスト結果がこれまでと変わってしまう可能性があるかもしれません。念のため今一度バックテストを実行させておいたほうが良いかと思います。

[バージョンアップ内容]

1. Fixed error of event sound play.
->サウンド再生の不具合改修

2. Fixed a number of errors resulting in terminal failure.
->ターミナルがエラーになる幾つかの不具合を改修

3. Fixed misprint in the Italian interface.
->イタリア語版の誤字修正

4. Tester: Fixed activation of Take Profit levels.
->テスター機能の修正:Take Profit関連の修正

5. Tester: Improved reference point modeling.
->テスター機能の改善:モデリングの改善

6. Tester: Added automated deletion of records from the tester cash, if more than 24 hours have passed since their last use.
->テスター機能の改善:前回利用時から24時間以上経過した際、資金を自動削除する機能を追加

※MetaTrader4の情報をお探しならこちら。

MetaTrader4を利用した完全自動売買システムの構築にお勧めのマニュアルです。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2008年11月 9日 (日)

スプレッド大幅縮小

121証券株式会社の「RobotFX」、「121FX」のスプレッドが11月10日より大幅に縮小になるようです。

例えば
・USD/JPY 1Pips
・EUR/USD 1Pips
等、、、他のブローカーと比べると、かなり破格の設定ですね。

詳細はこちら>スプレッド大幅縮小のお知らせ

ちなみにスプレッドは買値と売値の価格差であり、通貨を売り買いするときには必ず支払う必要のあるコストです。つまり売買手数料と同等の意味をもっています。安ければ安いほど、勝てる確率が増えます。

それともう一つ、「スプレッドが固定」されるのも魅力的だと思います。通常相場が激しく動くときは、一時的にスプレッドが広がったりするのですが、基本固定されます。(もちろん例外はあるようですので、プレスリリースを確認してください。)

MetaTrader4で完全自動売買を行っていると、当人はパソコン前にいないのが通常でしょうから、スプレッドが固定されているのは安心感につながると思います。
うれしいシステム変更のお知らせでした。

>121証券株式会社

| | コメント (0)

2008年9月14日 (日)

121証券(国内ブローカー)でMetaTrader4を利用する

国内ブローカーの121証券でMetaTrader4が利用できるようになったそうです。

121証券株式会社

ただし、MetaTrader4を利用するためには、システムトレード専用コースのRobotFXを利用する必要があるようです。

RobotFX取引ガイド

利用できる通貨は現在、以下の10種類

EUR/USD、USD/JPY、GBP/USD、USD/CHF
EUR/JPY、GBP/JPY、CHF/JPY、EUR/GBP
EUR/CHF、GBP/CHF

必要証拠金は1万通貨(1ロット)につき1万円。最大リバレッジは200倍です。

最小取引単位は1万通貨(1ロット)から可能のようです。

さて、早速ダウンロードして試してみました。なぜかMT4上では以下の18種類が表示されていますが、実際に利用できるのはうち10種類という事なのでしょうか。

121pair

あと、さすが国内ブローカーというだけあって、121のサーバにつなぐと日本時間が表示されていました。日本時間メインで取引したい方にはかなり見やすいのではないでしょうか。

なにはともあれ、MT4採用ブローカーが国内にあるというのはうれしいことですね。早速口座開設してみたいと思います。

>121証券株式会社

| | コメント (1)

2008年7月 6日 (日)

MetaTrader4バージョンアップ(Build217)

7/3にMetaTrader4のバージョンがBuild217にバージョンアップしました。

http://www.metaquotes.net/news

前回の216より3ヶ月近く間が開きましたが、それほど改修された数はないようです。MT4もだいぶ安定してきているという事でしょうか。
今回も不具合改修がメインで特に大きな変更はないようですが、FileReadArray()やArrayMinimum()、の関数で不具合が改修されているため、それらをプログラムで利用している場合は念のため動作確認をされるほうが良いかと思います。

[バージョンアップ内容]

1. MQL4: Fixed a compiler error that caused crash in Microsoft Windows Server 2008 operating system.
->不具合改修
 Microsoft Windows Server 2008におけるコンパイルエラーの修正

2. MQL4: Fixed an error in the FileReadArray() function. When reading array lines, the number of read lines is returned now.

->MQL4修正
 FileReadArray()関数の不具合を改修(戻り値の不具合)

3. MQL4: Changed the calculation algorithm of ArrayMinimum() and ArrayMaximum() functions.

->MQL4修正
  ArrayMinimum()関数の計算アルゴリズムを変更

4. MQL4: Fixed an error of converting the line of "HH:MI:SS" type into a number of datetime type in the StrToTime() function.

->MQL4修正
 StrToTime()関数の不具合を改修(HH:MI:SS形式の変換ミス)

5. MQL4: Fixed an error causing crash when a string variable is added to itself.

->MQL4修正
 string型の不具合を改修(文字列変更時の不具合)

6. Tester: Fixed an error of Bid and Ask variables formation in custom indicators used by Expert Adisors tested.

->テスター修正
 カスタムインディケータが利用するBid、Ask変数のエラーを修正

7. Tester: Introduced additional checks of data discrepancy when generating test sequences.

->テスター修正
 データの矛盾を回避するチェックを追加

8. Tester: Fixed margin calculation after the triggering of stop levels.

->テスター修正
 ストップレベル到達後の証拠金計算方法の修正

9. Fixed an error of ExpertsDllConfirm parameter recognition in the initial configuration file.

->不具合修正
 ExpertsDllConfirmパラメータ認識の不具合を改修

※MetaTrader4の情報をお探しならこちら。
MetaTrader4を利用した完全自動売買システムの構築にお勧めのマニュアルです。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2008年6月28日 (土)

Automated Trading Championship 2008

MetaTraderを使った自動売買システムの大会が始まります。

Automated Trading Championship 2008

大会自体は今回で3年目を迎えますので割と有名なのではないでしょうか。主催はMetaTraderの製作会社であるMetaQuotes SOFTWAREです。

大会は、2008年10月1日~2008年12月26日の約3ヶ月間

エントリーは事前受付のため、2008年7月1日~2008年9月19日の間に登録しておく必要があります。お忘れなく!

賞金総額は80000ドル

優勝:40000ドル(約400万円)
準優勝:25000ドル(約250万円)
3位:15000ドル(約150万円)

の内訳となっています。

詳細なルールはこちらをお読みください。>ルール

エントリーは自由ですので興味がありましたら一度参加されてみては(^^)

自動売買システムの構築に不安のある方は、MetaTraderで自動売買システムを構築するノウハウをこちらにまとめています。よろしければ是非どうぞ。

「FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集」

| | コメント (0)

2008年5月 6日 (火)

自動売買システムの作成サービス

自動売買システムを作成してくれるサイトをご紹介します。

自動売買システム製作オーダーシステム

おそらくこのブログを見て頂いているほとんどの方は、ゆくゆくは完全自動売買システムでの運用を考えられていると思います。

例えば、私と同じようなプログラマーの方や、私のMT4本等のマニュアル本などを見て独学で勉強される方、知り合いにプログラマーがおられて作成を依頼される方、、、であれば何とか自動売買システムを構築する事もできるでしょうが、中には挫折してしまった方もおられるのではないでしょうか。

そのような方には、是非一度見てほしいサービスです。

通常、この手のシステム構築は業者に頼むと数10万(高いものだと数100万)はするかと思いますが、こちらのサービスはなんと3万円から完全自動売買システムの構築を依頼することができます。もちろん規模により上下するみたいですが、かなり格安ですね^^

もし、よろしければどうぞ。

>>自動売買システム製作オーダーサービス

| | コメント (0)

2008年4月15日 (火)

ポジション情報を定期的にWebサーバにアップする方法

MetaTrader4でポジションを定期的にWebサーバにアップする方法をご紹介します。最近出張が多く、家でポジションをチェックできないため、よく使っている機能です。

この機能を設定しておけば自動的にMetaTrader4が最新ポジションの情報をWebサーバにアップしてくれますので、外出先でもインターネットさえ繋がっていればブラウザを使って最新ポジションをチェックすることができます。

特に自動売買していると現在保持しているポジションや、トレード結果が気になりますが、外出先でも確認できるため重宝しています^^

例えば、次のようになります。

http://fxprogrammer.k2srv.com/blog/test/statement.htm

クローズしたポジションや、オープン中のポジションがチェックできるHTMLフォーマットをMetaTraderが自動的に生成し、これを定周期(5分、10分、15分、・・・)にWebサーバにFTPを使って更新してくれます。

設定方法は簡単で、事前にFTPの設定を行っておくだけです。
まず「ツール」->「オプション」からオプションウィンドウを開き、「Publisher」タブを選択します。

Ftp

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

(2)Account:口座番号を指定します。

(3)Refresh every:更新する周期を選択します。5分、10分、15分、20分、30分、60分、240分(4時間)、1440分(1日)

(4)FTP server:FTPサーバのアドレス

(5)FTP path:HTMLを格納するパス

(6)FTP login:ログインユーザ

(7)FTP password:パスワード

(8)Passive mode:パッシブモードを利用するか

このように設定をすると、指定したパスの中にstatement.htmというファイル名でHTMLが作成されます。FTPの設定が正しいか、「テスト」ボタンでテストすることをお忘れなく。

| | コメント (0)

2008年4月 4日 (金)

MetaTrader4バージョンアップ(Build215)

3/27にMetaTrader4のバージョンがBuild215にバージョンアップしました。

http://www.metaquotes.net/news

前回のBuild213から割りと短期間でのバージョンアップですので、不具合改修がメインのようです。特に大きな変更はないようですが、Build213でコンパイルしたプログラムは再コンパイルが必要になるので注意してください

1. MQL4: Fixed error of constant string concatenation (Expert Advisors and scripts compiled in build 213 must be recompiled).

->不具合改修
 文字列の処理不具合(Build213でコンパイルしたプログラムは再コンパイルが必要)

2. MQL4: Fixed error of the reinitialization of global and static variables of MQL4-libraries.

->不具合改修
 グローバル変数とスタティック変数の最初期化不具合

3. MQL4: Fixed memory leak when resizing of string arrays.

->不具合改修
 文字列のリサイズ時のメモリリークを解消

4. MQL4: Fixed memory leak when accessing out of range of string arrays.

->不具合改修
 文字列の配列外にアクセスした時のメモリリークを解消

5. Tester: Fixed error of generating ticks in candlesticks with volume 4–6 and with one shadow absent.

->テスター機能の不具合改修

※MetaTrader4の情報をお探しならこちら。
MetaTrader4を利用した完全自動売買システムの構築にお勧めのマニュアルです。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2008年3月22日 (土)

MetaTrader4バージョンアップ(Build213)

3/17にMetaTrader4のバージョンがBuild213にバージョンアップしました。

http://www.metaquotes.net/news

テスターの最適化(optimization)機能が改善・不具合改修されたのがメインのようですね。あと幾つかのバグフィックスも含まれています。特に大きな変更はないようです。

1. Tester: At strategy optimization, fixed check of testing limit triggering, if there are no open positions.

->テスター機能の改善

2. Tester: Disabled check of testing limits at genetic optimization.

->テスター機能の改善

3. Tester: Optimized history uploading.

->テスター機能の改善

4. Tester: Fixed error of displaying the spread in the settings of the symbol under test.

->テスター機能の不具合改修

5. Tester: Fixed triggering check for stop orders and pending orders.

->テスター機能の不具合改修

6. MQL4: Fixed optimizer error. In some cases, it committed inaccuracy in dividing a number with floating point by a constant.

->最適化機能の不具合改修

7. MQL4: Fixed error of the function GlobalVariablesTotal(). The function always returned 0, if there were no calls to the list of global variables.

->GlobalVariablesTotal()関数の不具合改修

8. MQL4: Fixed error of the function iBarShift(), in some cases of search for zero bar in monthly timeframes.

->iBarShift()関数の不具合改修

9. MQL4: Fixed error of memory overflow when calling to the function функции iStdDevOnArray().

->iStdDevOnArray()関数の不具合改修

10. MQL4: Fixed operation of the function IsConnected().

->IsConnected()関数の不具合改修

11. Fixed error of reading the parameter of naming fonts for text labels.

->テキストラベルの不具合改修

12. MetaEditor: Added Chinese Dictionary.

->中国語の追加

13. The digital signature of our company is added to all executable files.

->デジタル署名の追加

それと今回のバージョンアップで変更されたのかわかりませんが、E-メールのオプション設定画面の日本語がおかしかった設定が修正されたようです。

合わせてマニュアルも改定しておきましたので、ダウンロードサイトからバージョンアップ版を取得してください^^。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2008年3月 5日 (水)

トレンドラインの角度を求める MetaTrader4編

少し前の記事で、CTL言語向けの「トレンドラインの角度を求める」方法を記述しました(記事はこちら)。

割とよくある需要なので、今度はMetaTrader4向けに作成してみました。

Maangle

上段のメインウィンドウには移動平均線(25日)を描画しています。下段のウィンドウに表示されているのが、移動平均線の角度になります。

下降トレンド時にはおよそ-40°~-45°、現在の凪状態ではおよそ0°の角度となっていることが確認できるかと思います。角度はおおよそ合っていそうですね。

さてMetaTrader4でのプログラムの記述方法ですが、使う関数が違うだけで、基本的には考え方は前回と同じになります。(考え方の部分は前回の記事を参照してください。)

まず角度を求める三角関数atan()関数は、MetaTraderではMathArctan()関数になります。あと移動平均線はiMA()関数で取得できます。具体的には次のように記述すれば良いかと思います。

double ma0 = iMA(NULL, 0, 25, 0, MODE_SMA, PRICE_CLOSE, i);
double ma1 = iMA(NULL, 0, 25, 0, MODE_SMA, PRICE_CLOSE, i+1);
ExtMapBuffer1[i] = (MathArctan(ma0 - ma1) / 0.1) * (180 / 3.14);

ExtMapBufferはインディケータ配列で移動平均線の角度が格納されます。全ソースコードはこちらからダウンロード出来るようにして置きましたので、よろしければどうぞ。>「MAAngle.mq4」をダウンロード

<パラメータ説明>
MovingAvaragePeriod・・・移動平均線の期間
BarWidth・・・バー間の差分(単位はレート)

利用するときは、表示するチャートに合わせて、BarWidthを変更してください^^

MetaTrader4で完全自動売買するのに最適なマニュアルはこちら
MT4の各関数の説明や、役立つテクニックが満載です。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

| | コメント (0)

2007年11月28日 (水)

サンプルプログラム解説書配布のお知らせ

MetaTrader4専用マニュアルが一部バージョンアップしました。

FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

特典として付けている、次の「サンプルプログラム」4本ですが、、

  • 移動平均線クロス売買システム
  • ブレイクアウトシステム
  • 移動平均線乖離率システム
  • ゴトウ日売買システム
  • このたびプログラムの内容を解説した、
    『サンプルプログラム解説書』(PDF全22頁)
    を追加で作成致しました。

    サンプルプログラムを通してでないとわからないテクニックや、プログラムの考え方などを記載しています。ブロック毎に細かく解説を行っておりますので、プログラムを追って理解するのにお役に立てるかと思います^^。

    書籍は、先週オープンしたばかりの購入者専用のダウンロードサイトのほうで配布しておりますので是非ダウンロードください。(ご購入者の方は無料でダウンロードできます)

    それにしても、書籍を発行した後でもバージョンアップできるというのは電子書籍の利点ですね。今後も更なるバージョンアップを考えておりますので、乞うご期待ください^^。

    | | コメント (8)

    2007年11月14日 (水)

    祝☆3位になりました

    おかげさまでMetaTrader4書籍の売れ行きは順調で、販売させていただいている インフォトップ のFX部門で売り上げ3位まで浮上してきました^^。

    Infotop3

    ↑3位になったときの画像です。

    紹介記事はこちらから。

    MetaTrader4(MT4)で完全自動売買システムを構築する方法

    当初、誰がこんなマニアックな本が売れるなんて予想したでしょうか・・正直びっくりしてます(^^;。

    やはり完全自動売買を夢見ている方は多いということなんでしょうね。書籍はそんな方に少しでもお役に立てればと思っています。

    もしよろしれけばどうぞ^^。

    FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

    | | コメント (6)

    2007年11月 7日 (水)

    MetaTrader4(MT4)で完全自動売買システムを構築する方法

    MetaTrader4で完全自動売買システムを作成するための入門書を発行いたしました!

    その名もズバリ、、

    FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

    ※当初、こんなマニアックな本を誰が買ってくれるのだろうか?(笑)と思っていたのですが、11月1日に発売して丁度1週間ほど経過し、思ったより好調な売れ行きで驚いています・・(^^;。
    この場をお借りして厚くお礼申し上げますm(_ _)m。

    内容ですが、次のようになっています。

    (1)完全自動売買システムの構築方法 

    初心者向けに「完全自動売買システム構築方法」を手順としてまとめています。MetaTrader4のインストールからシステムの構築(インディケータ&自動売買システム作成)、バックテスト、運用までの流れを一通り書いています。

    (2)完全自動売買システム構築のための250の技(MetaTrader4プログラム逆引き大全集)

    実はこちらが本体なのですが(笑)、250の技というのはMQL言語を使ったプログラミングの手法を250個掲載しているという意味です。
    逆引きというのは、「○○がしたい」->「○○すれば良い」というような形式になっているという事で、目的からプログラミング手法を辿れるため、辞書のように使って頂けると思います。

    (3)特典など

    サンプルプログラムとして4つほど私が作成したシステムを付けています。これらのシステムを使って儲ける事はできないと思いますが、プログラムの勉強用にと思って用意しました。自由に改造して良いシステムを作ってください。

    あと、電子書籍の形態を利用した「無料バージョンアップ」や、「プログラムサポート」などもお付けしています。

    もしよろしければ、こちらからどうぞ。

    FX完全自動売買システム構築のための250の技 MetaTrader4逆引き大全集

    ちなみに、「詳細内容」のページに目次を全て掲載していますので、250個にどんな技があるかが、わかるようになっています。目次を見るだけでもMetaTrader4でこんな事もできるんだ!と新しい発見があるかもしれません。一度、詳細ページだけでも覗いて頂けると幸いです^^。

    なお、現在はオープン価格として3割引に設定しています。一応、販売2週間(11月14日を予定)をメドにオープン価格を解除しようと思っていますので、お早めにどうぞ^^。

    banner

    | | コメント (8)

    2006年9月23日 (土)

    MetaTrader4のバックテスト機能

    ここ最近やたらとMT4(MetaTrader4)がバージョンアップを頻繁に繰り返しているなと思っていたら、おもしろい機能がバックテストで追加されていました。

    Mt4_all_1

    テスターのところなのですが、気づくでしょうか?拡大してみます。

    Mt4_tester

    Visula modeというのが最近追加されました。最初は意味がわからなかったのですが、使ってみると驚きの機能でした。

    これまで通常バックテストを実行している間は、バックテスト中の進捗バーが表示されているだけで、どのような売買が行われているかというのは全テストが終わってからしかわかりませんでした。これが改善されています。

    Visual modeというのはつまり、バックテスト中にチャートを表示させ、あたかもリアルタイムで売買が行われているかのように表示する機能です。バックテスト中にチャートが進行し、売買が行われるので、見ててもおもしろいです。

    一応、使い方を説明しておきます。

    Visual mode チェック ・・・ チェックするとVisual modeを有効にする。
    その横のバー ・・・ チャートの進み具合のスピードを調整できます。
    「||」「>>」ボタン ・・・ バックテストを一時停止したり、再開したりできます。
    Skip toボタンと、日付 ・・・ 指定した日付までチャートの進行をスキップします。

    実は昔から、このような機能があったらいいなと漠然とイメージはあったのですが、本当に実現されて感動しました。是非、どうぞ。

    | | コメント (4)

    2006年4月 4日 (火)

    デモ用サーバの変更

    MetaTrader4ですが、デモ口座を利用していて、先週末あたりから発注できなくなった方おられますでしょうか?

    ちなみに私の環境では、先週末くらいから「無効な口座」と表示されて、注文もできなくなりました。再度デモのアカウントを取り直そうと思っても、LoginとPasswordのところは空欄になってしまいアカウントも取れない状態でした。

    で、色々と調べていたら、デモ用のサーバが変更になったみたいですね。たぶん4月から。事前にサーバが変わるとメールで連絡が来ていたらしいですが、私のところにはなぜか来てなくて知りませんでした。一応、フォーラムに載っていましたので、やり方を残しておきます。

    「ツール」->「オプション」でオプションダイアログを開きます。

    Option

    サーバの欄に新しいサーバのIPアドレス「66.114.120.22」を打ち込み、「OK」ボタンを押す。これでサーバがMetaTraderに登録されます。

    あとは、いつもどおりデモ口座の開設手続きを行うと、取引用サーバの画面で「66.114.120.22」がでてきますので、それを選んでアカウントの作成を行ってください。

    Server

    ちなみに、MetaTraderを再起動するとサーバのIPアドレスは、「InterbankFX-Demo Accounts」という名前に自動的に変わっていると思います。

    ★★★参考になりましたら、応援お願いします。★★★

    | | コメント (4)

    2006年4月 1日 (土)

    自動売買の起動方法

    以前、コメント欄で「MetaTrader4で自動売買を開始するにはどうすれば良いのでしょうか?」という質問を受けたのですが、若干わかりにくい所もあるので記事にしたいと思います。

    まずMetaTrader4で自動売買を開始するには、ナビゲータウィンドウから「Expert Advisors」にあるトレーディングシステムを選択し、チャートに適用します(ドラッグ&ドロップすればよい)。

    Navi

    ドロップすると、下のような画面が表示されます。適切なパラメータに設定して「OK」を押してください。なお、デフォルトでは「Allow live trading」にチェックが入っていませんのでチェックしましょう。「Allow live trading」にチェックを入れると、システムをリアルタイムで動作させる事ができるようになります。

    Zenpan

    うまくトレーディングシステムをチャートに適応できると、チャートの右上にシステムの名前と×マークが現れます。この×マークはトレーディングシステムが動作していない事を示します。

    Batu

    では、トレーディングシステムを動かしてみましょう。上のボタンアイコンのところに、「Expert Advisors」というボタンがあると思います。これを押してください。すると先ほどの×マークがニコチャンマークに変わったでしょうか?これがトレーディングシステムが動作している事を示します。

    Niko_1

    これで、自動売買の実行が完了しました。あとは注文が執行されるかどうか、確認してみると良いでしょう。

    ★★★参考になりましたら、応援お願いします。★★★

    | | コメント (3)

    2006年3月11日 (土)

    システムのパラメータを最適化する方法

    MetaTraderではバックテストができるというのは、以前、記事にしました。(基本的なバックテストの方法はそちらからどうぞ)
    今回は、バックテストでトレーディングシステムで一番最適なパラメータの組み合わせを探しだす方法を記述します。

    例えば、ある2本の移動平均線のゴールデンクロスで売買するとしたとき、移動平均線は何日のものをつかうでしょうか?
    5日と25日?21日と34日?21日と90日?90日と200日?組み合わせは様々だと思います。
    この機能を使えば、どの組み合わせが過去において一番最適であったかを調べることができます。

    MetaTraderのサンプルとして付いているトレーディングシステム「Moving Average」で試してみましょう。
    まずテスター画面を開き、「Expert Advisor」で「Moving Average」を選んでください。
    次に「Expert properties」を押してください。
    すると「パラメータの入力」タブというのがあると思います。次のような画面です。

    Param

    ここでパラメータが一覧で並んでいると思いますが、変更したいパラメータにチェックを入れてみましょう。チェック入れないとデフォルトのものが適用されます。

    • Valueがデフォルトの値です。
    • Startが開始値です。
    • ステップは間隔です。
    • Stopは終了値です。
      例えば、上記では「MovingPeriod」の値を10から14まで1刻みで検証することを意味しています。具体的には10、11、12、13、14の値を全てチェックします。チェックを二つ以上にいれると複合条件で全ての組み合わせを網羅します。

    この画面の設定が終われば、セッティングでOptiizationをチェックしてください。これで検証モードになります。

    Optimazation

    準備ができたら、スタートを押します。
    設定したパラメータの全ての組み合わせを検証してくれるので、当然ながら時間がかなりかかります。
    最初は、「Every tick」ではなく、検証速度の速いモデルでおおざっぱに検証して絞り込むほうがよいでしょう。

    テストが終われば、以下のタブで結果を見ることができます。

    「Optiization Results」タブ
    検証したパラメータ毎の結果(トータルの損益など)を一覧で表示されます。どのパラメータが良かったか一目瞭然ですね。

    Opresult

    「Optiization Graph」タブ
    検証したパラメータ毎のBlance(損益)がグラフで一覧表示されます。

    Opgraph

    この機能は非常に優れており、過去において最大のパフォーマンスをもつパラメータを一瞬で見つけることができます。ただし、気をつけないといけないのは、パラメータは過去において最適化されるので未来においても利用できるとは限らないことです。この辺りは説明するよりは、実際にやってみたほうが実感できるかもしれませんね。

    参考になりましたら、応援いただけると幸いです!

    | | コメント (0)

    2006年3月 5日 (日)

    過去を検証するバックテストの方法

    自分の決めた売買ルールについて、過去を振り返って検証することをバックテストといいます。皆さんは過去を検証するときにどのようなツールを使っていますでしょうか?

    エクセルなどの表計算ソフトを利用して検証することはできますが、ものすごく手間ですよね。

    私の場合は、バックテストにはMetaTraderを利用しています。MetaTraderの入手方法はこちら。
    ただ、プログラミングのスキルを要するため、すこし難易度が高いかもしれません。しかし、もし売買ルールをプログラムすることができれば、バックテストは非常に簡単に行うことができます。

    今日はMetaTraderのバックテストの方法を説明したいと思います。
    まずは、MetaTraderを起動し、メニューの「表示」→「Strategy Tester」を選択してみてください。一番下に「テスター」が表示されるはずです。

    Setting

    • Expert Advisorで、バックテストを行う売買ルール(プログラム)を選択します。
    • 通貨ペア:テスト対象の通貨を選びます。
    • モデル:通常は「Every tick」を選びます。最遅で時間は一番かかりますが、全ての保持している詳細なデータ(tick足まで)を利用しますので正確です。バックテストはこれでないと意味がないでしょう。そのほかの設定は、
      「Control points」が中速度で、「Open prices only」は最速です。ともに全てのデータを利用しないので、ざっくりした解析しかできません。大まかな解析をしたいときに利用すると良いでしょう。
    • 日付と時間を使用にチェックを入れると、バックテストを行う期間を設定できます。
    • 期間で、適用したい期間を選択すれば準備はOKです。

    「スタート」ボタンを押しましょう。ボタンが「ストップ」に変わり進行バーが進みます。再度「スタート」に戻れば終了です。

    バックテストの結果は次のタグで見ることができます。

    「結果」タグ
    実際にどのような売買が行われたかが記録されています。

    Kekka

    「Graph」タグ
    資金の推移がグラフで表示されます。

    Graph_1

    「レポート」タグ
    トレード回数や、トータル損益、勝率など、細かいデータがレポートされます。

    Report

    「操作履歴」タグ
    プログラムからどんな操作がされたか履歴がでます。なお、Print関数などでメッセージを表示するとここに残ります。

    History

    いかがでしょうか?是非利用してみてください。

    来週の為替予想はこちらから。応援いただけると幸いです!

    | | コメント (4)

    2006年2月16日 (木)

    もし、わからないときは。

    MetaTraderのちょっと便利な使い方です。

    MetaQuotes Language Editerを利用して自作のインジケータを作成しているときなど、MQL言語仕様や、関数仕様がわからない時とかがよくあります。

    たとえば、「#property indicator_chart_window」というプロパティがあった場合、「indicator_chart_window」の意味ってなんだろう?
    とわからなくなったときに、「indicator_chart_window」にカーソルを当てて、「F1」キーを押してみましょう。「ToolBox」ウィンドウの「Help」タブにヘルプが表示されます。

    関数とかも全部同じように、ヘルプが一瞬で引けてしまいます。最近、統合開発環境とかについている「ダイナミックヘルプ」に近い動きをしてくれます。

    「Navigator」ウィンドウで検索しても同じものがでてきますが、コピー&ペーストする手間とかを考えると断然早いです。ぜひ、覚えてみてください。

    よければ応援お願いします。m(._.)m ペコリ

    | | コメント (0)

    2006年2月14日 (火)

    移動平均線を作る(その3)

    移動平均線の作り方(その2)でスケルトンコードの意味がおおよそわかったでしょうか?
    今日はいよいよ移動平均線をつくります。心配しなくてもめっちゃ簡単ですよ。

    start()関数に記述していきます。

        int    counted_bars=IndicatorCounted();

    の下に、以下のように続けてください。

        if(counted_bars<0) return(-1);   //・・・①
        if(counted_bars>0) counted_bars--;   //・・・②
        int limit=Bars-counted_bars;       //・・・③
        for(int i=0; i<limit; i++) {          //・・・④
            ExtMapBuffer1[i]=iMA(NULL,0,MASPeriod,0,MODE_SMA,PRICE_CLOSE,i);  //・・・⑤
        }

    ①~③はおまじないだと思ってください。ティックが動くたびに過去から現在までの全てのインジケータ(移動平均線)を再計算していたら無駄ですので、変化した部分だけを再計算するためのものです。興味があったら解読してみてください。

    ④はループ文とよばれるもので、0からlimit回、 { から } までが繰り返されます。

    ⑤iMA関数を呼び出しています。iMA関数とは移動平均線を描くための関数です。戻り値をExtMapBuffer1(インジケータのためのバッファ)に格納することで、移動平均線ができてしまいます。簡単ですね。
    ちなみに、以下の引数を変えると動きがかわってきます。その他のパラメータはマニュアルを参考にしてみてください。

    • 5番目の引数:
       MODE_SMA:単純移動平均線
       MODE_EMA:指数平滑移動平均線
       MODE_SMMA:修正移動平均
       MODE_LWMA:加重移動平均
    • 6番目の引数
       PRICE_CLOSE: 終値
       PRICE_OPEN: 始値
       PRICE_HIGH: 高値
       PRICE_LOW : 安値

    では、作成したものをコンパイルします。コンパイルというのは簡単にいうと、人が読めるソースコードを機械が理解できる機械語に変換するような作業です。
    メニューに「Compile」ボタンがあるので押してください。
    0 error(s), 0 warning(s)
    が表示されたら成功です。失敗したら、どこがわるいか見比べてください。

    「moving_average_sample.mq4」をダウンロード

    さて、いよいよチャート上に表示させてみましょう。
    「ナビゲータ」ウィンドウの「Custom Indicators」の中に今回作ったインジケータがあるでしょうか?それをチャート上にドラッグしてくだい。
    ちゃんと表示されたでしょうか?

    Movingaverage_chat

    これで、一応、インジケータの作成が終わりました。このサンプルは超簡単なものですので、これからどんどん応用を利かせて色々なインジケータを作りたいと思います。

    もうすぐ開幕です!!
    外為トレード選手権「FX1」で、すごい商品をゲットしちゃいましょう。

    あと、今なら開催元であるセントラル短資さんに口座開設すると、「5000円キャッシュバック」があります。しかも、「1ヵ月手数料無料クーポン」付き。こんな好条件は今時めずらしいですよ!

    オンライン口座開設ができる「日短FXダイレクト」

    応援よろしくお願いします。m(._.)m ペコリ

    | | コメント (0)

    2006年2月12日 (日)

    移動平均線を作る(その2)

    移動平均線を作る(その1)の続きです。
    前回ウィザードで作成したスケルトンコードの説明をします。
    一体どんなコードができたのでしょう?

    大まかに6ブロックに分かれています。

    1. 定数値の宣言
    2. 入力引数の宣言
    3. グローバル変数の宣言
    4. init関数
    5. deinit関数
    6. start関数

    では、順番に見ていきましょう。

    1. 定数値の宣言

      #property 定数名 値


      となっています。Cでいうところのdefine文ですね。自動で作成されたものは特別な意味を持ちますので消さないようにしてください。自分で定義することもできます。
      ・「copyright」は作成者(会社)の名前です。
      ・「link」は作成者(会社)のウェブサイトのURLです。
      copyrightと、linkはプログラムで使われるわけではなくコードに著作権を持たすためにつけるのだと思います。個人用の場合は気にしなくてよいと思います。
      ・「indicator_chart_window」は、ウィザードの「Indicator in seperate window」のチェックをはずしたものに対応しています。チャートとインジケータを重ねて表示します。逆は、「indicator_separate_window」です。
      ・「indicator_buffers」は、簡単にいうとインジケータの線の数です。たとえば移動平均線は1本の線で表しますので、値は1です。ウィザードの「Indexes」で登録した数に一致します。
      ・「indicator_color1」は、インジケータの色です。ウィザードでは赤を選択しましたよね。だから値はredです。
    2. 入力引数の宣言

      extern 型 変数名


      となっているのが入力引数です。Int型のMASPeriodという変数名で値のデフォルトは13を意味しています。ウィザード入力したものと一致しています。
      ちなみにこの値は、インジケータをチャートに貼り付けるときに、設定ダイアログで値を変更することができます。
    3. グローバル変数の宣言

      型 変数名


      となっているのがグローバル変数です。ここで定義した変数はスクリプト内の全てに適用されます。自分で好きなように追加することができます。
      なお、ExtMapBuffer1[]はインジケータを示す特別なバッファです。double型の配列で、配列の要素は宣言段階では不定にしています。どのように使われるかというと、移動平均線はLineですが、Lineを構成する一つ一つの要素は点です。その点の一つが配列の1個に対応します。たとえば、100、110、120の線を描きたい場合は、ExtMapBuffer1が[0]=100、[1]=110、[2]=120となります。
    4. init関数

      int init()


      この関数はインジケータがチャート上に表示される最初の1度だけ起動します。ですので、変数の初期化などを記述します。クラスでいえばコンストラクタです。
      「SetIndexStyle(0,DRAW_LINE);」は、スタイルの設定関数です。0のインデックスを持つインジケータを線で描く(DRAW_LINE)という決め事を設定しています。
      「SetIndexBuffer(0,ExtMapBuffer1);」は、バッファの設定関数です。0のインデックスを持つインジケータは、ExtMapBuffer1という変数で表現されるという決め事を設定しています。
    5. deinit関数

      int deinit()


      この関数はインジケータがチャート上から削除される最後の1度だけ起動します。クラスでいうところのデストラクタ処理に対応します。メモリの開放などを記述すればよいでしょう。
      実際、一番使用頻度は少ないと思いますし、別に記述することがなければ何も書かなくても良いです。
    6. start関数

      int start()


      この関数はレートが変わるたびに実行されます。インジケータの計算処理、表示処理はここで記述されます。いわゆるメイン関数ですね。
      デフォルトで、「int    counted_bars=IndicatorCounted();」というのがあると思います。
      この関数は、「インジケータを最後に記述した後から、変化していないバーの数」をcounted_barsに取得しています。一番最初に呼ばれるときは、0になると思います。それ以降は基本的にふえていきます。
      既にチャート上に記述されているインジケータを再度計算するのはもったいないので、この値を見て必要最小限の処理をしなさい。ということだと思うのですが、おそらくこれを使えという意味でおいてあるのでしょうね。使わなくてもいいです(笑)。

    さて、基本的な知識が身につきましたね。次はこのスケルトンコードに実際のプログラムを記述していきましょう。

    まずはFXの知識を深めるためにも、バーチャルFXや、外為トレード選手権「FX1」で取引の練習をしましょう!あわよくばすごい商品をゲットできちゃいます。

    | | コメント (0)

    2006年2月11日 (土)

    移動平均線を作る(その1)

    MetaTreder4では、MetaQuotes Language (MQLと略すらしい)という言語を用いて、プログラムを記述することができます。これによりインジケータを自作したり、また売買ルールをプログラミングすれば売買を自動化させることも可能となります。

    では、早速MetaQuotes Language EditerというエディタでMQLを書いてみましょう。そうですね。題材は入門としては最適そうな移動平均線くらいにしましょうか。もちろん、しってますよね(笑)?

    1. まず、「ツール」→「MetaQuotes Language Editer」で、エディタを起動させます。ちなみにMetaQuotes Language Editerは英語です。(日本語のメニューにしてほしいなぁ。)
    2. 「File」→「New」を選びます。するとスクリプトを作成するためのウィザードが表示されます。W1




      このウィザードで簡単にMQL言語の雛形ファイルを作成することができます。
      ここではインジケータを作成するため、「Custom Indicator」を選びます。
    3. プロパティの設定画面が表示されます。以下のようにします。
      W2



      ・「Name」 このインディケータの名前。ここでは移動平均線なので「Moving Average Sample」とつけました。注意としてはこれがファイル名になりますので、既に存在するインジケータとだぶらないようにします。
      ・「Author」 作者の名前です。
      ・「Link」 リンクです。作者のサイトとかいれとけばいいと思います。ちなみにこの「Author」と「Link」はプログラム的にはなんの意味ももちませんので、適当でいいです。
      ・「Parameters」 プログラムに渡す引数です。Addでいくつでも渡すことができます。これがインジケータを適用するときのパラメータになります。移動平均線に日数を入れることができるようにMASPeriodというパラメータをつけました。

      入力ができたら、「次へ」。なお、ここで入力したものは後で変更もできます。
    4. 最後の画面です。以下のようにします。
      W3



      ・「Indicator in seperate window」 チェックを入れるとチャートとインジケータを違う位置に表示します。MACDなどはチェックします。逆にチェックをいれないとチャートと重なって表示します。ここでは移動平均線なので、チェックをはずします。
      ・「Minimum」、「Maximum」 今回は関係ないですが、インジケータの最大値を最小値を入力します。RSIとかでは0~100とか入れればよいでしょう。
      ・「Indexes」 インジケータの表示方法を選択します。Line、Section、Histogram、Arrowから選びます。移動平均線はLineしかないので、Lineを追加します。色はお好きなように。

      入力ができたら、「完了」を押します。なお、ここで入力したものは後で変更もできます。

    さて、これだけの操作でウィザードが勝手にインジケータの雛形を作ってくれます(一般的にこのようなコードをスケルトンといいます)。簡単ですね。
    ちなみにこのスケルトンコードは、NavigaterウィンドウのFilesタブで確認できます。Indicatorsというフォルダの下に作成されていると思います。

    では、このスケルトンコードをどのようにするのか?次回に続きます。

    まだまだ道のりは長いです。それまでは、FXの知識を深めるためにも、バーチャルFXや、外為トレード選手権「FX1」で取引の練習をしましょう!あわよくばすごい商品をゲットできちゃいます。

    | | コメント (0)

    2006年2月10日 (金)

    MetaTrader4 導入

    MetaTrader4を導入してみます。

    1. http://www.metatrader4.com/をブラウザで開きます。ちなみにHPは英語です。
    2. Downloadsのページから、「mt4setup.exe」をダウンロードします。
    3. 「mt4setup.exe」をダブルクリックして、インストールします。
      ・言語は日本語を選択できます。(メニューなどが日本語になります。)
      ・ライセンスに同意して、インストールしてください。
    4. インストールしたら、MetaTraderを起動します。
    5. 起動時に「デモ口座の申請」画面が表示されますので、入力項目を埋めて、「貴社からのニュースレター受け取りに同意します」をチェックして(チェックしないと先へ進めません。)、デモ口座を作成します。
    6. デモ口座が作成できたら、最新のチャートデータがダウンロードされますので、デモ開始です。これで準備が整いました。

    では簡単な使い方から、

    • 左の「気配値表示」ウィンドウで、通貨を右クリックして「チャート表示」すると、その通貨のチャートが開きます。(メニューの「ファイル」→「新規チャート」でもできます)
    • 左の「ナビゲータ」ウィンドウで、インディゲータを表示することができます。たとえば、移動平均線を出したい場合は、「Custom Indicators」の下の「Moving Averages」をチャートにドラッグすればチャート上に表示されます。(メニューの「挿入」→「罫線分析ツール」→「Trend」→「Moving Averages」でもできます)
    • 注文はチャートを右クリックして、「注文発注」→「新規注文」でできます。(メニューの「ツール」→「新規注文」でもできます)

    デモ口座ですので、色々試して遊んでみましょう。

    自動売買させるためには、「Meta Quotes Language Editer」ってやつで作成するみたいですね。そのあたりはまた今度検証してみます。

    まずは、いきなりFXを始めて失敗しないように、バーチャルFXや、外為トレード選手権「FX1」で取引の練習をしましょう!あわよくばすごい商品をゲットできちゃいます。

    | | コメント (1)