Discusión sobre el artículo "Matemáticas en el trading: Ratios de Sharpe y Sortino" - página 3

 

Leer el logaritmo del precio

Usted mismo encontrará otras referencias

 
Rashid Umarov #:

Leer el logaritmo del precio

Usted mismo encontrará otras referencias

Otro matiz extremadamente importante es que en este script, sólo se tienen en cuenta para el cálculo del Sharpe las barras en las que se ha producido un cambio en la equidad:

     
      //--- add only if equity has changed
      if(m_equities[i] != prev_equity)
        {  
         log_return = MathLog(m_equities[i] / prev_equity); // incrementar logaritmo
         aver += log_return;            // logaritmo medio de los incrementos
         AddReturn(log_return);         // rellenar el array de logaritmos incrementales
         counter++;                     // contador de devoluciones
        }
      prev_equity = m_equities[i];

La variación media se obtiene dividiendo por el número de barras de este tipo:

//--- valor medio del logaritmo de incremento
   aver /= counter;

Sin embargo, la transición a los sharps anuales se basa en la relación temporal, como si todas las barras del tf actual se tuvieran en cuenta en el cálculo:

//--- recalcular el ratio de Sharpe al valor anual en todos los demás casos
//--- cuántos periodos del marco temporal actual caben en D1
   double factor = double(PeriodSeconds(PERIOD_D1)) / PeriodSeconds(timeframe);
   sharpe = sharpe * MathSqrt(factor);     // recalcular al valor diario
   sharpe = sharpe * MathSqrt(252);        // obtener anual de diario

Es decir, una vez más: el script encuentra los sharps promediados por 1 barra con cambio de equidad, y luego, para encontrar el anual, lo multiplica no por el número de tales barras en un año, sino por el número total de barras de este tf en un año (su raíz, por supuesto). Lo cual es erróneo y sobreestima la cifra final.

Aparentemente, ¿el Sharpe se calcula de la misma manera en el probador?

 
Kristian Kafarov #:
el script halla el Sharpe medio por 1 barra con cambio de renta variable, y luego, para hallar el anual, lo multiplica no por el número de barras de este tipo en un año, sino por el número total de barras de este tf en un año (su raíz, claro). Lo cual es erróneo y sobreestima la cifra final

Yo también me di cuenta de eso. Por eso en mi versión he añadido una opción para tener en cuenta las barras cero.