Виктор Лиховидов - Торговые системы на основе ценовых диапазонов 2
В предыдущем номере «ВС» [1] анализировались торговые системы на основе ценовых диапазонов. Ниже приводятся тексты 13 конкретных систем (в формате Indicator Builder пакета MetaStock), упоминавшихся в статье. Однако, составляя различные сочетания правил открытия и закрытия позиций и добавляя к ним варианты правил управления капиталом, из этих конструкций можно собрать очень много новых систем, применимых на разнообразных рынках в различных временных интервалах.

Конкретные торговые системы на основе ценовых диапазонов в формате Indicator Builder пакета MetaStock:
Enveljbreak
Stop&Revers система прорыва конверта
Enter Long
Cross(C,(1+opt1)*Mov(C, opt2, S))
Exit Long
Cross((1-opt1)*Mov(C, opt2, S), C)
Enter Short
Cross((1-opt1)*Mov(C, opt2, S), C)
Exit Short
Cross(C,(1+opt1)*Mov(C, opt2, S))
Envelj antitrend
Антитрендовая Stop&Revers система возврата в конверт
Enter Long
Cross((1-opt1)*Mov(C, opt2, S), C)
Exit Long
Cross(C,(1+opt1)*Mov(C, opt2, S))
Enter Short
Cross(C,(1+opt1)*Mov(C, opt2, S))
Exit Short
Cross((1-opt1)*Mov(C, opt2, S), C)
ExtraOpt
Extraordinary opportunities system. Открытие позиций на выходе МА из конверта.
Enter Long
Cross(Mov(C,opt1,S), (1+opt3) * *Mov(C,opt2,S)) AND Mov(C, opt1, S)>Ref(Mov(C, opt1, S),-1)
Enter Short
Cross((1-opt3)*Mov(C,opt2,S), Mov(C,opt1,S)) AND
Mov (C,opt1,S) < Ref (Mov (C, opt1,S),-1)
Комментарий: добавлено условие, чтобы МА в момент пересечения границы конверта была направлена в сторону пересечения (росла при выходе выше верхней линии и убывала при выходе ниже нижней линии).
BolBandjreversal
Антитрендовая система; открытие позиций при возврате внутрь Bollinger Band; позиция закрывается при пересечении противоположной границы канала
Enter Long
Cross(C, BBandBot(C, opt1, S, opt2))
Exit Long
Cross(C, BBandTop(C, opt1, S, opt3))
Enter Short
Cross(BBandTop(C, opt1, S, opt2), C)
Exit Short
Cross(BBandBot(C, opt1, S, opt3), C)
BolBand&RSI
Антитрендовая система; позиции открываются, если Bollinger Bands и RSI одновременно показывают состояние перекупленности/перепроданности

ChanBreak&PullBack
Channel breakout with pull back. Открытие при прорыве диапазо-
Enter Long
Cross(BBandBot(C, optl, S, opt2), C) AND RSI(opt3) < opt5
Exit Long
Cross(C, BBandTop(C, opt1, S, opt2)) AND RSI(opt3) > opt4
Enter Short
Cross(C, BBandTop(C, opt1, S, opt2)) AND RSI(opt3) > opt4
Exit Short
Cross(BBandBot(C, opt1, S, opt2), C) AND RSI(opt3) < opt5
Комментарий: возможные варианты этих систем - для закрытия используется линия с другим параметром усреднения, чем для открытия, или с другим параметром Deviations.
Keltner Channel
Enter Long
Cross(C, Mov((C+H+L)/3, optl, S) + Mov(H-L, optl, S))
Exit Long
C < Mov((C+H + L)/3, optl, S)
Enter Short
Cross(Mov((C+H+L)/3, optl, S) -Mov(H-L, optl, S), C)
Exit Short
C> Mov((C+H + L)/3, optl, S)
STARC Band Enter Long
Cross(C, Mov(C,optl, S) + opt2* ATR(opt3))
Exit Long
C < Mov(C, optl, S)
Enter Short
Cross(Mov(C, optl, S) - opt2* *ATR(opt3), C)
Exit Short
C > Mov(C, optl, S)
Parabolic&MA Enter Long
Ref(C, -1) < Ref(SAR(opt l, opt2), -1) AND C>SAR(opt1, opt2)
AND C > Mov(C, opt3,S)
Enter Short
Ref(C, -1) > Ref(SAR(opt 1, opt2), -1) AND C<SAR(opt1, opt2)
AND C < Mov(C, opt3,S)
VolatilitySyst_ATR Enter Long
Cross(C,Ref(C+opt2*ATR(opt1), -1))
Enter Short
Cross(Ref(C - opt2 * ATR(optl), -1), C)
ChannelReturning
Stop&Revers система возврата в канал
Enter Long
Cross(LLV(Ref(LOW, -1), optl), C)
Exit Long
Cross(C, HHV(Ref (HIGH, -1),
optl))
Enter Short
Cross(C, HHV(Ref (HIGH, -1),
optl))
Exit Short
Cross(LLV(Ref(LOW, -1), optl), C)
ChannellBreakout
Stop&Revers система прорыва канала
Enter Long
Cross(C, HHV(Ref (HIGH, -1), optl))
Exit Long
Cross(LLV(Ref(LOW, -1) , optl), C)
Enter Short
Cross(LLV(Ref(LOW, -1) , optl), C)
Exit Short
Cross(C, HHV(Ref (HIGH, -1), optl))
на с последующим откатом; optl -параметр окна просмотра границ канала, opt2 - параметр продолжительности ожидания отката, opt3 - параметр окна просмотра канала отката
Enter Long
BarsSince(Cross(C, HHV (Ref (HIGH, -1), optl))) < opt2 AND BarsSince (Cross(C, HHV(Ref(HIGH, -1), optl))) >0 AND L < LLV(Ref (LOW, -1), opt3) AND L > LLV(Ref (LOW, -1) , optl)
Exit Long
C < LLV(Ref(LOW, -1), optl)
Enter Short
BarsSince(Cross(LLV(Ref(LOW, -1), optl), C)) < opt2 AND
BarsSince(Cross(LLV(Ref(LOW, -1), optl), C)) > 0 AND H > HHV(Ref (HIGH, -1), opt3) AND H < HHV(Ref(HIGH, -1), optl)
Exit Short
C > HHV(Ref(HIGH, -1), optl)
Комментарий: исключается открытие на свече, которая пробила границу канала. Если за период ожидания отката цена пересекла противоположную границу канала, то позиция не открывается. Открытая позиция ликвидируется, если цена пересекла противоположную границу канала.
LinRegr_extr
Противотрендовая система с границами канала в виде линейного прогноза экстремумов; открытие на откате от границы канала
Enter Long
LOW > TSF(LOW, optl) AND Ref(LOW, -1) > TSF(LOW, optl)
AND Ref(LOW, -2) > TSF(LOW, optl)
Enter Short
HIGH < TSF(HIGH, optl) AND Ref(HIGH, -1) < TSF(HIGH, optl)
AND Ref(HIGH, -2) < TSF(HIGH,
Виктор Лиховидов
Литература:
1. Лиховидов В. Торговые системы на основе ценовых диапазонов // Валютный спекулянт, 2002, № 9, с. 52-57.
Содержание раздела