2018年6月15日金曜日

EAの評価方法 マイナス月

Eマイナス月数をEAの評価の一つにしています。

運用してマイナスの月が何回あるかです。
一年間のマイナス月は3カ月以内としています。

バックテストでの一ヶ月は一瞬ですが、
EAを実運用していて一ヶ月マイナスはメンタルを冒されてしまいます。
そして、もうこのEAいいわ~となってしまうのが人の常です。

いままではバックテストをして結果をEXCELに貼り付けてマイナス月を出していたのですが、いちいち面倒なのでEAに組み込んでみました。

終了処理OnDeinit()に月別の結果とマイナス月が何カ月あったかを表示させます。

〇使い方
EAの最後にしたのコード入れる。
バックテストが終了すると「エキスパート」に表示
簡単です。 是非お試しを

void OnDeinit(const int reason)
{
int CntLose;
double Profit[2100][13];
for(i=0;i<=OrdersHistoryTotal();i++)
{
d=OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
int yy=TimeYear(OrderOpenTime());
int mm=TimeMonth(OrderOpenTime());
Profit[yy][mm]+=OrderProfit();
}
for(i=2015;i<=2018;i++)
{
for(int j=1;j<=12;j++)
{
Print(i," / ",j," ",Profit[i][j],"\n");
if(Profit[i][j]<0)CntLose++;

}
}
Print("LoseMonth : ",CntLose);
}


0 件のコメント:

コメントを投稿