Скользящие стопы. Часть I
Каждый начинающий трейдер слышал золотое правило: "Сокращай убытки и дай прибыли течь!". Об этом говорят на всех семинарах, пишут во всех книгах и цитируют на всех форумах. Это правило уже стало настолько известным, что практически каждый новичок знает, что нужно быстро избавляться от убыточных позиций. И что самый простой и надежный способ сделать это автоматически - это поставить стоп-лосс приказ в своем биржевом терминале.
Есть много разных версий, насчет того, какого размера должен быть предельный убыток, но большинство предпочитают использовать 2% стоп. То есть выходить из убыточной позиции, как только цена опустилась на 2% ниже цены покупки. Строго говоря, это не самый эффективный метод расчета стоп-лосса, но он может спасти от разорения большинство трейдеров. говоря "трейдеров", я не имею в виду людей, обожающих увеличивать убыточные позиции. Их не спасет ничто, и их разорение это всего лишь вопрос времени.
Но речь сегодня пойдет не об управлении капиталом, а о не менее интересной и важной вещи. Если с первой частью "золотого правила" все более-менее ясно, то вторая часть вызывает гораздо больше вопросов. "Тренд - твой друг" - вторая по популярности трейдерская теорема. Мы все хотим поймать долгую тенденцию, которая может принести наибольшую прибыль. Но как часто мы ошибались, выходя из тренда слишком рано... Обидно наблюдать, как растет цена акции, из которой ты только что вышел. Снова войти становится боязно, а смотреть на упущенную прибыль - просто не выносимо. Или бывает ситуация, когда сидишь в тренде до последнего. Сидишь так долго, что ситуация на рынке уже изменилась и трендовый поезд мчится в другую сторону. Прибыль от сделки, только что казавшаяся такой приятной и осязаемой, стремительно уменьшается. Трудно закрыть позицию, которая только что могла дать в два раза больше прибыли. Но еще хуже, если прокараулив нужный момент, нам приходится закрывать потенциально хорошую сделку с убытком. Знакомые ситуации, не правда ли?
Обе эти трудности легко решить, если протестировать свою стратегию на исторических данных и выбрать приемлемый для себя способ удержания позиции. Тогда сразу же станет ясно, на тренды какой длины мы можем рассчитывать, сколько от него мы будем терять и когда закрывать позицию с прибылью. В своей статье я хочу сделать обзор различных стратегий выхода из тренда, от самых простых до достаточно сложных. При расчетах я буду использовать следующие правила:
- тестирование будет проводиться на склеенном фьючерсе на индекс РТС, 15-минутные интервалы;
- открытие длинной позиции при обновлении 15-барного максимального значения по стоп-приказу;
- выход из убыточной позиции при достижении обычного 2% стоп-лосса;
- тестируется торговля одним контрактом, комиссия и проскальзывание не учитывается;
- делаю допущение, что инструмент "фьючерсРТС" является обычной акцией с ценой, равной значению фьючерса в пунктах. То есть все расчеты ведутся в рублях, гарантийное обеспечение и "плечо" не используются.
Перед тем, как начать обзор стратегий, хотелось бы сделать одно важное предупреждение. Все использованные здесь стратегии являются лишь "выставочными образцами" и не предназначены для реальной торговли на деньги. Их цель - только продемонстрировать возможности комбинирования различных параметров для составления своих собственных условий входа и выхода. Возможно, в следующих статьях я проведу более глубокий анализ и тестирование рассмотренных здесь стратегий применительно к различным временным интервалам. Пока же, текущие параметры далеки от идеала и я использую их исключительно для сравнения различных методик.
Итак, получен сигнал о том, что впереди нас ждет хорошее трендовое движение. Цена обновила локальный максимум, позиция открыта и выставлен защитный приказ на 2% ниже цены покупки. Если цена не оправдает наши ожидания и пойдет вниз, то мы примем небольшой убыток и будем терпеливо ждать следующий сигнал на покупку от своей торговой системы. А если цена пошла вверх, то мы начинаем считать прибыль и раздумывать, как бы выжать из тренда побольше и не передержать открытую позицию.
Самый простой способ выхода из тренда - это дождаться, пока цена закрытия бара не окажется ниже определенной средней. Очень удобный и понятный в расчетах метод. Поскольку тренд по своей сути подразумевает восходящее движение цены, то последующие цены закрытия баров будут находиться выше предыдущих. Таким образом, среднее значение цен закрытия всегда будет ниже, чем цена закрытия последнего бара. Если же цена снижается ниже своего среднего значения, то нарушается основной принцип тренда и можно констатировать его окончание. Протестируем первую стратегию.
Выход из длинной позиции, если цена закрытия оказалась ниже своей скользящей средней.
Поскольку, при открытии позиции мы использовали максимальное значение за последние 15 периодов, то и для закрытия позиции будем использовать тот же временной интервал. Значит, в качестве параметра усреднения для своей скользящей средней будем использовать цены закрытия последних 15 баров. Смотрим статистику:
Всего совершено 1200 сделок, из которых 57% оказались убыточными. Это вполне сносный показатель для трендследящей системы. Главным свойством таких систем является ловля больших, но редких трендов и страдание от множества мелких убытков. Так и есть: средняя прибыльная сделка приносит почти в два раза больше денег, чем мы теряем при фиксации убыточной сделки. Примечательно, что до стоп-лосса цена доходит очень редко, раньше пересекая свою скользящую среднюю. В среднем мы получим 0,23% прибыли на сделку. Маловато, конечно, но при торговле маленьким депозитом и это может принести хорошую итоговую прибыль. Единственным серьезным минусом является длительная серия убыточных сделок. В нашем случае тесты показали 14 убыточных сделок подряд.
Основным недостатком при использовании рассмотренного выхода является сильная зависимость от случайного "шума". Поскольку условие выхода зависит от цены закрытия последнего бара, то рыночные колебания могут выбросить нас из тренда, случайно заскочив в область, где будет подан сигнал закрытия позиции. При этом тренд вполне может продолжиться после локальной приостановки. Чтобы избежать этого, можно учитывать среднюю цену нескольких периодов вместо одной. Вероятность случайного выхода при этом уменьшится, но и немного замедлится реакция системы на рыночные изменения. Если раньше было достаточно, чтобы всего один бар пересек свою скользящую среднюю, то теперь необходимо дождаться нескольких закрытий подряд. Таким образом, приходится жертвовать накопленной прибылью ради возможности просидеть в тренде подольше и получить еще большую прибыль. Протестируем вторую стратегию.
Выход из длинной позиции, если быстрая средняя пересекла медленную сверху вниз.
Под медленной скользящей средней мы имеем в виду среднее значение цен закрытия за последние 15 баров, по которым мы идентифицируем наличие трендового движения. Под быстрой - усредненное значение последних трех закрытий, для фильтрации случайного рыночного шума. Смотрим статистику:
Сразу бросается в глаза, что максимальная последовательная серия убыточных сделок сократилась с 14 до 9. Это означает, что в предыдущем испытании нас несколько раз выбрасывало из тренда на самом старте, когда цена случайно оказывалась ниже своего 15-периодного значения. Из-за того, что мы теперь фильтруем рыночный "шум", средняя продолжительность сделки немного выросла. Как следствие, сократилось общее число сделок на том же тестовом интервале. Средняя прибыльная сделка немного возросла с 1,53% до 1,64%. Но и средний убыток пропорционально вырос, поэтому итоговый показатель прибыли на сделку практически не изменился.
В среднем показатели системы изменились очень незначительно. Возможно, удастся достичь большей эффективности от нашей второй системы, если более тщательно оптимизировать и протестировать длину быстрой и медленной скользящей средней линии. Но тут кроется подводный камень. Ведь оптимизация этих параметров внесет в нашу торговую систему два дополнительных параметра. Во-первых, каждый последующий параметр снижает надежность системы, а, во-вторых, неправильная оптимизация значений легко может превратить хорошую систему в систему, подогнанную под прошлые данные. Рынок, как известно, постоянно меняется и значения, идеальные для торговли год назад, могут быть абсолютно неэффективны в будущем. Значит, мы переходим к следующей системе, где закрытие длинной позиции будет происходить при обновлении локальных максимумов. Протестируем третью стратегию.
Выход из длинной позиции, если цена достигает нового локального минимума.
Напомню, что мы тестируем стратегии, в которых длинная позиция открывается во время достижения ценой максимального значения за 15 временных периодов. Поэтому и закрывать позицию будем при обновлении ценой своих минимальных значений в 15-барном интервале. Обе предыдущие стратегии показали средний убыток значительно лучше установленного 2% лимита потерь. Это происходило потому, что сигнал на выход из позиции поступал раньше и вполне возможно душил тренд, не оставляя ему простора для старта. Поэтому в третьей стратегии введем дополнительное условие, что позиция будет закрываться или выше цены покупки, или по стоп-лоссу. Смотрим статистику:
Сразу бросается в глаза, что система кардинально от двух предыдущих. Благодаря дополнительному параметру значительно выросло число прибыльных сделок с 44% до 52%, сократилась максимальная продолжительность убыточных сделок, выросла прибыльная серия и заметно выросла средняя прибыль на сделку с 0,23% до 0,34%. Это стало возможно благодаря более длительному удержанию тренда. Позиция держится теперь почти в два раза дольше, но вот предельная отдача от такой длительности, к сожалению, сильно упала. Если в первой стратегии мы получали 19 рублей прибыли за каждый удержанный бар, то теперь мы имеем всего лишь 10 рублей. Малоприятный, но не критичный факт, ведь конечная цель трендследящих стратегий - выжать максимум прибыли из каждой сделки. А вот на что действительно стоит обратить внимание, так это на глубину просадки. Если раньше мы могли получить 9 убытков подряд по 0,8% каждый, то теперь средний убыток вырос почти в 2 раза. Наш введенный дополнительный параметр практически исключил закрытие убыточной сделки до достижения уровня стоп-лосса. Из-за этого также заметно упал фактор восстановления этой торговой системы.
Все три рассмотренные системы имеют один общий недостаток. Они все практически не следят за накопленной прибылью. А ведь очень часто на рынке случаются ситуации, когда после стремительного роста цена также быстро возвращается на исходные позиции. И поймав начало тенденции, система просто не успевает вовремя зафиксировать прибыль и закрыть позицию. Чтобы избежать подобных неудач, можно воспользоваться оригинальной методикой трейлинг-стопа. Он четко определяет, какая часть накопленной прибыли подвергается стопу и фиксирует прибыльную позицию, как только теряется фиксированный процент накопленной прибыли в открытой сделке. Протестируем четвертую стратегию.
Продолжение следует.
Все вопросы и предложения по темам следующих статей жду на Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.
С уважением, Правдюк Тарас
Русский Трейдер