Оценка качества торговли методами Ван Тарпа и Сортино

Genry_05

Отдыхает
День добрый!
В повседневной торговой практике часто возникает необходимость оценки торговой системы. Оценка нужна трейдеру, инвестору, разработчику - всем кто заинтересован в эффективном вложении времени и средств.
В октябре 2014 года, по предложению коллеги Stoletov, Игорь Герасько (Scriptong) разработал скрипт для оценки качества торговли методом Ван Тарпа. В ноябре 2015 года, по предложению Alexey Zykov, скрипт был дополнен расчетом по методу Сортино.

Для проведения расчета надо сформировать файлы отчетов DetailedStatement.htm или Statement.htm и разместить их в папке \MQL4\Files, после чего запустить скрипт tradingsystemrating_script_ad.
Критерии оценки по Ван Тарпу:
0,16-0,19 – низкое, но торговать можно
0,20-0,24 – среднее
0,25-0,29 – хорошее
0,30-0,50 – отличное
0,50-0,69 – превосходное
>0.70 – священный Грааль

ЗЫ. Коллегам-разработчикам : указанные методы расчета я добавлял в свои советники и на стадии оптимизации сразу получал оценку для каждого варианта.
 

Вложения

  • tradingsystemrating_script_ad.mq4
    33,6 КБ · Просмотры: 93
Последнее редактирование модератором:

Genry_05

Отдыхает
История создания ;)
==================================================================
Отправлено: 24.10.14 16:49 Stoletov пишет: Здравствуйте коллеги!
Расскажу вам, как можно оценить качество торговой системы (советника).
Идея изложена в книге Ван Тарпа «Супертрейдер. как зарабатывать на бирже в любых условиях». По мнению автора качество системы определяется отношением M/S, где М - матожидание (средняя прибыль или убыток в расчете на 1 сделку), а S - среднеквадратичное отклонение (оно определяет изменчивость системы).
Для понимания лучше рассмотреть это на примере. Я изложу это немного по другому и попроще, чем автор книги. Пусть вы совершили 3 сделки с такими результатами:
1: прибыль +50 пипсов,
2: убыток -30 пипсов,
3: прибыль +10 пипсов.

Тогда М=(50-30+10)/3=10 пипсов,
S= (√(50-10)^2+(-30-10)^2+(10-10)^2)/3=32.66 (здесь стоит квадратный корень из всего выражения)
M/S=10/32.66=0.31
Качество системы Ван Тарп оценивает по отношению M/S так:

0,16-0,19 – низкое, но торговать можно
0,20-0,24 – среднее
0,25-0,29 – хорошее
0,30-0,50 – отличное
0,50-0,69 – превосходное
>0.70 – священный Грааль

Автор также отмечает, что рассчитывать эти величины (M, S и M/S) имеет смысл при количестве сделок N как минимум 30, чтобы результаты были достовернее. Он рекомендует постоянно их рассчитывать по мере накопления новых сделок, чтобы контролировать качество своей системы. При N=100-200 можно уже будет почти наверняка сделать вывод о качестве системы по приведенным выше цифрам. Если конечно еще останутся деньги на счете…
Понятно, что с добавлением каждой новой сделки величины M, S и M/S будут меняться.
Я сам сосчитал их для своей системы на исторических данных. Это мне было сделать легко, т.к. у меня свой тестер, специально написанный для моей системы, который выводит результаты сделок в массив. Так вот, сначала при малых N значения M/S иногда были даже отрицательными, но по мере увеличения N до 50-100 они все меньше меняются и стремятся к положительному числу. А если система убыточная, то получите отрицательное число, зато хоть будете знать, что такую систему применять не надо.
Поднят интересный вопрос - на что делить при расчете СКО (среднеквадратичного отклонения) - на N или на N-1. Теория говорит, что правильнее на N-1. т.к. для конечной выборки оценка смещенная. Лично мне это не совсем понятно. Чтобы здесь не путаться, можно применить такую теорему: дисперсия D равна разности между матожидланием квадрата случайной величины X и квадратом ее матожидания, т.е. D= M(x^2) - (M(x))^2.
Тогда СКО рассчитывается по такой формуле (суммирование по i от 1 до N):
СКО = SQRT[М(x^2) - (M(x))^2] = SQRT[SUM(Xi^2)/n - (SUM Xi/n)^2)]
 

