FORTS: Um Anfängern zu helfen - Seite 14

 
die philosophische Frage ist, ob das Glas völlig leer ist oder ob das Glas völlig klar ist ))
 
Welchen Prozentsatz nimmt die Börse als Provision? Auf dem Devisenmarkt zum Beispiel beträgt die übliche Option 20 pro Million = 0,002 %.
 
fxsaber:
Welcher Prozentsatz wird von der Börse als Provision erhoben? Zum Beispiel sind 20 pro Million = 0,002% bei Devisen üblich.
https://www.moex.com/s93

3. die Börsen- und Clearinggebühren auf dem Derivatemarkt

D.h. für heute ist es ungefähr: RTS - 9,3, Si - 1,2, PLT - 3,9 p pro Kontrakt. Wenn Sie in der gleichen Sitzung schließen, fallen keine Gebühren für den umgekehrten Handel an.

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

3. Börsen- und Clearingprovisionen für den Terminmarkt

Ich danke Ihnen. Offenbar ist es für Anwälte geschrieben. Wie viele Pips auf dem RTS? -Ich sehe oben.

 
fxsaber:

Ich danke Ihnen. Es scheint für Juristen geschrieben zu sein. Wie viele Pips auf dem RTS? -Ich sehe höher.

Dazu kommt noch die Maklerprovision.

 
fxsaber:
Wie hoch ist die von der Börse erhobene Provision? Auf dem Devisenmarkt zum Beispiel sind 20 pro Million = 0,002 %.

Früher habe ich solchen Code für mich selbst geschrieben. Damals hat es funktioniert. Vielleicht haben sich die Dinge jetzt geändert.

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;

Sie gibt die Provision in Geld zurück. Im schlimmsten Fall, wenn für beide Abschlüsse Eintritt+Austritt zu zahlen sind

2*GetFuturesCommission(SymbName)

Am Ende wird sie mit der Anzahl der Geschäfte multipliziert, um die Gesamtprovision für das gesamte Handelsintervall zu erhalten.

Sie können vergleichen, wenn Sie einen Blick in die Vertragsbedingungen werfen, z.B. https://www.moex.com/ru/contract.aspx?code=RTS-3.21

 
traveller00:

Früher habe ich solchen Code für mich selbst geschrieben. Damals hat es funktioniert. Vielleicht haben sich die Dinge jetzt geändert.

Sie gibt die Provision in Geld zurück. Im schlimmsten Fall, wenn für beide Abschlüsse Eintritt+Austritt zu zahlen sind

Am Ende wird sie mit der Anzahl der Geschäfte multipliziert, um die Gesamtprovision für das gesamte Handelsintervall zu erhalten.

Sie können vergleichen, wenn Sie einen Blick auf die Vertragsspezifikationen werfen, z.B. https://www.moex.com/ru/contract.aspx?code=RTS-3.21

Vielen Dank für das konstruktive Feedback!