Страница 1 из 2 1 2 ПоследняяПоследняя
Показано с 1 по 15 из 26
  1. #1
    Administrator
    Вес репутации
    1135

    Foxman: Как узнать, что система работает?

    Имеется некоторая торговая система. Что именно и как делает система - совершенно не важно. Система может работать на споте, фьючерсах, на опционах, облигациях, на чём угодно. Важно, что есть некоторые правила, которые неукоснительно соблюдаются. То есть, рассматриваем систему как чёрный ящик. Но не из-за того, что неизвестны её правила, а исключительно чтобы не вдаваться в детали.

    Итак, есть система. Прогнали её по истории, видим, что система работает, прибыль даёт. Запустили в режиме реального времени - система что-то делает, тоже прибыль приносит.

    И теперь возникает очень важный вопрос.

    Как узнать, что система сохраняет свою работоспособность СЕЙЧАС?

    Точно узнать, что система рабочая, видимо, невозможно. А для примерной оценки работоспособности способы есть. Кстати, опять же, насколько эти способы надёжны - неизвестно.

    Я раскажу о своём способе. Не факт, что он лучше или надёжнее других (или что он вообще работает, это ни для какого метода не гарантировано). Просто это "мой" способ, и я ему доверяю.

    Сейчас у меня есть два счёта. На первом работают механические системы с ручным исполнением сигналов, на втором - по интуиции. Каждую неделю, в пятницу вечером, я записываю размер эквити каждого счёта, и если был вывод денег, то сколько выведено. Оба счёта я рассматриваю как системы типа "чёрный ящик". Для интуитивного счёта это настоящий "чёрный ящик", поскольку я не знаю, как работает моя интуиция, какие у неё правила.

    По недельным результатам получается такая таблица:

    Неделя-1 Эквити-1 Вывод-1
    Неделя-2 Эквити-2 Вывод-2
    Неделя-3 Эквити-3 Вывод-3
    и так далее.

    Кстати, у меня системы ориентированы больше на то, чтобы периодически выводить деньги, а увеличение эквити - дело второе. Если бы первой задачей ставился рост эквити (как на соревнованиях трейдеров), то способ оценки работоспособности нужно бы было, наверно, немного поменять. Но это отдельная песня.

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

    Суть метода заключается в следующем:

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

    Характеристики бывают плюсовые (годовая прибыльность, профит фактор и тому подобное) которые чем больше - тем лучше, и минусовые (например, просадка), которые чем меньше - тем лучше.

    Если плюсовые характеристики системы не уменьшаются со временем, а минусовые не растут - значит система работает. А вот если плюсовые падают или минусовые растут (или, не приведи, и то и другое вместе) - значит нужно, как минимум задуматься о том, чтобы тормознуть работу и подробно перепроверить систему.

    Помимо анализа результатов счетов, каждую неделю я прогоняю МТС по истории, точно так же записываю и анализирую их результаты. Так я проверяю свои рабочие МТС (по сигналам которых открыватся позиции на счетах).

    Теперь пример.

    Исходные данные для примера я взял из прогона некоторой МТС по истории. Рассматриваем две характеристики производительности системы: годовая прибыльность (плюсовая характеристика) и минимальный прибыльный период (минусовая).

    Прибыльность за определённый период считается так: общая сумма выведенных денег делится на стартовый (за этот период) депозит системы и затем это пересчитыается в годовой период. Например, если депо на начало месяца было 100 тыс, в конце выведено 10, то годовая прибыльность равна (10/100)*100%*12(столько месяцев в году). Прибыльность считается за определённый периоды, я выбрал 91 день (3 мес), 182 (6 мес), 238 (8 мес) и 364 (1 год). Периоды скользящие, то есть все "прибыльности" считаются каждую неделю (а не раз в 2-6-9-12 месяцев).

    Минимальный прибыльный период - это минимальный срок, за который из системы удаётся вывести хоть какую-то прибыль. На графиках измеряется в неделях. Если получается выводить каждую неделю, т.е. период равен 1 - это хорошо, если 2 - хуже, то есть чем период меньше - тем лучше.

    Суммарный капитал: эквити в системе плюс выводимая прибыль.

    http://www.russian-trader.ru/article...an/pic-1-1.png


    Годовая прибыльность, посчитанная несколькими скользящими периодами

    http://www.russian-trader.ru/article...an/pic-1-2.png


    Минимальный прибыльный период

    http://www.russian-trader.ru/article...an/pic-1-3.png


    По картинкам видно, что был только 1 неудачный период (зато достаточно большой). Этот период видно по большому горбу на графике минимального прибыльного периода. После окончания неудачного периода система опять заработала. Сейчас работает нормально. А вот если кривая "Годовая прибыльность (91 день)" упадёт ниже 25-30% или минимальный прибыльный период возрастёт до 5-6-ти недель - можно будет уже начинать волноваться.

    Вот пример системы получше. По картинкам и без пояснений видно, что система работает, и весьма стабильно. Вообще то система такая, что достаточно одного графика эквити - по нему одному видно, что всё хорошо. Остальные графики - просто дополнительная информация, для интереса.

    http://www.russian-trader.ru/article...an/pic-2-1.png


    http://www.russian-trader.ru/article...an/pic-2-2.png


    http://www.russian-trader.ru/article...an/pic-2-3.png


    Хотелось бы ещё показать пример когда система перестаёт работать, но под рукой у меня есть либо системы, которые работают равномерно (заработывают, сливают, болтаются, но всё равномерно), либо раньше не работали, а потом заработали. Так что пришлось ограничиться этими двумя системами.

    Автор статьи: Foxman

  2. #2
    Вес репутации
    0
    Спасибо, полезная статья.

  3. #3
    Местный
    Вес репутации
    1
    Foxman, а у Вас есть какой-нибудь алгоритм оптимизации/перераспределения денег между работающими системами? Может расскажете как он работает?

  4. #4
    Местный
    Вес репутации
    1
    Цитата Сообщение от Anchorit
    Foxman, а у Вас есть какой-нибудь алгоритм оптимизации/перераспределения денег между работающими системами? Может расскажете как он работает?
    Да, конечно есть.

    Только оно сейчас в состоянии, когда сам я знаю как делать, а объяснить с картинками чтобы было просто и понятно - ещё не могу. Может, до нового года доделаю автоматизацию его, тогда можно будет показывать на тестовых прогонах.

  5. #5
    Местный
    Вес репутации
    1
    Спасибо большое за статью!
    Имхо - грамотный подход.
    Was mich nicht umbringt, macht mich stдrker (Nietzsche)

  6. #6
    Местный
    Вес репутации
    1
    Цитата Сообщение от andrew13
    Спасибо большое за статью!
    На здоровье ;)

  7. #7
    Местный
    Вес репутации
    2
    Хорошая статья.

    А вы не могли бы привести график CapitalTotal для случая, который вы называете "система не работала, а потом заработала"?

  8. #8
    Местный
    Вес репутации
    1
    Цитата Сообщение от Anatoly Utkin
    Хорошая статья.

    А вы не могли бы привести график CapitalTotal для случая, который вы называете "система не работала, а потом заработала"?
    Это очень трудоёмко... если время будет - сделаю...

    Или можно такой вариант:
    Вы пришлёте свои данные, а я их обсчитаю (это быстро делается).

    Никакой конфиденциальной информации тут не раскрывается, поскольку данные можно ставить не реальные, а пропорциональные, с каким-то секретным коэффициентом.

    Формат данных такой (выдрал из Ексель-файла):

    DateStart - дата начала недели (понедельник)
    DateEnd - дата конца недели (следующий понедельник)
    DepoStart - депо на начало недели
    DepoEnd - депо на конец недели
    Profit - сколько заработано или слито
    R - сколько выведено со счёта за этот период

    Пример:
    DateStart DateEnd DepoStart DepoEnd Profit R
    11.02.2008 18.02.2008 100000 99127.96 -872.04 0
    18.02.2008 25.02.2008 99127.96 102359.46 3231.5 2359.46
    25.02.2008 03.03.2008 100000 101983.3 1983.3 1983.3
    03.03.2008 10.03.2008 100000 98491.48 -1508.52 0
    10.03.2008 17.03.2008 98491.48 98279.76 -211.72 0
    17.03.2008 24.03.2008 98279.76 98922.39 642.63 0
    24.03.2008 31.03.2008 98922.39 98724.99 -197.4 0
    31.03.2008 07.04.2008 98724.99 95871.32 -2853.67 0
    07.04.2008 14.04.2008 95871.32 95668.28 -203.04 0

  9. #9
    Местный
    Вес репутации
    2
    Меня больше интересуют общие подходы. Есть ли у вас какой-то формальный способ изучить графики системы (эквити, TotalCapital, время выхода из дроудауна, средняя прибыльность за последние 3,6,8,12 месяцев, может еще что-нибудь), и сказать--вот эта система хорошая, а вот эта--плохая? Ведь невозможно, чтобы плюсовые характиристики системы всегда не уменьшались, а минусовые всегда не увеличивались. К примеру, в приводимой вами неплохой системе (вторая по ходу статьи), в районе августа 2009 все средние доходности падают. Насколько сильно и/или долго они должны падать (или, может быть, какой-то другой критерий), чтобы вы сказали--да, систему надо пересматривать?

  10. #10
    Местный
    Вес репутации
    1
    Цитата Сообщение от Anatoly Utkin
    Меня больше интересуют общие подходы. Есть ли у вас какой-то формальный способ изучить графики системы (эквити, TotalCapital, время выхода из дроудауна, средняя прибыльность за последние 3,6,8,12 месяцев, может еще что-нибудь), и сказать--вот эта система хорошая, а вот эта--плохая? Ведь невозможно, чтобы плюсовые характиристики системы всегда не уменьшались, а минусовые всегда не увеличивались. К примеру, в приводимой вами неплохой системе (вторая по ходу статьи), в районе августа 2009 все средние доходности падают. Насколько сильно и/или долго они должны падать (или, может быть, какой-то другой критерий), чтобы вы сказали--да, систему надо пересматривать?
    Еслия понял правильно, вы о двух вещах:
    1) критерий "хорошести" в общем
    2) критерий, когда систему нужно пересматривать

    По п 2.
    я делаю проще.
    1) У меня есть набор систем, у каждой свои характеристики.
    2) Я знаю, чего хочу иметь в общем - по итогам 6-ти месяцев прибыльность не менее 80% годовых и макс. просадка не более 15%.
    3) Если какая-то система не тянет (не важно по каким причинам) - падает прибыльность или ещё чего, то я её просто выключаю (но считать продолжаю). Если система опять вышла на нужный уровень - опять включаю.

    Системы после создания я редко пересматриваю. Сделана - готово, потом либо работает либо нет (грубо говоря).


    По п 1.
    Критерия на общую хорошесть у меня нет.
    Я сравниваю между собой те системы, которые у меня есть.
    Основные показатели - 3 шт.
    1) Годовая прибыльность скользящая
    2) Минимальный период выплат скользящий
    3) Максимальная просадка в процентах скользящая
    Как их сравнивать - это уже интуитивная "химия".


    Да, ещё. Если кратко.

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

    И во вторую очередь - системы между собой.

  11. #11
    Местный
    Вес репутации
    2
    Спасибо!

  12. #12
    Местный
    Вес репутации
    1
    Цитата Сообщение от Foxman
    По п 2.
    я делаю проще.
    1) У меня есть набор систем, у каждой свои характеристики...
    Foxman, а сколько всего систем в Вашем портфеле?

  13. #13
    Местный
    Вес репутации
    1
    Цитата Сообщение от Anchorit
    Foxman, а сколько всего систем в Вашем портфеле?
    Принципиально разных сейчас - 4 шт.
    Плюс каждая работает с несколькими параметрами, штук 5 разных наборов на систему (эти конечно коррелируют довольно сильно).

    В общем, итого - примерно 20 систем.

  14. #14
    RT
    Administrator Аватар для RT
    Вес репутации
    25
    Интересная статья, хоть она и старая )) оххх сколько тут еще надо привести в порядок.

  15. #15
    Местный Аватар для lav-ka7
    Вес репутации
    1
    Торговая система работает, когда мы получаем стабильную прибыль. Если прибыли нет, надо работать над корректировкой торговой системы.