FUERTES: Para ayudar a los principiantes - página 14

 
la cuestión filosófica es si el vaso está completamente vacío o el vaso está completamente vacío ))
 
¿Qué porcentaje se lleva la bolsa como comisión? Por ejemplo, en el mercado de divisas, la opción común es 20 por millón = 0,002%.
 
fxsaber:
¿Qué porcentaje se lleva la bolsa como comisión? Por ejemplo, el 20 por millón = 0,002% es común en el mercado de divisas.
https://www.moex.com/s93

3. las comisiones de intercambio y compensación del mercado de derivados

Es decir, para hoy es aproximadamente: RTS - 9,3, Si - 1,2, PLT - 3,9 p por contrato. Si se cierra en la misma sesión, no se cobra por la operación inversa.

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

3. la comisión de intercambio y compensación del mercado de derivados

Gracias. Aparentemente está escrito para abogados. ¿Cuántos puntos en el RTS? -Veo arriba.

 
fxsaber:

Gracias. Parece estar escrito para abogados. ¿Cuántos puntos en el RTS? -Veo más alto.

Y más la comisión de intermediación.

 
fxsaber:
¿Qué porcentaje de comisión cobra la bolsa? Por ejemplo, en el mercado de divisas 20 por millón = 0,002%.

Yo solía escribir código como este para mí en un tiempo. Entonces funcionó. Quizá las cosas hayan cambiado ahora.

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;

Devuelve la comisión en dinero. Toma el peor de los casos, cuando para ambas operaciones de entrada+salida habrá que pagar

2*GetFuturesCommission(SymbName)

Al final se multiplica por el número de operaciones para obtener la comisión total de todo el intervalo de negociación.

Puede comparar si echa un vistazo al pliego de condiciones, por ejemplo, https://www.moex.com/ru/contract.aspx?code=RTS-3.21

 
traveller00:

Yo solía escribir código como este para mí en un tiempo. Entonces funcionó. Quizá las cosas hayan cambiado ahora.

Devuelve la comisión en dinero. Toma el peor de los casos, cuando para ambas operaciones entrada+salida se tendrá que pagar

Al final se multiplica por el número de operaciones para obtener la comisión total de todo el intervalo de negociación.

Puede comparar si echa un vistazo a las especificaciones del contrato, por ejemplo, https://www.moex.com/ru/contract.aspx?code=RTS-3.21

Gracias por los comentarios constructivos.