Обсуждение статьи "Математика в трейдинге: Коэффициенты Шарпа и Сортино" - страница 3

 

Почитайте логарифм цены

Другие упоминания сами найдете

 
Rashid Umarov #:

Почитайте логарифм цены

Другие упоминания сами найдете

Еще один крайне важный нюанс состоит в том, что в этом скрипте в расчете шарпа учитываются только те бары, на которых было изменение эквити:

     
      //--- add only if equity has changed
      if(m_equities[i] != prev_equity)
        {  
         log_return = MathLog(m_equities[i] / prev_equity); // increment logarithm
         aver += log_return;            // average logarithm of increments
         AddReturn(log_return);         // fill the array of increment logarithms
         counter++;                     // counter of returns
        }
      prev_equity = m_equities[i];

Затем среднее изменение находится делением на число таких баров:

//--- average value of the increment logarithm
   aver /= counter;

Однако переход к годовому шарпу происходит на основе отношения таймфреймов, как если бы в расчете учитывались все бары текущего тф:

//--- recalculate the Sharpe ratio to annual value in all other cases
//--- how many periods of the current timeframe fit into D1
   double factor = double(PeriodSeconds(PERIOD_D1)) / PeriodSeconds(timeframe);
   sharpe = sharpe * MathSqrt(factor);     // recalculate to daily value
   sharpe = sharpe * MathSqrt(252);        // obtain annual from daily

Т.е., еще раз: скрипт находит усредненный шарп на 1 бар с изменением эквити, а затем, чтобы найти годовой, умножает его не на число таких баров в году, а на общее число баров этого тф в году (его корень, естественно). Что ошибочно и завышает итоговый показатель.

Видимо в тестере шарп считается так же?

 
Kristian Kafarov #:
скрипт находит усредненный шарп на 1 бар с изменением эквити, а затем, чтобы найти годовой, умножает его не на число таких баров в году, а на общее число баров этого тф в году (его корень, естественно). Что ошибочно и завышает итоговый показатель

Тоже заметил. Поэтому в своей версии добавил опцию учета нулевых баров.