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_NAME, ORDER_TYPE_BUY, initial_margin_rate, maintenance_margin_rate);
   
//--- 매도 시장가 주문에 대한 SYMBOL_NAME 심볼 비율을 가져와서 저널로 보냅니다.
   SymbolInfoMarginRatePrint(SYMBOL_NAME, ORDER_TYPE_SELL, initial_margin_rate, maintenance_margin_rate);
 
   /*
  결과:
   Initial margin rate for symbol AFKS for the Buy market order: 0.225600
   Maintenance margin rate for symbol AFKS for the Buy market order: 0.112800
   Initial margin rate for symbol AFKS for the Sell market order: 0.254400
   Maintenance margin rate for symbol AFKS for the Sell market order: 0.127200   
   */
  }
//+------------------------------------------------------------------+
//| Send the margin ratios to the journal                            |
//+------------------------------------------------------------------+
void SymbolInfoMarginRatePrint(const string symbol, const ENUM_ORDER_TYPE order_type, double &initial_margin_rate, double &maintenance_margin_rate)
  {
//--- order_type 시장가 주문에 대한 '심볼' 비율을 가져옵니다.
   ResetLastError();
   if(!SymbolInfoMarginRate(symbol, order_type, initial_margin_rate, maintenance_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_NAME, type, initial_margin_rate,
               SYMBOL_NAME, type, maintenance_margin_rate);
  }