MetaTrader 5で使えるStochトレーディングシステムの紹介

Mike 2017.01.26 18:09 34 0 0
添付ファイル

アイデア提供者CollectorMQL5コードの作成者barabashkakvnです。

このシステムは、保留中の売りリミットおよび買いリミット注文を使用します。また、23:59に全ての注文を削除し、ポジションをクローズします。

保留中の注文の価格計算

   double temp_h=iHigh(1);
   double temp_l=iLow(1);
   double temp_c=iClose(1);
   double H4,L4;
   H4 = (((temp_h - temp_l)*1.1) / 2.0) + temp_c;
   L4 = temp_c - ((temp_h - temp_l)*1.1) / 2.0;
//---
   if(db!=str1.day_of_week && s==0)
     {
      if(!m_trade.SellLimit(Lots,H4,Symbol(),
         H4+ExtStopLoss*Point(),
         H4-ExtTakeProfit*Point(),0,0,"H4"))
         GlobalVariableSet("SELLLIMIT",0);
      else
        {
         GlobalVariableSet("SELLLIMIT",1);
         GlobalVariableSet("DateS",str1.day_of_week);
        }
     }
//----
   if(db!=str1.day_of_week && b==0)
     {
      if(!m_trade.BuyLimit(Lots,L4,Symbol(),
         L4-ExtStopLoss*Point(),
         L4+ExtTakeProfit*Point(),0,0,"L4"))
         GlobalVariableSet("BUYLIMIT",0);
      else
        {
         GlobalVariableSet("BUYLIMIT",1);
         GlobalVariableSet("DateB",str1.day_of_week);
        }
     }

この場合、23:59に保留中の注文やオープンポジションがあれば、全ての注文を削除し、ポジションをクローズします:

   if(total_pos>0 && str1.hour==23 && str1.min==59)
      DeleteAllPositions();

   if(total_orders>0 && str1.hour==23 && str1.min==59)
      DeleteAllOrders();

このシステムはH1チャートでの使用を推奨します。

Stochテスター

リスト
コメント 0