ФОРТС: В помощь начинающим - страница 14

 
философский вопрос - стакан полностью пуст, или стакан полностью клиринг ))
 
Какой процент берет себе биржа в качестве комиссии? Например, на форексе распространен вариант 20 на миллион = 0.002%.
 
fxsaber:
Какой процент берет себе биржа в качестве комиссии? Например, на форексе распространен вариант 20 на миллион = 0.002%.
https://www.moex.com/s93

3. Биржевая и клиринговая комиссия срочного рынка

Т.е., на сегодня это примерно: RTS - 9.3, Si - 1.2, PLT - 3.9 р. с контракта. Закрываешь в ту же сессию - с обратной сделки не берётся.

Московская Биржа - Рынки
Московская Биржа - Рынки
  • www.moex.com
Тарифы. Участие в торгах на Срочном рынке ПАО Московская Биржа и регистрация в качестве Расчетной фирмы Взнос в Гарантийный фонд Биржевой сбор (с 02.10.2017) Клиринговый сбор и клиринговые тарифы Маркетинговая программа Сборы за Транзакции Сбор за Календарные спреды Информационно-техническое обслуживание срочного рынка С 19:05 мск 01 ноября 2018 года вступил в силу новый расчет оборотной комиссии с разделением на биржевую и клиринговую составляющие. Внешние интерфейсы остаются без изменений.
 
JRandomTrader:
https://www.moex.com/s93

3. Биржевая и клиринговая комиссия срочного рынка

Спасибо. Там, видимо, для юристов написано. Сколько пипсов на RTS? -Вижу выше.

 
fxsaber:

Спасибо. Там, видимо, для юристов написано. Сколько пипсов на RTS? -Вижу выше.

И плюс - комиссия брокера.

 
fxsaber:
Какой процент берет себе биржа в качестве комиссии? Например, на форексе распространен вариант 20 на миллион = 0.002%.

В своё время писал для себя такой код. Тогда работал. Сейчас может что поменялось.

const string CurrencyFutures[]={"AUDU","ED","Eu","GBPU","Si","UCAD","UCHF","UJPY"};
const string PercentFutures[]={"1MFR","RUON"};
const string IndexFutures[]={"MIX","MXI","RTS","RVI","U500"};
const string CommoditiesFutures[]={"ALMN","BR","CL","Co","CU","GLD","GOLD","Nl","PLD","PLT","SILV","SLV","SUGR","Zn"};

template <typename T>
bool IsEntityInArray(const T &Array[],const T &Value)
{
  for(int i=ArraySize(Array)-1;i>=0;--i)
  {
    if(Array[i]==Value)
      return true;
  }
  return false;
}

bool IsStringInArray(const string &Array[],const string Value)
{
  return IsEntityInArray(Array,Value);
}

double GetBaseTutFee(const string &PureSymbName)
{
  if(IsStringInArray(CurrencyFutures,PureSymbName))
    return 0.00154/100;
  if(IsStringInArray(PercentFutures,PureSymbName))
    return 0.00550/100;
  if(IsStringInArray(IndexFutures,PureSymbName))
    return 0.00220/100;
  if(IsStringInArray(CommoditiesFutures,PureSymbName))
    return 0.00440/100;
  return 0.00660/100;
}

double GetLastPrice(const string SymbName)
{
  double Result=SymbolInfoDouble(SymbName,SYMBOL_BID);
  if(Result!=0)
    return Result;

  MqlTick OldTicks[];
  int OldTicksCount=CopyTicks(SymbName,OldTicks,COPY_TICKS_ALL);
  //workaround for custom symbols
  if(OldTicksCount==-1)
    OldTicksCount=CopyTicksRange(SymbName,OldTicks,COPY_TICKS_ALL,(TimeCurrent()-60*60*24*7)*1000);
  for(int i=OldTicksCount-1;i>=0;--i)
  {
    if(OldTicks[i].bid!=0)
      return OldTicks[i].bid;
  }
  return 0;
}

double GetSymbolTickSize(const string &SymbName)
{
  return SymbolInfoDouble(SymbName,SYMBOL_TRADE_TICK_SIZE);
}

double GetFuturesCommission(const string &SymbName)
{
  string PureSymbName=StringSubstr(SymbName,0,StringFind(SymbName,"-"));
  double BaseTutFee=GetBaseTutFee(PureSymbName);
  double FutPrice=GetLastPrice(SymbName);
  double Wf=SymbolInfoDouble(SymbName,SYMBOL_TRADE_TICK_VALUE);
  double Rf=GetSymbolTickSize(SymbName);
  return 0.74+NormalizeDouble(NormalizeDouble(FutPrice*NormalizeDouble(Wf/Rf,5),2)*BaseTutFee/2,2);
}



  long SymbCalcMode=GetSymbolCalcMode(SymbName);
  bool IsSymbFutures=SymbCalcMode==SYMBOL_CALC_MODE_FUTURES || SymbCalcMode==SYMBOL_CALC_MODE_EXCH_FUTURES || SymbCalcMode==SYMBOL_CALC_MODE_EXCH_FUTURES_FORTS;

  if(IsSymbFutures)
    Multiplier=2*GetFuturesCommission(SymbName);
  return Multiplier*Trades;

Возвращает комиссию в деньгах. Берёт худший случай, когда за обе сделки вход+выход придётся платить 

2*GetFuturesCommission(SymbName)

В конце умножается на число трейдов, чтобы узнать общую комиссию за весь торговый интервал.

Сравнить можно, поглядев спецификацию контракта, например, тут https://www.moex.com/ru/contract.aspx?code=RTS-3.21

 
traveller00:

В своё время писал для себя такой код. Тогда работал. Сейчас может что поменялось.

Возвращает комиссию в деньгах. Берёт худший случай, когда за обе сделки вход+выход придётся платить 

В конце умножается на число трейдов, чтобы узнать общую комиссию за весь торговый интервал.

Сравнить можно, поглядев спецификацию контракта, например, тут https://www.moex.com/ru/contract.aspx?code=RTS-3.21

Спасибо за конструктив!

Причина обращения: