Вы находитесь на странице: 1из 6

œÂ‚˚È ÌÂÁ‡‚ËÒËÏ˚È ÊÛÌ‡Î Ó ÚÂȉË̄ ̇ ÛÒÒÍÓÏ ˇÁ˚ÍÂ

Как правильно
поставить стоплосс
«Если вы не будете принимать маленьких убытков, то рано
или поздно вас посетит праматерь всех потерь…»
Jack Schwager, «The New Market Wizards»

ÃËı‡ËÎ  ÓÓβÍ
moysha1@usa.net
¬Î‡‰ËÏË ’Ó‰ÛÍ
khoduk@mail.ru

П
равильное определе- торым уровнем, а система в целом имеет са или с неправильно поставленным
ние стоп-лосса1 — за- положительное математическое ожида- стоп-лоссом.
дача не тривиальная. ние прибыли, существенно улучшает Ниже мы попробуем описать возмож-
Смысл этого стопа по- трейдерскую дисциплину и снимает ную последовательность действий и ло-
нятен — ограничение стрессы. гику рассуждений постановки фиксиро-
максимального разме- К определению размера стоп-лосса не- ванного стоп-лосса на примере своей
ра убытков определенным значением и, обходимо переходить после того, как на торговой системы.
таким образом, снижение риска разоре- руках уже имеется торговая система, де- Итак, у нас есть почти приличная, как
ния. При этом необходимо пройти меж- монстрирующая хорошие результаты. мы считаем, торговая система. Для того
ду двумя крайностями: Не стоит ждать от стоп-лосса чудес в ви- чтобы она стала совсем приличной, ей
1. Постановкой стопа слишком далеко, де значительного увеличения доходнос- необходимо иметь стоп-лосс. Помимо
что делает его неэффективным. ти — его задача, повторюсь, в уменьше- всего прочего, это будет способствовать
2. Слишком близким размещением, нии рисков. моему спокойному ночному сну...
приводящим к чрезмерно частому сра- Для определения оптимального стоп- Мы предпочитаем писать стопы сами,
батыванию стопа и снижающим общую лосса необходимо исследовать рынок, а не пользоваться встроенными в Мета-
эффективность торговой системы. иначе говоря, стоп-лосс должен быть сток. Одна из причин — чисто идеологи-
Обратите внимание, что задачами объективным. Недопустим субъектив- ческая. Мы полагаем, что на нашем мало-
стоп-лосса является не уменьшение или, ный подход, когда трейдер определяет ликвидном с технической точки зрения
тем более, предотвращение потерь, а стоп-лосс исходя из того, каким капита- рынке для увеличения эффективности
только ограничение их максимального лом он оперирует и какую долю от это- системы нежелательно пользоваться для
размера. Потери на рынке неизбежны и го капитала он может относительно без- получения сигналов торговых систем це-
являются частью торгового плана. болезненно потерять в ходе одной сдел- нами закрытия, открытия, максимума
Помимо ограничения максимального ки. Рынку глубоко безразлична ваша или минимума, поскольку они часто но-
размера убытков стоп-лосс выполняет готовность к потерям той или иной сте- сят случайный характер. Для того чтобы
еще одну важную задачу психологичес- пени тяжести, оптимальный стоп-лосс представить отличие нашего рынка от
кого плана: наличие заранее определен- зависит только от характера рынка. Ес- «нормального» западного, нужно заме-
ной точки выхода из позиции, которая ли полученная после исследования тить, что весь объем РТС за день — это
оказалась убыточной, способно значи- рынка величина оптимального стоп- примерно 15–20 секунд торговли акция-
тельно уменьшить эмоциональные пе- лосса окажется слишком велика для ми Microsoft. Понятно, что при таком
регрузки у трейдера. Понимание того, вас — тогда лучше вообще не торговать объеме на западном рынке около мини-
что убытки заранее лимитированы неко- этот рынок, чем торговать без стоп-лос- мальных, максимальных цен на откры-

1
Иногда этот вид стопов также называют «стоп на основе money management», или «money management stop».

22 —Ó‚ÂÏÂÌÌ˚È ÚÂȉËÌ„ n π 2 2001


