Создавая ту или иную систему мы стремимся максимально выровнять итоговую эквити (в линеечку) и при этом не поддаться соблазну переоптимизации. Цель достойная и реальная, но при условии что система не будет разрабатываться и оптимизироваться только под один актив. Разработка системы под один актив уже является мощнейшей переоптимизацией. Помимо внутренних параметров самой системы, которые, как правило подбирают (оптимизируют) добиваясь идеальной эквити, мощнейшим переоптимизационным параметром так же является выбор одного инструмента из многих. Инструмента, который показывает на этой системе лучшие результаты. Не удивительно, что после запуска системы она со временем работает хуже и хуже или вообще перестает работать и уводит счет в глуокую просадку.
Проведем эксперемент целью, которого является поиск оптимального решения при котором будет найден способ создания системы максимально не оптимизированной, стабильной и с большими степенями свободы.
Возьмем за основу простейшую систему торгующую только в лонг. Покупка совершается при пробитии 2-х периодной линии сопротивления - BuyAtStop(Bar+1, @HighestSeries(#High,2), ' '), а продажа осуществляется при пробитии вниз 2-х периодной линии поддержки — SellAtStop(Bar+1, @LowestSeries(#Low,2), lastposition, ' '). Для избавления от шумовых движений при нисходящем тренде введем еще один фильтр на покупку условием которого является нахождение закрытия максимума бара выше 8-ми периодной скользящей средней строящейся по закрытию баров - if SMA(bar, #close, 8) < priceclose(bar) then… На открытии не покупаем и не продаем. Таймфрейм — часовики.
Эфективность системы будем оценивать по эквити (опытные системщики подтвердят, что зачастую этого бывает достаточно), да и целью эксперемента не являются итоговые цифровые параметры.
Тестируем фьючерс на индекс РТС за период 2008-2013:
неплохо, но рваненько, просадки в 365 выдержит не каждый. Двигаемся дальше — фьючерс сбербанка:
фьючерс на нефть:
евро-доллар:
в нулях, далее — фьючерс на евро:
неубедительный плюс, далее фьючерс на акции газпрома:
рвано и нестабильно, далее фьючерс на акции лукойла:
феерически убыточно. Фьючерс на роснефть:
рвано и с большими просадками. Смотрим фьючерс на доллар-рубль.
неплохо. И в заключении фьючерс на акции ВТБ:
по взрывному прибыльно, но рвано и с большими просадками.
Мы все прекрасно понимаем, что если взять эту систему и подобрать персонально для каждого из рассмотренных инструментов параметры, то вероятнее всего итоговая эквити будет в разы ровнее, но при этом мы рискуем очень сильно переподогнать систему. Лично я подобным занимался только когда начинал заниматься разработкой систем, но практический опыт очень быстро отучил меня от этих глупостей.
Лучший способ, который есть для выхода из этой ситуации это взять систему как есть с одними и теми же параметрами (см. выше), разделить капитал, в нашем случае, на 10 частей и торговать одновременно все инструменты.
Посмотрим что получается прогнав за тот же период 10 выше рассмотренных инструментов одновременно отдав под каждый 1/10 торгового капитала:
Как мы видим эквити значительно выровнялась, даже не смотря на то что сформированный портфель содержал заведомо убыточные интсрументы или инструменты торговавшиеся с огромными просадками. При этом мы параллельно решили еще несколько важных задач:
— избавились от переоптимизации
— значитеьлно повысили степень свободы системы
— решили вопрос с ликвидностью на актив уменьшив просскальзывание Очевидно, что пытаясь совершить сделку на 100млн на одном инструменте или разделив эту сумму на 10 разных инструментов мы значительно сокращаем просскальзывание.
Бонус:
Та же система но на портфеле из 10-ти ликвидных фьючерсов и 10 ликвидных акций РФ. Соответственно под каждый актив выделена 1/20 капитала:
доходность повысилась, просадки уменьшились, эквити выровнялась.
Александр Дрозд
Другие
ценные подборки
в избранное, а в пост плюс!)
Спасибо!
а то не всякую просадку выдержит…
Не согласен. Одну и ту же систему, откопированную не то что с одними и теми же, но даже с разными оптимизированными под конкретный инструмент параметрами нельзя считать хорошей диверсификацией. Работа по одной системе, откопированной «на ксероксе» на десяток разных инструментов — это мнимая диверсификация, которая если и будет работать, то только на удобном на таком портфеле систем рынке. Рынок поменялся, и сразу пачками начнут системы давать сбои на одних и тех же новых паттернах рынка.
p= Highest(High,2);
if (c > Average(Close,8) ) Then
Buy Next bar at p Stop;
y = Lowest(Low,2);
if BarsSinceEntry(0) >= 1 Then
ExitLong Next Bar at y Stop;
Тут конечно возникает вопрос: как исключить вход и выход на одном баре. У меня получился убыток на втб, на индексе ноль прибыли за два последних года.