メタトレーダー自動売買チャンピオンシップ挑戦記

MT4・MT5の発売元であるMetaQuotes Software Corp社主催だった Automated Trading Championship の参加記録でしたが、今年から非公式のに。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

MQ社まだ死んでます?!

既に30時間が経過していますが、何の情報もありません。
TSDロシアのフォーラムなどでもチラホラ話題になっています。
TSDは今回のコンテストのメディアスポンサーでもあるので、何か情報が出てきてもよさそうなものですが。

過去にデモサーバのティックデータが切れたり、ウェブサイトが落ちたりなどはありましたが、
今回は、mql4.com、mql5.com、metaquotes.netとMT5、MT4のデモ口座のティックデータ全てがこれだけの長時間落ちています。生きているのはバックテストのヒストリーデータとクラウドネットワークのサーバのみです。

FXはブローカーリスクが一番心配だとは言われますが、まさかこんなことはないですよね。
faiさんのブログのタイトルが「とある25万円のソフトウェアの備忘秘録」に変わらない事を祈っています。

スポンサーサイト

PageTop

MQ社死す?!

MQ社のウェブサイトが死んでます。
MT5のティックも既に10時間以上止まったままです。
何が起きているんでしょう?
MT5あまり売れていないようだし、開発費が経営に重くのしかかって・・・なんて。
最悪の場合、このままオワコン?
うーん、コンテストが無くなるのはまだしも、今後の自動売買の行く末にも影響しそうですね。
もちろんこのブログも終わります。

登録終了まで、??日、現在までの参加(予定)者無し???
PageTop

参加(予定)者

昨年の登録受付終了時点の参加(予定)者は1726名でした。
今年はあと27日を残して1726名となり、昨年の参加者を上回ることが見込まれます。

1726

登録終了まで、27日、現在までの参加(予定)者1726名。
PageTop

バックテスト

適当なインジケータの組み合わせでジェネレータでEAを生成してはバックテストに明け暮れる日々ですが、出来合いのEAの成績を判断する、または、未来の成績を予想するための最適化、バックテストというツールは、よく言われているように、当てにならない、意味の無い物なのかも知れません。
しかし1つのバックテストの使い方として、手法の有効性を試す、ないし、手法を発掘するという役割があると思います。
インプットパラメータにしても、特にコンテストだけのことを考えれば、必要ないわけです。だから、自分がオプティマイゼイションをしたい変数だけをインプットパラメータにすればいいのです。
確実なことは、なにか手法のアイデアを思いついたときに、さらっとEAにしてテストしてみるなんて、ちょっとMQLが出来ると便利ですよね。
筆者もたまに酔っ払って何か思い付いて、夜中にガリガリ書き出してテストして、翌朝「ナニコレ?」なんてことがよくありますが。

登録終了まで、29日、現在までの参加(予定)者1664名。
PageTop

2011コンテスト EA 作製記(5)

筆者勘違いをしていたようで、
Your files have not passed automatic verification.
という文章は、“yet”が付いていないので、
Your files have failed to pass already.(あなたのEAは落ちました。)
という意味だと思っていたのですが、
Your files have not tested yet.(あなたのEAはまだテストされていません。)
という意味のようです。というかどちらとも取れるようにしてあるのかも。
つまり、テストに落ちたとすると、この部分は変更されないということです。

なので、改めて始めの12通貨ペアで再提出しました。
ちなみに9通貨ペア版は、9分18秒でした。
と書いているうちに、12通貨ペア版のテスト結果が来ました。今までは、1日~2日掛かっていたのですが、なぜか今回は超早かった。正確には測っていませんが、1~2時間ほどで結果が出ました。
時間は、11分42秒と満足のいくものでした。これならいけそうです。

それから、その前のテストで
Invalid pointer access in 'ExpertMultiSymbolATC2011.mqh' (2064,8)
OnChartEvent critical error
というエラーが出たので、修正をしました。

登録終了まで、1ヶ月と7日、現在までの参加(予定)者1515名。
PageTop

2011コンテスト EA 作製記(4)

・EAをオプティマイズするときの小技その2
EAのシンボルとチャートのタイムフレームを可変パラメータにする。

どこかからExpertMultiSymbol.mqhを拾ってきてMQL5\Includeフォルダに入れます。
EAのド頭の
#include <Expert\Expert.mqh>
を、
#include <ExpertMultiSymbol.mqh>
に替えます。
下のコードをコピペする。
(例によって、どこに春の川からない良い子は真似をしないように)

//+------------------------------------------------------------------+
input int TestSymbol =0; // Symbol number to test
input int TestPeriod =0; // Period number to test
//+------------------------------------------------------------------+
//| Initialization function of the expert |
//+------------------------------------------------------------------+
int OnInit()
{
string symb[12];
symb[0]="USDCHF";
symb[1]="GBPUSD";
symb[2]="EURUSD";
symb[3]="USDJPY";
symb[4]="USDCAD";
symb[5]="AUDUSD";
symb[6]="EURGBP";
symb[7]="EURAUD";
symb[8]="EURCHF";
symb[9]="EURJPY";
symb[10]="GBPJPY";
symb[11]="GBPCHF";
ENUM_TIMEFRAMES per[5];
per[0]=Period();
per[1]=PERIOD_M15;
per[2]=PERIOD_H1;
per[3]=PERIOD_H4;
per[4]=PERIOD_H12;
//--- Initializing expert
if(!ExtExpert.Init(symb[TestSymbol],per[TestPeriod],Expert_EveryTick,Expert_MagicNumber))

per[5]の中身は適当に替えてください。直接TestPeriodを、input ENUM_TIMEFRAMESで宣言してもいいのですが、MQL5になってタイムフレームの種類がだいぶ増えたので、配列にしました。
シンボルも、同じように適当に不要なものは消してください。


1回目のテスト結果は、結局先方の機材の不具合で出なかったようです。テスト時間はわからずじまい。
3通貨ペアにダイエットしたものを再提出したレポートが来ました。
今回はOKで、時間は5分22秒でした。9通貨ペアぐらいならいけそうですね。再度チャレンジです。
TestresultOK


登録終了まで、1ヶ月と12日、現在までの参加(予定)者1436名。
PageTop

2011コンテスト EA 作製記(3)

・EAをオプティマイズするときの小技
EAの中で使っているインジケータのタイムフレームを可変パラメータにする。

EAウィザードでEAを作るときに、シグナルを設定する場面でインジケータのタイムフレームを指定しておくと、この改造がしやすくなります。
Signal Time Frame

生成されたEAのOnInit()の中を見ると
//--- Set filter parameters
filter0.Period(PERIOD_M15);
というパラメータがありますので、これを
//--- Set filter parameters
filter0.Period(Signal_AC_TimeFrame_Period);
などと適当な名前をつけ、上の方のInputパラメータの辺りで、
input ENUM_TIMEFRAMES Signal_AC_TimeFrame_Period =PERIOD_M15; //Accelerator Oscillator TimeFrame Period
と宣言します。これで最適化のときにタイムフレームを可変にすることが出来ます。
Input TimeFrame
注:TrailingMA.mqhまたはTrailingParabolicSAR.mqhを使っている場合、これらの期間はチャートのタイムフレームに依存します。


自動テストが始まったようです。昨日までは
「もうすぐテスト始まります。」だったのが、
「あなたのEAは落ちました。」に替わりました。
まだ、メールもDiscussionページのレポートも来ていないのですが、何分掛かったかが、気になります。
AutoTest started


登録終了まで、1ヶ月と15日、現在までの参加(予定)者1373名。
PageTop

コンテストにEAジェネレータは使えるのか・・・もしれない?(8) 2011コンテスト EA 作製記(2)EA提出しちゃいました

コンテストにEAジェネレータは使えるのか・・・もしれない?(8)
2011コンテスト EA 作製記(2) EA提出しちゃいました

表題の通り、マルチシンボル化したEAで何とかなるかもしれないということで、この企画は、「2011コンテスト EA 作製記」として続きます。

とりあえず、12シンボル全てに適当にバックテストしたシグナルを突っ込み、EAを提出してみました。(差し替えは何回でも出来ますからね。)Allow publishing the EA code (EAを公開する)にチェックを入れてありますので、誰でもダウンロードできます。元々既製品の組み合わせですから。

まだ自動テストは始まっていないようですが、まずテストの時間制限でハネられそうです。
筆者の環境(AMD Athlon64 X2 DualCore 3800+, 3070MB)で掛かった時間が、1月から7月末で43'39"。
MQ社のコンピュータで、たぶん半分ぐらいではないかと。いずれにしろ、15分を超えてしまい時間オーバーですね。通貨ペアを減らすか、時間軸を大きくするなど対策をとる必要があります。

MQ社がEAジェネレータで作ったEAをどう扱うのかが楽しみですが、果たして昨年のベラルーシチームのようにインタビュー後大量失格となるのか?
筆者は昨年の三角裁定EAで既に睨まれていますから、ちょっと心配です。

登録終了まで、1ヶ月と16日、現在までの参加(予定)者1346名。
PageTop

コンテストにEAジェネレータは使えるのか?(7)

テンプレートとなるサンプルEAをバージョンアップしました。

AccountInfo.mqhの一番下で定義されているdouble CAccountInfo::MaxLotCheck()は、どうもポジションの最大ロット制限には関係ないらしい。
ということで、先日の問題点のうちひとつは解決されたので、ついでにクラスをひとつのファイルにまとめました。

以前の、
ExpertMultiSymbol.mqh
ExpertTradeATC.mqh
TradeATC_v103.mqh
は、1つのファイル、
ExpertMultiSymbolATC2011.mqh
になりました。

残るは、m_symbol.LotsMax()を使っているクラス、
MoneyFixedLot.mqh
MoneyFixedRisk.mqh
MoneySizeOptimized.mqh
の中をm_symbol.LotsLimit()に変えるだけです。
MoneyFixedLotATC.mqh
MoneyFixedRiskATC.mqh
MoneySizeOptimizedATC.mqh
これら以外のマネーマネジメントクラスしか使わない場合、
一度に5ロット以上のオーダーを出さない場合などは、上記3つのファイルは不要です。

それから、フォーラムの方で指摘のあった、OnTimer()の代わりに OnChartEvent()を使う方法に変えました。
別にiSpy.mq5が必要になりますのでココからダウンロードして、MQL5\Indicatorsフォルダに入れます。


登録終了まで、1ヶ月と18日、現在までの参加(予定)者1303名。
PageTop
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。