Пðàêòèêà www.m-trading.ru
тии торгов и на их закрытии проходят десятки и сотни сделок. стве такой «опорной» цены используется цена открытия по-
В результате эти цены носят не случайный, а закономерный ха- зиции. Выглядит это так:
рактер, адекватно отражая происходившие на рынке события, и
это позволяет корректно использовать данные показатели в Open.Price: = ValueWhen (1, Position = 1 and ref (Position, 81) =
техническом анализе. Увы, у нас такой рынок будет еще не ско- 0, AvgPrice);
ро. Выход, который мы нашли, состоит в использовании для
получения сигналов средней цены за период (день, час). Функция Open.Price возвращает значение цены (в данном
С нашей точки зрения, средняя цена более верно отражает ди- случае — средней цены на данном баре) для первого с правого
намику состояния рынка, нежели используемые стандартно це- края графика бара, для которого выполняется следующее усло-
ны открытия, закрытия, минимума или максимума. вие — текущая позиция открыта (Position = 1), позиция на пре-
Для хранения средней цены акции за период мы исполь- дыдущем баре была закрыта (ref (Position, -1) = 0).
зуем в Downloader столбец, зарезервированный для значений 3. Необходимо учесть комиссию, которая добавляется к
Open Interest1. Так как в этот столбец можно вносить только «опорной» цене при длинных позициях и вычитается
целые значения, то, зачастую, приходится сначала умножать при коротких позициях (далее пример для длинных по-
значение цены на некий коэффициент, равный 10, 100, 1000 и зиций):
т. д., для приведения к целым значениям, а потом создавать в
Метастоке индикатор, производящий обратное преобразова- Full.Price: = Open.Price ∗ (100 + значение комиссии в %)/100;
ние. Так, для хранения средних значений сделок РАО ЕЭС за
период мы умножаем полученное из отчетов о торгах значе- 4. Теперь можно задать условие, при котором происходит сра-
ние на 10 000, а потом для обращения к данным используем батывание стоп-лосса, а именно прохождение текущей ценой
индикатор Avg.Price, представляющий из себя следующую (средней ценой за период) ниже «опорной» цены на некото-
конструкцию: рое количество процентов (для длинных позиций):

Avg.Price: = OI/10000; AvgPrice < Full.Price ∗ (( 100 — opt1)/100),


Avg.Price где opt1 — это величина стоп-лосса в процентах.

К сожалению (или к счастью), Метасток не позволяет ис- Итого, целиком конструкция стоп-лосса для длинных пози-
пользовать во встроенных стопах никаких значений, кроме от- ций выглядит следующим образом:
крытия, закрытия, минимума или максимума. Поэтому для ис-
пользования в стоп-лоссе средней цены приходится писать Enter.trade: = условия открытия длинных позиций;
конструкцию стоп-лосса самостоятельно. На самом деле это не Close.trade: = условия закрытия длинных позиций;
только не трудно, но еще и полезно — понимание того, как ра- Position:= HighestBars (Close.trade) >= HighestBars (Enter.trade);
ботает стоп-лосс, позволяет в последующем подходить творче- Open.Price: = ValueWhen (1, Position = 1 and ref (Position, 81) = 0,
ски к его модификации. В принципе описанный ниже подход AvgPrice);
позволяет использовать в качестве стопа значение любого ин- Full.Price: = Open.Price ∗ (100 + значение комиссии в %)/100;
дикатора, а не только средней цены за период. AvgPrice < Full.Price ∗ ((100 — opt1) / 100)
Логику составления стоп-лосса на языке Метастока можно Для коротких позиций так:
представить так: Enter.trade: = условия открытия коротких позиций ;
1. Сначала надо выделить те участки цен, которые приходятся на Close.trade: = условия закрытия коротких позиций ;
открытые позиции, то есть те фрагменты рыночной динамики, Position: = HighestBars (Close.trade) >= HighestBars (Enter.trade);
на которых в принципе возможно срабатывание стоп-лосса. Open.Price: = ValueWhen (1, Position = 1 and ref (Position, 81) = 0,
В отличии от языка продуктов фирмы Omega Research AvgPrice);
(TradeStation, SuperChart и д. р.), Метасток не умеет сам опреде- Full.Price: = Open.Price ∗ (100 — значение комиссии в %)/100;
лять текущее состояние позиций, что является существенным AvgPrice > Full.Price ∗ ((100 — opt1)/100)
недостатком его языка, затрудняющим создание торговых
стратегий. Мы определяем текущую позицию, сравнивая пери- Заменяя AvgPrice на любое другое значение — Close, Open,
оды времени, прошедшие после последнего сигнала на откры- High, Low или даже значение какого-нибудь индикатора,
тие позиций и последнего сигнала на закрытие позиций: можно привязать стоп-лосс к любому другому показателю.
Далее, после внесения данного фрагмента кода в условия
Enter.trade: = условия открытия позиций; закрытия сделки в окне System Editor можно приступать к те-
Close.trade: = условия закрытия позиций; стированию. За шаг при оптимизации лучше взять значение
Position: = HighestBars(Close.trade) > HighestBars(Enter.trade); в один процент.
После проведения оптимизации начинается самое важ-
Теперь мы имеем в своем распоряжении функцию Position, ное — анализ полученных результатов.
которая возвращает значение 1 при открытой позиции и значе- Для подготовки данных к анализу мы используем набор
ние 0 — при закрытой. макросов в среде Excel, позволяющий автоматически рассчи-
2. Следующий шаг состоит в определении «опорной» цены, для тывать ряд важных показателей доходности и риска системы
которой отсчитывается значение стоп-лосса. Обычно в каче- на основании результатов тестирования. Данный набор мак-

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

