2016年7月8日金曜日

名もない極悪EAと結果!その3

二個ほどEAを作りました。

なんとか試験の損害費用は1000円以内で収めたいところです。


ソースA OnTick毎に20回オーダーをします。
このEAをバックテストすると
一分間に742回発注します。 ということは12.3回/秒!!!!
やはり割り込みに問題がある気がします! 

void OnTick(){for(int i=0;i<20;i++){E();}}
void E(){int d=OrderSend(Symbol(),1,0.01,Bid,0,Bid+0.01,Bid-0.01,NULL,1,0,clrChocolate);}


ソースB OnTick枚に20回Flagを上げます
3ms毎にフラッグを見て上がっていたら発注します
バックテストは何も起こりませんでした。
OnTimerは無視されるのですね・・・

void OnInit(){EventSetMillisecondTimer(3);}
bool Flag;
void OnTick(){for(int i=0;i<20;i++){Flag=true;}}
void OnTimer(){
if(Flag){int d=OrderSend(Symbol(),1,0.01,Bid,0,Bid+0.01,Bid-0.01,NULL,1,0,clrDarkSalmon);}
Flag=false;}



このソースを見て鋭い方はお気づきかと思いますが空腹です。
チョコやサーモンが食べたいところです


0 件のコメント:

コメントを投稿