주문 속성

거래 작업을 수행하기 위한 요청은 주문으로 공식화됩니다. 각 주문에는 다양한 읽기 속성이 있습니다. 이러한 정보는 OrderGet...()HistoryOrderGet...() 함수를 사용하여 얻을 수 있습니다.

다음 함수의 경우: OrderGetInteger()HistoryOrderGetInteger()

ENUM_ORDER_PROPERTY_INTEGER

식별자

설명

유형

ORDER_TICKET

주문 티켓. 각 주문에 할당된 고유 번호

long

ORDER_TIME_SETUP

주문 셋업 시간

datetime

ORDER_TYPE

주문 유형

ENUM_ORDER_TYPE

ORDER_STATE

주문 상태

ENUM_ORDER_STATE

ORDER_TIME_EXPIRATION

주문 만료 시간

datetime

ORDER_TIME_DONE

주문 실행 또는 취소 시간

datetime

ORDER_TIME_SETUP_MSC

1970년 1월 1일 이후 실행 주문 시간(밀리초)

long

ORDER_TIME_DONE_MSC

1970년 1월 1일 이후 주문 실행/취소 시간(밀리초)

long

ORDER_TYPE_FILLING

주문 작성 유형

ENUM_ORDER_TYPE_FILLING

ORDER_TYPE_TIME

주문 수명

ENUM_ORDER_TYPE_TIME

ORDER_MAGIC

주문을 작성한 엑스퍼트 어드바이저의 ID(각 엑스퍼트 어드바이저가 고유 번호를 지정하도록 설계됨)

long

ORDER_REASON

주문 근거 또는 출처

ENUM_ORDER_REASON

ORDER_POSITION_ID

실행 즉시 순서로 설정된 포지션 식별자. 실행된 각 주문은 이미 존재하는 포지션을 열거나 수정하는 거래를 초대합니다. 정확히 이 위치의 식별자는 현재 실행된 순서로 설정됩니다.

long

ORDER_POSITION_BY_ID

ORDER_TYPE_CLOSE_BY 주문에 사용되는 반대 위치 식별자

long

다음 함수의 경우: OrderGetDouble()HistoryOrderGetDouble()

ENUM_ORDER_PROPERTY_DOUBLE

식별자

설명

유형

ORDER_VOLUME_INITIAL

주문 초기 볼륨

double

ORDER_VOLUME_CURRENT

주문 현재 볼륨

double

ORDER_PRICE_OPEN

주문에 지정된 가격

double

ORDER_SL

Stop Loss 값

double

ORDER_TP

Take Profit 값

double

ORDER_PRICE_CURRENT

주문 기호의 현재 가격

double

ORDER_PRICE_STOPLIMIT

StopLimit 주문의 제한 주문 가격

double

다음 함수의 경우: OrderGetString()HistoryOrderGetString()

ENUM_ORDER_PROPERTY_STRING

식별자

설명

유형

ORDER_SYMBOL

주문의 기호

string

ORDER_COMMENT

주문 코멘트

string

ORDER_EXTERNAL_ID

외부 거래 시스템(거래소)의 주문 식별자

string

 

OrderSend() 기능을 사용하여 거래 요청을 보낼 때 일부 작업에서 주문 유형을 표시해야 합니다. 주문 유형은 특수 구조 유형 필드(특수 구조 MqlTradeRequest) ENUM_ORDER_TYPE 열거 값을 �I락할 수 있습니다.

ENUM_ORDER_TYPE

식별자

설명

ORDER_TYPE_BUY

마켓 매수 주문

ORDER_TYPE_SELL

마켓 매도 주문

ORDER_TYPE_BUY_LIMIT

매수 제한 보류 주문

ORDER_TYPE_SELL_LIMIT

매도 주문 보류 주문

ORDER_TYPE_BUY_STOP

매수 중지 보류 주문

ORDER_TYPE_SELL_STOP

매도 중지 보류 주문

ORDER_TYPE_BUY_STOP_LIMIT

주문 가격에 도달하면 보류 중인 매수 한도 주문이 StopLimit 가격에 배치됩니다

ORDER_TYPE_SELL_STOP_LIMIT

주문 가격에 도달하면 보류 중인 매도 제한 주문이 Stoplimit 가격에 배치됩니다

ORDER_TYPE_CLOSE_BY

반대 포지션으로 포지션을 닫도록 주문

 

각 주문에는 상태를 설명하는 상태가 있습니다. 정보를 얻으려면 OrderGetInteger() 또는 HistoryOrderGetInteger()를 (ORDER_STATE 수정자와 함께) 사용하십시오. 허용되는 값은 ENUM_ORDER_STATE 열거에 저장됩니다.

ENUM_ORDER_STATE

식별자

설명

ORDER_STATE_STARTED

주문을 확인했지만 브로커가 아직 수락하지 않았습니다

ORDER_STATE_PLACED

주문 수락

ORDER_STATE_CANCELED

클라이언트가 주문 취소

ORDER_STATE_PARTIAL

주문 부분 실행

ORDER_STATE_FILLED

주문 실행

ORDER_STATE_REJECTED

주문 거절

ORDER_STATE_EXPIRED

주문 만료

ORDER_STATE_REQUEST_ADD

주문 등록 중(트레이딩 시스템에 배치)

ORDER_STATE_REQUEST_MODIFY