π 2 2001 n —Ó‚ÂÏÂÌÌ˚È ÚÂȉËÌ„ 23


œÂ‚˚È ÌÂÁ‡‚ËÒËÏ˚È ÊÛÌ‡Î Ó ÚÂȉË̄ ̇ ÛÒÒÍÓÏ ˇÁ˚ÍÂ

¡ÂÁ ¬Â΢Ë̇ ÒÚÓÔ-ÎÓÒÒ‡, %


ÒÚÓÔ-ÎÓÒÒ‡ 1 2 3 4 5 6 7 8 9
 Ó΢ÂÒÚ‚Ó ‡ÎËÁÓ‚‡ÌÌ˚ı ÒÚÓÔÓ‚ 0 40 30 23 16 10 9 5 3 2
”‚Â΢ÂÌË ҘÂÚ‡, % 4046 2458 2888 2939 4975 4773 4901 5778 5539 5424
ÇÚÂχÚ˘ÂÒÍÓ ÓÊˉ‡ÌË ‰ÓıÓ‰ÌÓÒÚË 4,65 3,02 3,42 3,70 4,73 4,79 4,89 5,22 5,17 5,14
ÓÚ Ò‰ÂÎÍË, %
—Â‰Ìˇˇ ÏÂÒˇ˜Ì‡ˇ ‰ÓıÓ‰ÌÓÒÚ¸, % 7,0 6,2 6,5 6,5 7,5 7,5 7,5 7,8 7,8 7,7
—ڇ̉‡ÚÌÓ ÓÚÍÎÓÌÂÌË Ò‰ÌÂÈ 21,6 22,1 22,9 23,4 23,4 23,3 22,0 21,8 21,8 21,9
ÏÂÒˇ˜ÌÓÈ ‰ÓıÓ‰ÌÓÒÚË, %
œÓÏÂÒˇ˜Ì˚È ËÒÍ 3,08 3,57 3,53 3,59 3,10 3,12 2,92 2,78 2,82 2,84
—ÓÓÚÌÓ¯ÂÌË Ò‰ÌÂÈ ÏÂÒˇ˜ÌÓÈ 2,28 1,73 1,84 1,82 2,44 2,39 2,57 2,82 2,75 2,72
‰ÓıÓ‰ÌÓÒÚË Ë ËÒ͇
 Ó΢ÂÒÚ‚Ó ÔË·˚θÌ˚ı ÏÂÒˇˆÂ‚ 33 29 29 30 33 33 33 34 33 33
 Ó΢ÂÒÚ‚Ó Û·˚ÚÓ˜Ì˚ı ÏÂÒˇˆÂ‚ 21 25 25 24 21 21 21 20 21 21
ÇÍÒËχθÌ˚È ‰Ó‰‡ÛÌ, % 28,6 31,5 31,3 34,5 30,3 31,2 22,3 24,3 24,3 24,3
 Ó΢ÂÒÚ‚Ó ÔË·˚θÌ˚ı Ò‰ÂÎÓÍ 39 37 38 38 38 37 38 38 38 38
 Ó΢ÂÒÚ‚Ó Û·˚ÚÓ˜Ì˚ı Ò‰ÂÎÓÍ 43 72 63 56 47 46 44 42 42 42
