Формула расчета свопа

 

Поделитесь формулой расчета свопа на MQL, что-то типа этого:

double swap(string symbol, int type, datetime openTime, datetime currentTime, double openPrice)
{
  double pointValue = MarketInfo(symbol, MODE_POINT) * MarketInfo(symbol, MODE_TICKVALUE) / MarketInfo(symbol, MODE_TICKSIZE);
  int dayOfWeek3 = SymbolInfoInteger(symbol, SYMBOL_SWAP_ROLLOVER3DAYS);

  int multiplier = // считаем дельту дней и сколько там dayOfWeek3

  double value = MarketInfo(symbol, type == OP_BUY ? MODE_SWAPLONG : MODE_SWAPSHORT);
  int kind = (int)MarketInfo(symbol, MODE_SWAPTYPE);
  double result = 0;
  switch(kind)
  {
    case 0: // points
      result = ptv * value * lots; break;
    case 1: // base currency
      result = ???; break;
    case 2: // interest percent
      result = openPrice * value / 360; break; // ???
    case 3: // account currency
      result = value * lots;
  }
  return result * multiplier;
}

Что пишем для вариантов, помеченных тройными вопросами?

 

Что за новая "фича" форума - я почему-то не могу исправить свой собственный пост?

Хотел дополнить свои догадки для пункта 1:

result = value / MarketInfo(symbol, MODE_POINT) * ptv * lots;


 

 

Ну и для пункта 2 поправка догадки:

result = openPrice * value * lots / 360;
 
Stanislav Korotky:

Что за новая "фича" форума - я почему-то не могу исправить свой собственный пост?

Правка доступна в течении 3-х суток. Так было всегда, вроде.