Герасько Игорь - JS SISTEM
Для лучшего понимания графика цены абсолютное большинство трейдеров пользуется индикаторами, которые, в свою очередь, представляют собой некоторое преобразование ценыы с последующим отображением полученных данных. Самым распространенным преобразованием ценыі является ее усреднение за определенный период, что трейдерыы называют средней скользящей линией. В результате большое число известных индикаторов в своих вычислениях так или иначе используют именно среднюю. Например, не менее известный осциллятор MACD является результатом вычитания значения средней одного периода из значения средней другого периода. Полосы Боллинджера (Bollinger Bands) тоже являются вариацией средних. И так можно привести еще много примеров. В результате выходит, что многие из существующих индикаторов по сути преобразовывают цену довольно одинаково и поэтому их можно отнести к однотипным индикаторам.
Большинство трейдеров справедливо считают, что использование в торговой стратегии однотипных индикаторов ни к чему хорошему не приводит. Ведь в таком случае исчезает эффект фильтрации ложных сигналов одного индикатора показаниями другого. Логически все это так и на первый взгляд сомнений не вызывает.
Тем не менее, находятся стратегии, которые пытаются опровергнуть сей факт. Один из таких советников создан Сергеем, скрывающимся под ником JS_Sergey. Его творение носит имя -.
Принятие торговых решений в JS_SISTEM происходит на основании показаний трех индикаторов: MA (средняя скользящая), OsMA (скользящая средняя осциллятора) и RVI (индекс относительной бодрости). Так вот, первые два индикатора выдают свое сходство самими названиями и по поводу их однотипности сомнений не возникает. Индикатор RVI изначально немного другого типа, но если внимательно исследовать его код, то увидим, что в качестве сигнальной линии индикатора используется обычная средняя скользящая, хотя в расчетах непосредственного вызова функции iMA нет.
Чем же привлек внимание советник, основанный на наборе средних скользящих? А вот чем - неплохой прибылью в сравнении с довольно малой просадкой (см. рис. 1)

Рис. 1. График изменения кривой баланса при тестировании на валютной паре EURUSD.
Тестирование проводилось на историческом промежутке в три с половиной года - с января 2006 по июнь 2009, таймфрейм Н1. Всего было совершено 229 сделок, более 70% из которых оказались прибыльными. Чистая прибыль составила
3703.66 доллара против 1273.84 максимальной просадки. А это все же фактор восстановления, близкий к трем! При всем при этом система не имеет больших серий убытков. Максимальная из них составила 3 сделки подряд, в то время как максимальная серия прибыльных сделок достигает 12 сделок. В итоге средняя продолжительность серий также выходит в пользу прибыльных в соотношении 4/1.
Но перейдем к сути стратегии и посмотрим, за счет чего достигнут такой результат, а также выясним, как скопление однотипных индикаторов помогает друг другу в торговле (см. рис. 2).

