2016年1月1日金曜日

新年おめでとうございます。 お年玉EA MACD改!

新年おめでとうございます。
昨日は飲みすぎました。
今から伏見稲荷の眼力社へ行って先見の目を授かりたいと思います。
お狐様5分後の未来が見えるようにしてください。

さてお年玉企画MACD改良型です。
年末のMACD3minは買い建てのみでしたが、売り建てもできるようにしました。
ポジションがあるときはそのポジションと同じ方向のみとなります。
ポジションを持っていない時にはどちらか先に出たシグナルの方向になります。
11カ月で10万⇒23万と2万円改善しました。
最大47本立てています。建て玉は減らしたかったのですが4本増えてしまいました。
ソースコードは例によって下に張り付けてあります。
にほんブログ村 為替ブログ システムトレード 自作EA派へ
にほんブログ村


#property copyright "Copyright 2015/12/31,TACA"
#property link      "http://mt4kyoto.blogspot.jp/"
datetime TimeOld;
int Ticket;
extern int Profit=10;
double PrSub;
int Mode=0;
extern double Lots=0.01;
int start(){if(Time[0]!=TimeOld){TimeOld=Time[0];
if(OrdersTotal()==0){Mode=0;}
if(Mode>=0){
if(iMACD(NULL,1,12,26,12,0,0,2)<=iMACD(NULL,1,12,26,12,0,1,2))
  {if(iMACD(NULL,1,12,26,12,0,0,1)>iMACD(NULL,1,12,26,12,0,1,1))
    {int b=OrderSend(NULL,0,Lots,Ask,3,0,Bid+Profit,"Long",1231,0,Red);Mode=1;}}}
if(Mode<=0){
if(iMACD(NULL,1,12,26,12,0,0,2)>=iMACD(NULL,1,12,26,12,0,1,2))
  {if(iMACD(NULL,1,12,26,12,0,0,1)<iMACD(NULL,1,12,26,12,0,1,1))
    {int c=OrderSend(NULL,1,Lots,Bid,3,0,Bid-Profit,"Short",1231,0,Blue);Mode=-1;}}}  
Averaging();  
}return(0);}
int Averaging()
{ double PosAve=0;double LastPrice=0;double PosAll=0;double PosNum=0;
  for(int i=0;i<OrdersTotal();i++)
  {int d=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
    LastPrice=OrderOpenPrice();
    PosAll+=LastPrice*OrderLots();
    PosNum+=OrderLots();
  }
  if(PosNum==0){PosAve=0;}
  else{ PosAve=PosAll/PosNum;}
  for(i=0;i<OrdersTotal();i++)
  { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==True)
    { Ticket=OrderTicket();
      if(OrderType()==0)
      {PrSub=PosAve+Profit*Point;}
      else
      {PrSub=PosAve-Profit*Point;}
    int e=OrderModify(Ticket,OrderOpenPrice(),0,PrSub,0,CLR_NONE);
    }
  }
return(0);
}

0 件のコメント:

コメントを投稿