Genry_05

Отдыхает
Отправлено: 07.04.16 22:50. Stoletov пишет:


Недавно узнал, что для оценки риска обычно используется обратная величина к коэффициенту ВанТарпа: CV=S/М (где М и S - матожидание и среднеквадратичное отклонение величин прибыли/убытка), которая называется коэффициентом вариации. Но сам я уже настолько привык к коэффициенту Ван Тарпа М/S, что уже не хочу перестраиваться. Это все равно, что привык к метрам, а мне навязывают футы.

По Ван Тарпу чем больше величина М/S, тем прибыльнее стратегия. Но вот пример, взятый из одной умной книги, который вроде как доказывает обратное. Рассматриваются два проекта, которые дают такие доходности по годам в процентах:
год | проект 1 | проект 2
1-й | 20 | 40
2-й | 15 | 24
3-й | 18 | 30
4-й | 23 | 50

Для проекта 1 матожидание М=(20+15+18+23)/4=19%
S=КОРЕНЬ((20-19)^2+(15-19)^2+(18-19)^2+(23-19)^2) / 3)=3.4%
М/S= 5,59
Для проекта 2 матожидание М=(40+24+30+50)/4=36%
S=КОРЕНЬ((40-36)^2+(24-36)^2+(30-36)^2+(50-36)^2) / 3)=11.4%
М/S= 3,16

Получается, что по критерию Ван Тарпа, проект 1 выгоднее, т.к отношение М/S у него больше. Однако из данных видно, что минимальная доходность проекта 2 больше максимальной доходности проекта 1 (24>23). Так что проект 2 явно выгоднее. Этот парадокс по моему решается просто: на практике не могут быть одни только прибыльные сделки со знаком "+". Убыточные сделки со знаком "-" все расставят на свои места и отношения М/S станут более реалистичными - меньше 1. Больше 1 они в реальной жизни быть и не могут. Даже Священный Грааль по Ван Тарпу начинается при М/S>0,7. Так что критерий прибыльности стратегии Ван Тарпа все-таки вещь очень полезная.

Обратите внимание, что при вычислении S сумма под корнем делится на 3, а не на 4. Это потому, что при вычислении выборочной дисперсии для небольшого количества данных надо делить на N-1, а не на N (на N делят при вычислении генеральной дисперсии для всей генеральной совокупности). Вот такой экскурс в теорию вероятностей.
sm38.gif
 

megapont

VIP-участник
Было бы еще то качество, которое нужно оценивать, то было бы шикарно :LOL:
Сиди, кури бамбук и только успевай, оценивать ;)
 

Genry_05

Отдыхает
Было бы еще то качество, которое нужно оценивать, то было бы шикарно :LOL:
Сиди, кури бамбук и только успевай, оценивать ;)
Я предложил ложку и вилку, а что кушать - это уже каждый сам :)
Скрипт сокращает время оценки предложения ...
Вот ктоинть рекламирует торговлю:
берем стейт
суём в скрипт
читаем ответ
... и ... ;)
 

Genry_05

Отдыхает
Было бы еще то качество, которое нужно оценивать, то было бы шикарно :LOL:
Сиди, кури бамбук и только успевай, оценивать ;)
Я предложил ложку и вилку, а что кушать - это уже каждый сам :)
Скрипт сокращает время оценки предложения ...
Вот ктоинть рекламирует торговлю:
берем стейт
суём в скрипт
читаем ответ
... и ... ;)