주문 수정 중(매개변수 변경)

ORDER_STATE_REQUEST_CANCEL

주문 삭제 중(트레이딩 시스템에서 삭제)

 

OrderSend() 함수를 사용하여 거래 요청을 보낼 때 type_filling 필드(특수 구조MqlTradeRequest)에 주문에 대한 채움 정책을 설정할 수 있습니다. ENUM_ORDER_TYPE_FILLING 열거 값이 허용됩니다. 이 속성 값을 얻으려면 OrderGetInteger() 또는 HistoryOrderGetInteger() 함수를 ORDER_TYPE_FILLING 수정자와 함께 사용하십시오.

ENUM_ORDER_TYPE_FILLING

식별자

설명

ORDER_FILLING_FOK

이 채움 정책은 지정된 양으로만 주문이 작성될 수 있음을 의미합니다. 현재 시장에서 금융 상품의 필요 금액이 없는 경우 주문이 실행되지 않습니다. 현재 시장에서 제공되는 몇 가지 제안을 사용하여 필요한 수량을 채울 수 있습니다.

ORDER_FILLING_IOC

이 모드는 트레이더가 주문서에 표시된 범위 내에서 시장에서 최대 가능 물량으로 거래를 실행하는데 동의함을 의미합니다. 전체 주문 물량을 채울 수 없는 경우, 사용 가능한 물량이 채워지고 나머지 물량은 취소됩니다.

Passive (Book or Cancel)

BoC 주문은 주문이 시장 심도에만 배치될 수 있고 즉시 실행될 수 없다고 가정합니다. 주문이 주문을 한 즉시 실행될 수 있는 경우 주문은 취소됩니다.

 

실제로 BOC 정책은 접수된 주문의 가격이 현재 시장보다 더 나쁠 것이라고 단언합니다. BoC 주문은 패시브 트레이딩을 구현하는 데 사용되므로 주문이 즉시 실행되지 않고 현재 유동성에 영향을 미치지 않습니다.

 

리밋 및 스탑리밋 주문만 지원됩니다(ORDER_TYPE_BUY_LIMIT, ORDER_TYPE_SELL_LIMIT, ORDER_TYPE_BUY_STOP_LIMIT, ORDER_TYPE_SELL_STOP_LIMIT).

ORDER_FILLING_RETURN

해당 정책은 시장 주문(ORDER_TYPE_BUY 및 ORDER_TYPE_SELL), 제한 및 중지 제한 주문(ORDER_TYPE_BUY_LIMIT, ORDER_TYPE_SELL_LIMIT, ORDER_TYPE_BUY_STOP_LIMIT 및 ORDER_TYPE_SELL_STOP_LIMIT )에 대해서만 사용되며, 마켓 또는 거래소 실행이 포함된 기호에만 사용됩니다. 시장 일부 충당이나 잔여 물량으로 한정 주문은 취소되지 않고 추가 처리됩니다.

ORDER_TYPE_BUY_STOP_LIMIT 및 ORDER_TYPE_SELL_STOP_LIMIT 주문을 활성화하기 위해 ORDER_FILLING_RETURN 실행 유형을 가진 해당 제한 주문 ORDER_TYPE_BUY_LIMIT/ORDER_TYPE_SELL_LIMIT이 생성됩니다.

 

거래 요청을 보낼 때 type_time 필드(특수 구조 MqlTradeRequest)에서 OrderSend() 함수를 사용하여 설정할 수 있습니다. ENUM_ORDER_TYPE_TIME 열거 값이 허용됩니다. 이 속성 값을 얻으려면 ORDER_TYPE_TIME 수정자와 함께 OrderGetInteger() 또는 HistoryOrderGetInteger() 함수를 사용하십시오.

ENUM_ORDER_TYPE_TIME

식별자

설명

ORDER_TIME_GTC

주문 취소 시까지 유효

ORDER_TIME_DAY

현재 거래일 주문까지 유효

ORDER_TIME_SPECIFIED

주문 만료 시까지 유효

ORDER_TIME_SPECIFIED_DAY

주문은 지정된 날짜의 23:59:59까지 유효합니다. 이 시간이 트레이딩 세션 외부에 있는 경우 주문이 가장 가까운 트레이딩 시간 내에 만료됩니다.

 

주문 발주 근거는 ORDER_REASON 속성에 포함되어 있습니다. StopOut 등의 결과로 모바일 애플리케이션에서 MQL5 프로그램으로 주문할 수 있습니다. 가능한 ORDER_REASON 값은 ENUM_ORDER_REASON 열거에 설명되어 있습니다.

ENUM_ORDER_REASON

식별자

설명

ORDER_REASON_CLIENT

데스크탑 터미널에서 주문이 작성되었습니다

ORDER_REASON_MOBILE

모바일 애플리케이션에서 주문을 발주했습니다

ORDER_REASON_WEB

주문이 웹 플랫폼에서 작성되었습니다

ORDER_REASON_EXPERT

주문은 MQL5 프로그램(예: 엑스퍼트 어드바이저 또는 스크립트)에서 작성되었습니다

ORDER_REASON_SL

Stop Loss 활성화의 결과로 주문이 작성되었습니다

ORDER_REASON_TP

Take Profit 활성화의 결과로 주문이 작성되었습니다

ORDER_REASON_SO

Stop Out 이벤트의 결과로 주문이 작성되었습니다