OrderGetTicket

해당 주문의 티켓을 반환하고 함수를 사용하여 추가로 작업할 주문을 자동으로 선택합니다.

ulong  OrderGetTicket(
   int  index      // 주문 리스트의 번호
   );

Parameter

index

[in]  현재 주문 리스트에 있는 주문 수.

반환값

ulong 타입의 값. 이 함수가 실패하면 0이 반환됩니다.

참고

현재 보류 주문을 클라이언트 터미널의 "도구 상자"의 "거래"탭에도 표시되는 포지션과 혼동하지 마십시오 주문은 거래를 수행하기 위한 요청이며, 포지션은 하나 이상의 거래의 결과입니다.

포지션 (ACCOUNT_MARGIN_MODE_RETAIL_NETTINGACCOUNT_MARGIN_MODE_EXCHANGE)의 "netting" 해석의 경우, 언제든지 하나의 포지션이 하나의 심볼에 대해 존재할 수 있습니다. 이 포지션은 하나 이상의 거래의 결과입니다. Toolbox 창의 Trading 탭에도 표시되는 유효한 보류 주문과 포지션을 혼동하지 마십시오

개별 포지션이 허용되는 경우 (ACCOUNT_MARGIN_MODE_RETAIL_HEDGING), 하나의 심볼로 여러 포지션을 오픈할 수 있습니다.

함수 OrderGetTicket()은 주문에 대한 데이터를 프로그램 환경으로 복사하고, OrderGetDouble(), OrderGetInteger(), OrderGetString() 호출을 계속하면 이전에 복사된 데이터가 반환됩니다. 즉, 주문 자체가 더 이상 존재하지 않을 수 있지만(또는 오픈 프라이스, 스탑 로스/이익 실현 수준 또는 만료일 변경) 이 주문의 데이터는 여전히 얻을 수 있습니다. 주문에 대한 새로운 데이터를 수신하려면 주문을 참조하기 전에 OrderGetTicket()으로 요청하는 것이 좋습니다.

예:

void OnStart()
  {
//--- 주문 속성에서 값을 반환하기 위한 변수
   ulong    ticket;
   double   open_price;
   double   initial_volume;
   datetime time_setup;
   string   symbol;
   string   type;
   long     order_magic;
   long     positionID;
//--- 현재 보류 주문 번호
   uint     total=OrdersTotal();
//--- 루프에서 주문 조사
   for(uint i=0;i<total;i++)
     {
      //--- 목록에서 포지션에 대한 주문 티켓을 반환
      if((ticket=OrderGetTicket(i))>0)
        {
         //--- 주문 속성 반환
         open_price    =OrderGetDouble(ORDER_PRICE_OPEN);
         time_setup    =(datetime)OrderGetInteger(ORDER_TIME_SETUP);
         symbol        =OrderGetString(ORDER_SYMBOL);
         order_magic   =OrderGetInteger(ORDER_MAGIC);
         positionID    =OrderGetInteger(ORDER_POSITION_ID);
         initial_volume=OrderGetDouble(ORDER_VOLUME_INITIAL);
         type          =EnumToString(ENUM_ORDER_TYPE(OrderGetInteger(ORDER_TYPE)));
         //--- 주문에 대한 정보를 준비하고 보여줌
         printf("#ticket %d %s %G %s at %G was set up at %s",
                ticket,                 // order ticket
                type,                   // type
                initial_volume,         // placed volume
                symbol,                 // symbol
                open_price,             // specified open price
                TimeToString(time_setup)// 주문 시간
                );
        }
     }
//---
  }

참고 항목

OrdersTotal(), OrderSelect(), OrderGetInteger()