К примеру: часто можно встретить споры о Торговых системах на рисующих или не рисующих индикаторах. В ветке "Для всех кто торгует М1" соратник Sabelb закинул стейт с результатами торговли за месяц.
Sabelb сказал(а): Во вложении отчет о торговле за месяц... 💰 походу для себя груль я нашел...💥 результаты меня вполне устраивают...🎯
Берем стейт из архива, суем в скрипт и получаем результат:
1618356771935.png

А вот умение так "курить бамбук" рисующими индикаторами на м1 придется обретать самому 🤣
 
Последнее редактирование:

13oleg13

Активный участник
К примеру: часто можно встретить споры о Торговых системах на рисующих или не рисующих индикаторах. В ветке "Для всех кто торгует М1" соратник Sabelb закинул стейт с результатами торговли за месяц.

Берем стейт из архива, суем в скрипт и получаем результат:
Посмотреть вложение 432181

А вот умение так "курить бамбук" рисующими индикаторами на м1 придется обретать самому 🤣
Лучшая реклама стратегии :)
 

Genry_05

Отдыхает
Лучшая реклама стратегии :)
На то и расчет ;) Это обычный инструмент для оценки качества.
Либо трейдер, либо инвестор всегда могут посмотреть сами что предлагается для торговли.
А потом выбирать: торговать самому, сове или другому специалисту.

Важно: учитывать количество сделок - чем больше данных для анализа, тем оценка точнее.
 

PIRANHAfx

Элитный участник
К примеру: часто можно встретить споры о Торговых системах на рисующих или не рисующих индикаторах. В ветке "Для всех кто торгует М1" соратник @Sabelb закинул стейт с результатами торговли за месяц.
Для "контрасту" было бы прикольно посмотреть стейт какого нибудь мартингейла за секунды до катастрофы (до кочерги) , что бы там выдал скрипт? :unsure: :LOL: :cool:
Ну или какой нибудь "громкий " жах памм до слива.;)
 

Genry_05

Отдыхает
Для "контрасту" было бы прикольно посмотреть стейт какого нибудь мартингейла за секунды до катастрофы (до кочерги) , что бы там выдал скрипт? :unsure: :LOL: :cool:
Ну или какой нибудь "громкий " жах памм до слива.;)
Это гугля в помощь ;)
Я сделал запрос в формате "PAMM DetailedStatement.htm"
На Альпах нашелся стейт этого памма:
Account: 5580755Name: [PAMM] Currency: USDLeverage: 1:50
2016 June 13, 10:20
Сунул его в скрипт и получил:
1618393671650.png
Собственно, на этом можно вводную часть информации о скрипте и закончить ;)
 

PIRANHAfx

Элитный участник
Это гугля в помощь ;)
Я сделал запрос в формате "PAMM DetailedStatement.htm"
На Альпах нашелся стейт этого памма:
Account: 5580755Name: [PAMM] Starovoytov DmitriyCurrency: USDLeverage: 1:50
2016 June 13, 10:20
Сунул его в скрипт и получил:
Посмотреть вложение 432202
Собственно, на этом можно вводную часть информации о скрипте и закончить ;)
Там без скрипта видно что инвестировать апасна.))) У него эквити как горки)
 

Genry_05

Отдыхает
Там без скрипта видно что инвестировать апасна.))) У него эквити как горки)
Эт понятно... Суть в некотором эталоне для измерений качества.
На форумных спорах о достоинствах той или иной системы в аргументах часто непечат$#ное слово и субъективный фактор ;)
Это попытка ввести в обсуждение некоторый объективный инструмент для оценки.
На сколько объективный - это к аналитикам подобных методов.
Но когда народ меряется стейтами - скрипт им в руки :LOL:
 

PIRANHAfx