Շ˷Óθ¯ËÈ Û·˚ÚÓÍ Á‡ Ò‰ÂÎÍÛ, % 14,7 8,9 8,9 11,3 11,3 11,3 11,3 11,3 11,3 12,3
—ÓÓÚÌÓ¯ÂÌË Ò‰ÌÂÈ ÔË·˚ÎË 3,29 4,84 4,26 3,82 3,82 3,84 3,72 3,82 3,74 3,70
Í Ò‰ÌÂÏÛ Û·˚ÚÍÛ
—‰ÌËÈ ‡ÁÏÂ ÔË·˚θÌÓÈ Ò‰ÂÎÍË, % 16,4 17,1 17,0 17,0 17,5 17,8 17,0 17,1 17,1 17,1
—‰ÌËÈ ‡ÁÏÂ Û·˚ÚÓ˜ÌÓÈ Ò‰ÂÎÍË, % 5,0 3,5 3,99 4,5 4,6 4,6 4,6 4,5 4,6 4,6

росов под названием Test Analyser сво- ходности, математического ожидания рассматриваем результаты анализа и
бодно доступен на сайте: www.spb. прибыли от сделки и соотношения до- ищем наиболее доходные и наименее ри-
cityline.ru/u/moysha/index.html. ход/риск. Кроме того, существенно воз- скованные варианты. С этой точки зре-
В качестве примера анализа исполь- растает количество убыточных месяцев ния наиболее хорошо смотрятся 7, 8 и
зуем результаты тестирования стоп-лос- и систему становится некомфортно тор- 9%-е стоп-лоссы. У них максимальная из
са для нашей торговой системы приме- говать. всех помесячная доходность и макси-
нительно к часовым данным EESR в Иначе говоря, близко расположенные мальное соотношение доход/риск, самое
РТСе (комиссия 0.8 %, только лонг, от- к точке открытия позиций стоп-лоссы большое математическое ожидание при-
крытие позиций на зыкрытии текущего часто закрывают потенциально при- были от сделки. Кстати, в Метастоке по
бара, история с 1996 года). Результаты быльные сделки с небольшим убытком, результатам тестирования они занимают
обработки в Test Analyser см. в таблице. и, увеличивая количество сделок за счет первые три строчки в отчете, претендуя
Наиболее важными показателями из последующего переоткрытия позиций, на вхождение в состав торговой системы.
представленных здесь1 мы считаем сред- переводят с вашего счета на счет вашего Это одна из ловушек системной торгов-
немесячную доходность и соотношение брокера дополнительные суммы комис- ли. Все бы было хорошо, если бы не одно
среднемесячного дохода и риска (выде- сионных. «но» — смотрим самую первую строчку
лены в таблице жирным шрифтом). Это Психологически комфортно торговать в таблице, — эти стоп-лоссы очень ред-
то, на что можно с определенными ого- два вида стоп-лоссов — близкие, из-за ки. Увы, это то, что, возможно, называ-
ворками рассчитывать при использова- маленького размера убытков по каждой ется подгонкой под исторические дан-
нии системы в течение достаточно дли- сделке, и дальние, из-за редкой реализа- ные. Эти стоп-лоссы встречались слиш-
тельного периода времени. Остальные ции этих стопов. Именно с этим связано ком редко, чтобы их результаты можно
показатели раскрывают то, из чего скла- иногда желание или приблизить стопы было рассматривать как достоверные.
дывается эта доходность, позволяя вы- или вовсе их убрать с глаз долой. Даль- Вполне возможно, что по мере накоп-
явить важные особенности торговых си- ние стопы и отказ от стопов мы обсудим ления статистики появится возможность
стем. чуть ниже, вопрос же о приближении еще раз вернуться к этому вопросу и тог-
Итак, собственно анализ результатов. стопов к цене захода для нас наболев- да 7 или 8%-е стоп-лоссы смогут дока-
Сначала отсекаем одну крайность — ший — не реже раза в месяц приходится зать свое право на существование в со-
слишком близкую постановку стоп-лос- рассказывать анекдот о бабушке летчика, ставе торговых систем — но не сейчас.
сов. Из данных в таблице следует, что в просившей своего внучка летать пони- Вообще говоря, существует точка зре-
эту категорию попадают 1 %, 2 % и 3 % же, чтобы не разбиться… ния, что стоп-лоссы должны быть очень
стоп-лоссы. Показатели этих систем су- Полученные при тестировании дан- широкими (придуман даже соответству-
щественно хуже не только в сравнении с ные доказывают, что слишком близко ющий термин — ruin-stop2). В отличие
системами с более далеко стоящими сто- поставленный стоп-лосс не только не от стоп-лосса, который, как следует из
пами, но и по сравнению с исходной си- улучшает результаты торговли, но и зна- названия, ограничивает убытки, данный
стемой без стопов. Близкие стоп-лоссы чительно их ухудшает. Лучше торговать вид стопов срабатывает только при угро-
уменьшают средний и максимальный совсем без стоп-лосса или с очень далеко зе разорения. Обычно это означает де-
размеры убыточных сделок, однако за поставленным стоп-лоссом, чем с черес- сятки процентов просадки счета. Есть да-
счет резкого увеличения общего числа чур близкой его постановкой. же примеры успешного использования
убыточных сделок имеют гораздо худ- Отбросив 1–3%-е стоп-лоссы как такой торговой тактики. Так, легендар-
шие показатели средней месячной до- слишком близко поставленные, снова ный Ларри Вильямс увеличил свой счет

1
Подробное обоснование использования набора данных показателей содержится в статье «Как сравнивать торговые системы», опубликованной в
первом номере журнала «Современный трейдинг» за 2001 год.
2
Ruin>stop — стоп>крах.

24 —Ó‚ÂÏÂÌÌ˚È ÚÂȉËÌ„ n π 2 2001


Пðàêòèêà www.m-trading.ru
за год в 1000 раз (!), играя по определенным правилам в основ- ленный уровень. Поэтому, де-факто, стоп-лосс устанавлива-
ном внутри дня против тренда и не используя стоп-лоссов. ется на подступах к большим убыткам.
Справедливости ради следует отметить, что столь агрессивный До сих пор мы разбирали объективный стоп-лосс фиксиро-
стиль торговли сопровождается все-таки чрезмерно большими ванной величины. В формуле на языке Метастока эта фиксиро-
рисками — на следующий год он разорился. ванная величина задавалась значением opt1:
Заговорив о разных точках зрения на стоп-лосс, нельзя не
упомянуть и наиболее радикальную из них. Широко известный AvgPrice < Full.Price ∗ ((100 — opt1)/100).
писатель и трейдер Виктор Нидерхоффер писал:
«Я никогда не использую стопы. Комбинация различных выхо- Однако существует возможность (и в этом одна из прелес-
дов обеспечивает мне значительное преимущество…»1 тей написания стопов самостоятельно, вместо использования
Достаточно часто без стоп-лоссов торгуют начинающие встроенных в программы заготовок) заменить opt1 более
трейдеры, не понимающие, что убытки на рынке — это пла- сложной конструкцией.
та за возможность заниматься этим бизнесом. Однако для Понятно, что величина стоп-лосса зависит во многом от
профессионала такая точка зрения достаточно экстравагант- средней волатильности рынка. Стоп-лосс должен размещать-
на, и весь трейдерский мир с увлечением заключал пари на ся за границей того, что можно назвать обычным колебанием
срок, который удастся продержаться Нидерхофферу до разо- цен, и реагировать именно на настоящее движение против
рения. Справедливости ради следует указать, что Виктору позиции. Тестирование, подобно описанному выше, позво-
удалось продержаться на рынке дольше, чем предполагало ляет методом подбора значений привязать стоп-лосс к сред-
большинство, — все-таки он был талантливым трейдером, ней волатильности рынка за период тестирования. Однако
однако общий итог оказался неутешительным — потеря де- никто не может запретить нам и более тонкой настройки,
сятков миллионов долларов и полное разорение фонда, уп- когда стоп-лосс привязывается не к средней волатильности за
равляющим которого он был. весь период тестирования, а к значению волатильности за су-
Таким образом, наш выбор ограничивается значениями щественно более короткий период. Так можно осуществить
стоп-лоссов от 4 до 6 %. По большому счету они дают прак- переход к объективному адаптивному стоп-лоссу. Слово объ-
тически одинаковый результат, а те тонкие различия, что ективный означает, что величина стоп-лосса вычисляется на
есть между ними, сформированы расхождениями в одной- основании характеристик рынка, а адаптивный — что эта ве-
двух сделках, что, с нашей точки зрения, опять-таки недосто- личина может меняться в зависимости от изменения теку-
верно. Поэтому на этой стадии, после отсечения двух край- щих характеристик рынка.
ностей, выбор стоп-лосса становится скорее вопросом психо- Безусловно, такая адаптация стоп-лосса требует дополни-
логического комфорта. Мы выбираем более дальний тельного исследования рынка — и не обязательно именно во-
стоп-лосс, равный 6 %. Он встречается чуть реже, чем 4 и латильности. Можно предложить несколько вариантов реали-
5 %-е стоп-лоссы, однако средний и максимальный размеры зации адаптивного стоп-лосса.
убыточных сделок у них одинаковы, а максимальный дрода- Стоп-лосс, адаптивный по волатильности
ун даже меньше. Психологически легче получать стоп-лосс В качестве меры текущей волатильности рынка можно взять
чуть большего размера, но реже. Кроме того, рассматривая значение среднего торгового диапазона (Average True Range
потенциальную угрозу потери в будущем эффективности (ATR)), стандартное отклонение цен (Standart Deviation) или
стоп-лосса из-за изменения характера рынка, следует при- стандартную ошибку (Standart Error)2 за определенный период
знать, что наибольшую опасность представляет собой все-та- времени, умножать на некий коэффициент и вычитать полу-
ки чрезмерно близкое расположение стопов к цене захода. ченное значение от цены открытия позиции. На языке Мета-
С этой точки зрения 4 и 5%-е стоп-лоссы могут потерять стока эти варианты адаптивного стоп-лосса выглядят так:
свою эффективность вследствие изменения характера рынка
раньше, чем 6%-е стоп-лосс. AvgPrice < Full.Price — opt1 ∗ ATR(opt2)
Небольшой пассаж о структуре убыточных сделок. В начале или
данной статьи мы написали, что одной из целей стоп-лосса AvgPrice < Full.Price — opt1 ∗ stdev (close, opt2)
является ограничение максимального размера убытков. При или
этом может на первый взгляд показаться странным, что при AvgPrice < Full.Price — opt1 ∗ ste(close, opt2)
размере стоп-лосса в 6 % максимальный размер отфиксиро-
ванного убытка составляет более 11 %. Таким образом, может Возможны и иные варианты определения волатильности.
возникнуть впечатление, что стоп-лосс не выполняет своей Мы, например, предпочитаем стандартное отклонение за пери-
задачи и не предотвращает больших убытков. Это, естествен- од n1 логарифма соотношения текущей цены и цены n2 пери-
но, не так. Стоп-лосс не в состоянии жестко ограничить убыт- одов назад:
ки на уровне своей установки по причине возможных гэпов,
сразу проскакивающих, и порой значительно, через установ- Std(Log(Close/Ref(Close,8n2)),n1)