Рис. 2. Пример сигналов стратегии.
Непосредственно средних скользящих используется три: период 55 (красная), 89 (синяя) и 144 (зеленая). Для получения сигналов от средних требуется, чтобы они располагались в четкой последовательности. Для сигналов на покупку быстрая МА (55), должна быть выше средней МА (89), которая должна быть выше медленной МА (144). Для сигналов на продажу - зеркальное расположение: быстрая ниже средней, а средняя ниже медленной. К тому же, учитывается фактор расхождения средних, -они не должны быть очень далеко друг от друга. Фактор расхождения средних в советнике можно изменять, присвоив значению параметра советника Razk необходимое количество пунктов.
Наряду со средними скользящими линиями, в решении участвуют значения индикатора OsMA. Правда здесь все намного проще. Если значение индикатора положительное, то это подтверждение для покупки, если отрицательное, то это подтверждение для продажи.
Последней крепостью, которую нужно взять цене для совершения сделки, являются показания индикатора RVI (нижний индикатор на рисунке 2). Здесь используется классическая трактовка индикатора: если главная линия (зеленая) выше сигнальной (красная) - покупка, если ниже - продажа. При этом значение RVI не должно находиться в коридоре от -0.05 до +0.05 (показан бледно-серыми пунктирными горизонтальными линиями).
После открытия позиции производится отслеживание ее состояния. Это проявляется в подтяжке стопа за минимумом/максимумом некоторого количества баров назад. Количество баров выставляется в переменной Bars_n, а таймфрейм, с которого берутся бары, указывается в переменной Tmfrm в минутах. Стоп-приказ выставляется
на расстоянии в Indent пунктов от найденного экстремума.
Вот и все описание стратегии. Теперь пора подумать, что в эксперте можно улучшить или просто усовершенствовать? Тут нужно заметить, что большинство
значений используемых индикаторов в советнике рассчитываются для нулевого (текущего, еще несформированного) бара. В этом случае выходит, что прибыль/убыток в пределах этого бара является результатом моделирования тиков тестером стратегий. При всем уважении к технологии
моделирования тиков в МТ4, не стоит надеяться на полную достоверность получаемого тикового потока. К тому же, если у различных ДЦ отличаются
экстремумы свечей, то уж о соответствии тиков и говорить не приходится.
Поэтому первое изменение, которое будет внесено в код советника, это смещение позиции сбора данных на один бар вглубь истории. Это даст нам уверенность в том, что сигнал был полностью сформирован и точно также будет выглядеть на истории впоследствии. Возможно, это проявится в уменьшении прибыльности стратегии.
Измененный советник
переименовываем в. Следующим шагом в изменениях кода эксперта будет ускорение его работы в тестере стратегий. До этого на каждом тике производилось выполнение всей программы советника, так как требовалось производить перерасчеты с каждым новым тиком (использовалась нулевая свеча). Теперь же такая необходимость отпадает. Перерасчет необходим только один раз на одну свечу, ведь с открытием текущей (нулевой) свечи первая свеча останется неизменной навсегда.
Добавляем механизм определения нового бара и производим некоторые косметические изменения в коде для улучшения его визуального восприятия. Вот и все. Можно переходить к развернутому тестированию советника. Во всех тестах будет использован одинаковый исторический период 01.01.2006 - 27.06.2009. Таймфрейм выбирается Н1. Все внешние параметры советника устанавливаются по умолчанию. Только в тесте пары GBPUSD применяем значение Razk = 390, как предлагает автор эксперта. Результаты приведены на рисунках 3-7.
Баланс / Средства / Все тики (наиболее точный метод на основе всех наименьших доступных таимфреимов для генерации каждого тика) / 90.00%
Даже визуально заметно, что в сравнении с оригиналом результаты этого тестирования на паре EURUSD не то, что не пострадали, а даже немного улучшились. В первую очередь, за счет уменьшения количества сделок - с 229 до 222. Что это за 7 сделок? Это сделки, которые на истории мы не увидим. В оригинальной версии они появились из-за кратковременного срабатывания условий входа на формирующейся свече, которые к концу формирования свечи были отменены. А сделка осталась и в результате дала убыток.
Рассмотрим результаты тестирования в плоскости чисел. Чистая прибыль получилась 4079.14 (в оригинале 3703.66) против максимальной просадки 1101.69 (в оригинале 1273.84) долларов. Таким образом, фактор восстановления стратегии возрос почти до четырех - 3.7. Остальные статистические параметры остались на уровне оригинальной версии. Соотношение прибыльных и убыточных сделок 3/1 (75% прибыльных, 25% убыточных), соотношение средних серий прибыльных и убыточных -4/1. Выходит, что внесенные изменения пошли только на пользу стратегии, уменьшив просадку и увеличив прибыль.

Рис. 4. График изменения кривой баланса при тестировании на валютной паре USDCHF.

Рис. 5. График изменения кривой баланса при тестировании на валютной паре GBPUSD.
Резкие выбросы вверх и падения графика баланса однозначно характеризуют результаты на валютной паре USDCHF как ненадежные. Подтверждается это сухим языком цифр. Чистая прибыль -1413.28 и
Визуально график баланса по GBPUSD смотрится лучше, чем по USDCHF, но наличие резких колебаний также свидетельствует не в пользу стратегии. Чистая прибыль есть, но довольно мала -233.34 с огромной просадкой 2722.66 долларов. Фактор восстановления в этом случае даже считать не хочется. О каком «восстановлении» здесь может идти речь?
просадка 2976.50 долларов. Да и процент прибыльных сделок 30.2% подтверждает абсолютную бесперспективность применения стратегии на этой валютной паре.
Но несмотря на это, имеем 71.66% прибыльных сделок. Вроде и неплохо, но причина неудач здесь кроется в значениях средней прибыльной и средней убыточной сделок. Они соответственно равны 92.60 и -230.80. Да, прибыльные сделки немного перебивают убыток своим количеством (2.53*92.6 > 230.80), но очень
незначительно.

Рис. 6. График изменения кривой баланса при тестировании на валютной паре USDJPY.
На графике баланса по паре USDJPY не так много хаотичных движений, но за то есть одно монотонное снижение - первая половина графика, которая и дала максимальную просадку. Она в результате получилась 2232.42 доллара, а прибыли мы так и не увидели -470.67. Для любителей статистики стоит отметить два интересных факта: соотношение прибыльных и
убыточных сделок - 34.03% против 65.97%, а средняя прибыльная сделка при этом больше средней убыточной - 217.35 против -117.06 соответственно. В результате, соотношение серий прибыльных и убыточных сделок составляет 1/3.
Заключение
Результаты исследования красноречиво свидетельствуют о том, что рассмотренная стратегия наиболее удачно описывает закономерности движения только одной валютной пары - EURUSD, довольно плохо описывает закономерности GBPUSD и совсем не может учесть характер валютных пар USDCHF и USDJPY. Тем не менее, прибыль даже на одной валютной паре остается прибылью. Поэтому стоит подойти и взять ее, какой бы малой она не казалась.
Файлы для скачивания:
•- оригинальный эксперт;
•- измененный эксперт;
•- результаты тестирования экспертов за три последних года.
Содержание раздела