Элитный участник
Эт понятно... Суть в некотором эталоне для измерений качества.
На форумных спорах о достоинствах той или иной системы в аргументах часто непечат$#ное слово и субъективный фактор ;)
Это попытка ввести некоторый объективный инструмент для оценки.
На сколько объективный - это к аналитикам подобных методов.
Но когда народ меряется стейтами, можно и измерить :LOL:
Возможно и так, не буду спорить.
В принципе я в своем посте хотел сказать следующее - что покажет этот скрипт по части стейтов с разной токсикой? Которая показывает прекрасное эквити (до кочерги).
Я так понимаю, что этот скрипт предполагается к использованию не опытными пользователями. Вот что покажет этот скрипт на токсик эквити? Которая красиво так растет вверх (до кочерги).
Понятно что найти стейты таких стратегий не легко. Было бы просто интересно, что показывал бы скрипт до дня Х?
 

Genry_05

Отдыхает
Возможно и так, не буду спорить.
В принципе я в своем посте хотел сказать следующее - что покажет этот скрипт по части стейтов с разной токсикой? Которая показывает прекрасное эквити (до кочерги).
Я так понимаю, что этот скрипт предполагается к использованию не опытными пользователями. Вот что покажет этот скрипт на токсик эквити? Которая красиво так растет вверх (до кочерги).
Понятно что найти стейты таких стратегий не легко. Было бы просто интересно, что показывал бы скрипт до дня Х?
Вопрос хороший, но для ответа нужна статистика.
Лично я использовал эти оценки в своих советниках - когда их писал. При запуске оптимизации тестер выдавал дополнительную колонку в которой были оценки. И для проверки первыми брал варианты оптимизации где Тарп и Сортино побольше ;)
 

PIRANHAfx

Элитный участник
Вопрос хороший, но для ответа нужна статистика.
Лично я использовал эти оценки в своих советниках - когда их писал. При запуске оптимизации тестер выдавал дополнительную колонку в которой были оценки. И для проверки первыми брал варианты оптимизации где Тарп и Сортино побольше ;)
Во тут я согласен с коллегой Мегапонтом, было бы что сравнивать. Обычно реально прибыльные и робастые алгоритмы это настолько штучный товар, что прям вот так выбирать как в лавке по Тарпу и Сортино это прям Грааль.)))

Конечно можно поиграть статистикой сделок при тесте и пооптить все что можно и нельзя. Главное не переоптить до подгонки. :unsure: ;)
 

Genry_05

Отдыхает
Во тут я согласен с коллегой Мегапонтом, было бы что сравнивать. Обычно реально прибыльные и робастые алгоритмы это настолько штучный товар, что прям вот так выбирать как в лавке по Тарпу и Сортино это прям Грааль.)))

Конечно можно поиграть статистикой сделок при тесте и пооптить все что можно и нельзя. Главное не переоптить до подгонки. :unsure: ;)
Все упирается в личный опыт трейдера или разработчика системы.
Ради интереса сделал с отчет по своей торговле с 1 апреля
Скрипт дал добро, но я это и так знаю ;)
Как только забросил совы и стал торговать только руками - скрипт сразу повеселел ;)
 
Последнее редактирование:

PIRANHAfx

Элитный участник
Вот и я про то - говорить не о чем :)
Молоток выложен, а где, как и для чего его использовать или не использовать - каждый решает сам :cool:
К сожалению без достаточно серьезных компетенций и опыта в торговле и инвестировании, этот скрипт остается только частью цепочки, скажем так алгоритма какого то отбора.

На скрине мой реал через этот скрипт.
Однако в реальности я уже убрал одну стратегию и отправил на доработку, так как произошли очень тревожные события. Но для скрипта все четенько.
П.С. Сорян тоже апрель только показал скрипт, думал он побольше истории зацепит.
Хм, что то я не могу выбрать период истории для примера. Или вся история или ближайшая до 6 мес. Жаль я бы смог проиллюстрировать свою мысль лучше.
И беру свои слова назад - скрипт тоже показывает что стратегия стала сбоить.))
 
Последнее редактирование:

PIRANHAfx

Элитный участник
Мне было бы интересно что показал бы скрипт за этот промежуток истории2021-04-14_13-11-20.png
 
Верх