Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 1140

 
Rashid Umarov:

Во-первых, формулы оценки можно найти в статье Математика в трейдинге. Оценка результатов торговых сделок.

Во-вторых, в этой статье показано, что Шарп рассчитывается на основании результатов сделок (трейдов), а не на колебаниях эквити.

Совсем забыл об этой статье, думаю что часть информации можно добавить в хэлп, чтобы было более понятно, как происходит расчет, для его воспроизведения.

Получается, что Коэффициент Шарпа зависит от первоначального депозита, что не позволяет делать корректное сравнение потенциала разных ТС. Т.е. требуется тогда определится с предельной просадкой депозита/средств, исходя из которой рассчитать требуемое значение первоначального депозита.

 
Aleksey Vyazmikin:

Получается, что Коэффициент Шарпа зависит от первоначального депозита, что не позволяет делать корректное сравнение потенциала разных ТС.

Никак не зависит, так как вычисляется прирост после фиксации результата i-го трейда в виде Ki=баланс_после_фиксации_прибыли_убытка/баланс_до_фиксации_результата.

Ряд Kn содержит значения в районе 1:

  • Если i-ый трейд — прибыльный, то Ki>1.
  • Если i-ый трейд — убыточный, то Ki<1.
 
Aleksey Vyazmikin:

Даю поминутный вариант, и прикладываю торговый отчет тестера.

Правда показатели чуть улучшил.

Коэффициент Шарпа 0,29 теперь.

Я взял ваш отчет, скопировал из него сделки и сделал на  их основе расчет в Экселе.Ничего сложного нет, посмотрите формулы и сами поймете,  что не боги горшки обжигают. Файл прикладываю

Как видно, в отчете тестирования коэффициент Шарпа считается правильно.


 
pantural:

реальный Sharp ratio = ~3.79

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

def SharpRatio(PnL):

    PnL = [x for x in PnL if abs(x) > 0]

    ret = sum(PnL) / len(PnL)

    var = ((sum([(x - ret) ** 2 for x in PnL]) / len(PnL))) ** 0.5

    return len(PnL) ** 0.5 * ret / var


PS:  SR=3.79 это весьма оптимистично, разумеется если это не потгонка(в той или иной степени) и протестировано корректно

Вообще, желательно понимать смысл параметров, прежде чем принимать их на веру. Получив такое значение вы должны были задуматься и начать искать ошибку в своих расчетах.

Так как коэффициент Шарпа больше 3 говорит том, что перед нами 100% зарабатывающая стратегия, и вероятность получить прибыль на ней больше чем 99.99 %.  Если распределение PnL  является нормальным, конечно.

 
Konstantin Nikitin:

По моим наблюдениям шарп более 1 поднять не получалось пока. Да и чужих счетов/графиков с большим показателем пока не видел. Хотя может и ошибаюсь.

И это неудивительно. Единица - очень хорошее значения для показателя Шарпа. Еще по теме статья - Оптимизируем стратегию по графику баланса и сравниваем результаты с критерием "Balance + max Sharpe Ratio"

 

Для одной сделки коэффициент Шарпа как посчитать?

 
Renat Akhtyamov:

Для одной сделки коэффициент Шарпа как посчитать?

Да вы издеваетесь. Я тут пишу, распыляюсь, а мне говорят  - всё зря, давайте дальше поговорим.

 
Rashid Umarov:

Да вы издеваетесь. Я тут пишу, распыляюсь, а мне говорят  - всё зря, давайте дальше поговорим.

прошу прощения, не заметил аттач
 
Rashid Umarov:

Никак не зависит, так как вычисляется прирост после фиксации результата i-го трейда в виде Ki=баланс_после_фиксации_прибыли_убытка/баланс_до_фиксации_результата.

Ряд Kn содержит значения в районе 1:

  • Если i-ый трейд — прибыльный, то Ki>1.
  • Если i-ый трейд — убыточный, то Ki<1.
Rashid Umarov:

Я взял ваш отчет, скопировал из него сделки и сделал на  их основе расчет в Экселе.Ничего сложного нет, посмотрите формулы и сами поймете,  что не боги горшки обжигают. Файл прикладываю

Как видно, в отчете тестирования коэффициент Шарпа считается правильно.


Спасибо за пример расчета!

И все ж таки зависимость от первоначального размера депозита имеется, но не столь существенная, экселевский файл я посмотрел и проверил эту зависимость там же, после добавления формул по расчету баланса.

 
Aleksey Vyazmikin:

Спасибо за пример расчета!

И все ж таки зависимость от первоначального размера депозита имеется

Покажите прямо тут, иначе придется забанить.

PS Предполагается разумный начальный депозит и размер лота для торговли.  Не слишком малый и не слишкой большой. И тогда не будет вставать вопрос о том, почему средняя прибыль в $1 на депозите в $100 k показывает худший Шарп, чем средняяя прибыль в $100 на депозите $1000.