메타트레이더 4에서의 페딩 오더 활용법

Mike 2016.03.18 01:07 53 0 0
첨부파일

페딩 오더(Pending Order)는 특정 가격에 도달했을 때 자동으로 거래를 실행하는 주문 방식입니다. 즉, 미리 지정한 가격 수준에서 포지션을 열도록 설정하는 것이죠. 가격이 설정한 수준에 도달하면 자동으로 거래 포지션이 열립니다.

EA에서 제공하는 주문 유형은 총 6가지입니다:

  1. 타입 0 = 매수 (Buy)
  2. 타입 1 = 매도 (Sell)
  3. 타입 2 = 매수 리미트 (Buylimit)
  4. 타입 3 = 매도 리미트 (Selllimit)
  5. 타입 4 = 매수 스탑 (Buystop)
  6. 타입 5 = 매도 스탑 (Sellstop)

이 중에서 우리는 4가지 페딩 오더 타입에 대해 자세히 알아보겠습니다.

1. 매수 리미트 (Buy Limit)

매수 리미트 주문은 현재 가격보다 낮은 가격에서 실행되는 주문입니다. 이 경우, 가격이 설정한 리미트 가격으로 하락할 때 포지션이 열리도록 설정할 수 있습니다.

매수 주문을 설정할 때는 다음과 같은 코드를 사용합니다:

OrderSend(Symbol(), 2, start_lot, Ask-Distance*Point, 3, Ask-Distance*Point-SL*Point,Ask-Distance*Point+TP*Point, "", Magic, 0, Blue);

여기서 주의할 점은 현재 가격과 예약 가격 사이의 거리(Distance)입니다.

2. 매도 리미트 (Sell Limit)

매도 리미트 주문은 현재 가격보다 높은 가격에 설정되는 주문입니다. 가격이 설정한 리미트 가격으로 상승할 때 포지션이 열리도록 합니다.

매도 리미트를 설정할 때는 다음과 같은 코드를 사용합니다:

OrderSend(Symbol(), 3, start_lot, Bid+Distance*Point, 3, Bid +Distance*Point+ SL*Point,Bid+Distance*Point-TP*Point, "", Magic, 0, Red);

3. 매수 스탑 (Buy Stop)

매수 스탑 주문은 현재 가격보다 높은 가격에 설정되는 주문으로, 가격이 상승할 때 포지션이 열리게 됩니다.

매수 스탑 주문을 설정하는 코드 예시입니다:

OrderSend(Symbol(), 4, start_lot, Ask+ Distance*Point, 3, Ask+ Distance*Point-SL*Point,Ask+Distance*Point+TP*Point, "", Magic, 0, Blue);

4. 매도 스탑 (Sell Stop)

매도 스탑 주문은 현재 가격보다 낮은 가격에 설정되는 주문으로, 가격이 하락할 때 포지션이 열리게 됩니다.

매도 스탑 주문을 설정하는 코드 예시입니다:

OrderSend(Symbol(), 5, start_lot, Bid-Distance*Point, 3, Bid -Distance*Point+SL*Point,Bid-Distance*Point-TP*Point, "", Magic, 0, Red);

이제 위 4가지 페딩 오더를 활용해 간단한 EA를 만들어 보겠습니다. 아래 코드를 통해 주문 타입을 필터링하는 함수도 제공하겠습니다:

int totalorder(int m) {
 int total = 0;
 for (int i = 0; i < OrdersTotal(); i++) {
  if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
  if (OrderSymbol() != Symbol() || OrderMagicNumber()!=Magic || OrderType()!=m) continue;
   total++;
 }
 return (total);
}

이제 EA를 통해 페딩 오더를 활용하는 법을 익혀보세요! 추가적인 질문이 있으시면 댓글로 남겨주세요.

행운을 빕니다!

pendingorder

즐거운 트레이딩 되세요!

목록
댓글 0