1
Victor Niederhoffer, «The Education of a Speculator», р. 376.
2
Стандартная девиация представляет из себя корень квадратный из суммы квадратов отклонений цены, деленных n от простой скользящей средней
цены n>периода. Если отвлечься от не всегда легко воспринимаемой формулы вычисления, то стандартная девиация — это то расстояние, на кото>
рое в среднем за n>период отклонялись цены в ту или иную сторону от простой скользящей средней, рассчитанной за n>период. Стандартная ошиб>
ка — это почти то же самое, только вместо скользящей средней используется апроксимация цен уравнением линейной регрессии. Иначе говоря, ес>
ли для рассчета стандартной девиации используется скользящая средняя, то для стандартной ошибки — прямая линия, наиболее точно описываю>
щая движение на данном участке цен.

π 2 2001 n —Ó‚ÂÏÂÌÌ˚È ÚÂȉËÌ„ 25


œÂ‚˚È ÌÂÁ‡‚ËÒËÏ˚È ÊÛÌ‡Î Ó ÚÂȉË̄ ̇ ÛÒÒÍÓÏ ˇÁ˚ÍÂ

По наблюдениям Чака Лебо (Chuck LeBeau)1, в реальной Индикатор уровней сопротивления:


практике можно обнаружить, что проблемы с адаптивным
по волатильности стопом начинают возникать тогда, когда Pds: = Input( «Periods»,2,25,3);
краткосрочная рыночная волатильность становится необыч- B: = Input(«Field: 1 = Close, 2 = Open, 3 = High, 4 = Low, 1, 4, 1);
но маленькой и близкие стопы могут быть выбиты случай- Z: = If(B=1, CLOSE, If(B=2, OPEN, If(B=3, HIGH, If(B=4, LOW, 0))));
ным движением. Для устранения этих ложных срабатыва- r1: = ValueWhen( 1, Ref( Z, 8pds) = HHV( Z, 2 ∗ pds+1)
ний стопов Лебо предложил рассчитывать как краткосроч- AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
ную рыночную волатильность (3–4 дня), так и долгосроч- r2: = ValueWhen( 1, Ref( Z, 8pds) = HHV( Z, 2 ∗ pds+1)
ную (15–20 дней) и устанавливать стопы с использованием AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
того значения волатильности, которое на данный момент r3: = ValueWhen( 1, Ref( Z, 8pds) = HHV( Z, 2 ∗ pds+1)
оказалось наибольшим. Это позволяет стопам двигаться до- AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
статочно быстро и в то же время предотвращает ложные сра- r4: = ValueWhen( 1, Ref( Z, 8pds) = HHV( Z, 2 ∗ pds+1)
батывания стопов после нескольких необычайно спокойных
дней. AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds)) ;
Стоп-лосс, адаптивный к уровням сопротивления и под- r5: = ValueWhen( 1, Ref( Z, 8pds) = HHV( Z, 2 ∗ pds+1)
держки. AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
Есть определенная логика в том, чтобы распологать стоп- r6: = ValueWhen( 1, Ref( Z, 8pds) = HHV( Z, 2 ∗ pds+1)
лоссы на пробитие важных уровней поддержки или сопро- AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
тивления, линий хорошо различимых графических паттер- R1; R2; R3; R4; R5; R6
нов — треугольников, каналов, линий тренда. В случае про-
Индикатор уровней поддержки:

pds: = Input(«Periods»,2,25,7);
B: = Input(«Field:1=Close,2=Open,3=High, 4=Low, 1,4,1);
Z:=If(B=1,CLOSE,If(B=2,OPEN,If(B=3,HIGH,If(B=4,LOW, 0))));
s1: = ValueWhen( 1, Ref( Z, 8pds) = LLV( Z, 2 ∗ pds + 1), Ref( Z, 8pds))
AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
s2: = ValueWhen( 2, Ref( Z, 8pds) = LLV( Z, 2 ∗ pds + 1), Ref( Z, 8pds))
AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
s3: = ValueWhen( 3, Ref( Z, 8pds) = LLV( Z, 2 ∗ pds + 1), Ref( Z, 8pds))
AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
s4: = ValueWhen( 4, Ref( Z, 8pds) = LLV( Z, 2 ∗ pds + 1), Ref( Z, 8pds))
AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
s5: = ValueWhen( 5, Ref( Z, 8pds) = LLV( Z, 2 ∗ pds + 1), Ref( Z, 8pds))
AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
s6: = ValueWhen( 6, Ref( Z, 8pds) = LLV( Z, 2 ∗ pds + 1), Ref( Z, 8pds))
AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1), Ref( Z, 8pds));
бития таких уровней дальнейшее движение цен против S1; S2; S3; S4; S5; S6
позиции является логическим обоснованием необходимости
закрытия. Это результат проведенной нами модификации опублико-
В то же время есть одна тонкость — не следует, как прави- ванных в 1998 году в майском номере TASC индикаторов Ме-
ло, располагать стоп-лоссы точно на хорошо видимых лини- ла Виднера (Mel Widner) для языка Метастока. При модифи-
ях — лучше несколько сдвигать их в ту или иную сторону. кации данных индикаторов мы избавились от функции
Достаточно часто на хорошо видимых уровнях располагается Prev(), которая работает в Метастоке ОЧЕНЬ медленно, доба-
значительное количество ордеров, и крупные игроки порой вили возможность изменения цен, для которых рассчитыва-
специально играют на пробитие таких уровней, провоцируя ется уровень (в первоначальном варианте была возможность
массовое закрытие позиций мелких игроков. Обычно графи- расчета уровней только для цен закрытия), и возможность из-
чески это проявляется картиной «прокола» линии поддерж- менения порядка уровней (в первоначальном варианте уров-
ки — цена быстро уходит вниз в результате выхода мелких ни рассчитывались только для 5-дневных экстремумов).
игроков из позиций и также быстро потом возвращается в Кроме того, мы несколько изменили алгоритм определения
предыдущий торговый диапазон в результате скупки круп- уровня. В первоначальном варианте формул в случае если два
ными игроками подешевевших в результате успешной игры дня подряд цены, например, закрытия были равны между со-
на понижение акций. На трейдерском слэнге это называется бой и образовывали локальный максимум, то образовывалось
«стряхивание с позиций». сразу два уровня с одинаковыми значениями. Нам показалось
Минусом такого стоп-лосса является трудность его форма- более логичным предположить, что, в такой ситуации мы все-
лизации на языках программ технического анализа, и, соот- таки имеем дело с одним и тем же уровнем, который держит
ветственно, сложности с его тестированием. В качестве час- цены два дня подряд. Мы ввели дополнительное условие:
тичного выхода можем предложить к использованию два ин-
дикатора, автоматически определяющих сразу несколько AND Ref( Z, 8pds) <> Ref( Z, 8pds — 1)
уровней поддержки и сопротивления.
1
http://traderclub.com.

26 —Ó‚ÂÏÂÌÌ˚È ÚÂȉËÌ„ n π 2 2001


Пðàêòèêà www.m-trading.ru
В нашем варианте индикаторов в та- нутого выше Лебо есть смысл в первые мы. Таким образом, он играет роль «по-
кой ситуации образуется только один дни после открытия позиции удалять следней линии обороны», которой при-
уровень, берущий свое начало от перво- стоп-лосс от точки открытия, с тем что- ходится вступать в действие достаточно
го бара с такой ценой. бы дать простор возможному движе- редко, но которую, несмотря на ред-
Результат применения индикатора нию цен, постепенно приближая стоп кость реализации, необходимо иметь в
уровней поддержки (необходимо вы- по мере прохождения определенного «составе команды».
брать dotted style отображения) к часо- времени. В заключение хочется подчеркнуть ряд
вым ценам РАО ЕЭС представлен на Наши возможности по адаптации положений, которые кажутся нам осо-
рисунке. стоп-лоссов ограничены только нашей бенно важными:
Изменяя периоды в индикаторе, мож- фантазией… 1. Стоп-лосс должен быть, его не может
но изменять важность уровня — чем вы- Вообще говоря, эффективность стоп- не быть.
ше значение периода, тем значение уров- лоссов во многом зависит от эффектив- 2. Стоп-лосс должен быть объективным,
ня выше, и наоборот. ности торговой системы в части ее вы- основанным на изучении особеннос-
Стоп-лосс канала1 ходов. Если такой стоп-лосс существен- тей рынка.
В качестве стоп-лосса можно исполь- но улучшает доходность торговой 3. При анализе результатов тестирова-
зовать минимальную или максималь- системы, то это, скорее всего, указывает ния стоп-лосса недостаточно оцени-
ную цену за определенный период. Та- на недостаточную разработанность вы- вать только изменения доходности
кой вариант называется стоп-лосс кана- ходов. В идеале же, при хорошо постро- системы. Необходимо проводить
ла. Он очень адаптивен к текущим енной торговой системе правильно по- комплексный анализ, включающий в
рыночным условиям, поскольку он ме- добранный стоп-лосс не должен оказы- себя показатели доходности и риска
няется с изменением тренда и вола- вать заметного влияния на показатели системы, а также частоту реализации
тильности. Стоп-лосс канала размеща- доходности и риска уже готовой систе- стоп-лосса.
ется на относительном удалении от цен
в периоды высокой волатильности и
сильного тренда и приближается к це-
нам в периоды низкой волатильности и
снижения силы тренда. В основе этого
стопа лежит очевидная логика — мы
знаем, что прорыв важных максимумов
и минимумов часто является сигналом
разворота тренда. Поэтому стоп-лосс,
размещеный на уровне максимумов
или минимумов, является обоснован-
ным с точки зрения технического ана-
лиза.
Для длинных позиций стоп-лосс
канала будет выглядеть так:

Close < LLV( Close, opt1)

Для коротких позиций так:

Close > HHV( Close, opt1),

где opt1 — длина канала.

У этого стопа есть свои недостатки.


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

1
Сhannel stop>loss.

π 2 2001 n —Ó‚ÂÏÂÌÌ˚È ÚÂȉËÌ„ 27