SymbolInfoMarginRate

주문 유형 및 방향에 따라 마진율을 반환.

bool  SymbolInfoMarginRate(
   string             name,                     // 심볼 이름
   ENUM_ORDER_TYPE    order_type,               // 순서 유형
   double&            initial_margin_rate,      // 초기 마진율
   double&            maintenance_margin_rate   // 유지 마진율
   );

매개변수

이름

[in] 심볼 이름.

order_type

[in] 주문 유형.

initial_margin_rate

[in] 초기 마진율 수신하기 위한 double 유형 변수. 최초 마진은 적절한 방향의 1 lot 거래에 대한 보증금입니다. 최초 마진에 이율을 곱한 금액을 특정 유형의 주문 시 계좌에 적립해야 할 금액을 받습니다.

maintenance_margin_rate

[out] 유지 마진율을 수신하기 위한 double 유형 변수. 유지 마진은 1 lot의 개방 위치를 적절한 방향으로 유지하기 위한 최소 금액입니다. 유지 마진에 이율을 곱한 금액을 특정 유형의 주문이 활성화된 후 당좌에 적립해야 할 금액을 받습니다.

값 반환

속성이 대한 요청이 성공하는 경우 true를, 그렇지 않은 경우 false를 반환.

예:

#define SYMBOL_NAME Symbol()
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- 비율이 설정된 변수를 선언합니다.
   double initial_margin_rate = 0;     // 초기 마진율
   double maintenance_margin_rate = 0// 유지 마진율
   
//--- 매수 시장가 주문에 대한 SYMBOL_NAME 심볼 비율을 가져와서 저널로 보냅니다.
   SymbolInfoMarginRatePrint(SYMBOL_NAMEORDER_TYPE_BUYinitial_margin_ratemaintenance_margin_rate);
   
//--- 매도 시장가 주문에 대한 SYMBOL_NAME 심볼 비율을 가져와서 저널로 보냅니다.
   SymbolInfoMarginRatePrint(SYMBOL_NAMEORDER_TYPE_SELLinitial_margin_ratemaintenance_margin_rate);
 
   /*
  결과:
   Initial margin rate for symbol AFKS for the Buy market order0.225600
   Maintenance margin rate for symbol AFKS for the Buy market order0.112800
   Initial margin rate for symbol AFKS for the Sell market order0.254400
   Maintenance margin rate for symbol AFKS for the Sell market order0.127200   
   */
  }
//+------------------------------------------------------------------+
//| Send the margin ratios to the journal                            |
//+------------------------------------------------------------------+
void SymbolInfoMarginRatePrint(const string symbolconst ENUM_ORDER_TYPE order_typedouble &initial_margin_ratedouble &maintenance_margin_rate)
  {
//--- order_type 시장가 주문에 대한 '심볼' 비율을 가져옵니다.
   ResetLastError();
   if(!SymbolInfoMarginRate(symbolorder_typeinitial_margin_ratemaintenance_margin_rate))
     {
      Print("SymbolInfoMarginRate() failed. Error "GetLastError());
      return;
     }
//--- 얻은 비율 값을 인쇄합니다.
   string type=(order_type==ORDER_TYPE_BUY ? "Buy" : order_type==ORDER_TYPE_SELL ? "Sell" : "Unknown");
   PrintFormat("Initial margin rate for symbol %s for the %s market order: %f\n"+
               "Maintenance margin rate for symbol %s for the %s market order: %f",
               SYMBOL_NAMEtypeinitial_margin_rate,
               SYMBOL_NAMEtypemaintenance_margin_rate);
  }