스톡 지표: 메타트레이더 5에서 활용하기

Mike 2017.01.26 18:09 73 0 0
첨부파일

아이디어 제공자Collector, MQL5 코드 작성자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 차트에서 사용하는 것을 추천합니다:

스톡 테스터

 

목록
댓글 0