Forex Форум MT5 | Форум трейдеров рынка Форекс

Range бары - бесшумная работа

Для начала небольшой отчет о работе советника за апрель месяц. Напомню, что своего советника я запустил для тестирования на "реальном" счете с марта месяца 2010 года. Результаты работы за прошлый месяц я уже выкладывал в блоге.
В апреле было решено полностью возложить ответственность за результаты торгов на программу. Советник был предварительно переоптимизирован на участке истории январь - март текущего года. Оптимизировались переменные функции локирования ордеров и уровень "стоп лосс" т.к. он связан с этой функцией.
На сегодняшний день я уже выключил советника т.к. в среду были закрыты все рыночные ордера. Поэтому данные графиков которые будут приведены ниже, отражают реальное состояние счета (нет скрытых просевших ордеров в рынке). К сожалению ДЦ ограничил объем доступной истории в МТ4 до двух месяцев. Поэтому графики пришлось строить средствами доступными в "личном кабинете" на сайте ДЦ.

вот результат работы советника за апрель 2010 года.

повторюсь, что здесь я практически не вмешивался в работу советника.

это результат за два месяца 2010 года.


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

А теперь собственно тема Range Bar Chart

В 1995 году бразильский трейдер и брокер Висент М. Николелис мл. разработал фундаментально новую систему изображения на графике ценовых баров. Из-за нестабильности рынков, с которыми он работал, он убедился, что ему необходимо найти способ понять их непредсказуемую сущность, включая длительное боковое движение или консолидированные действия. Он решил, что исключение временного фактора из уравнения и концентрация только на цене будет решением его проблем. Поэтому Висент разработал ценовые бары, которые полностью игнорируют элемент времени и учитывают только движение цены. Эти ценовые бары стали известны как рендж бары. Каждые рендж бар имеет одинаковый прирост цены и каждый бар закрывается в каждом высшем или низшем значении цены, независимо от того, где он открылся.
Трейдерам больше не нужно полагаться на время, и им больше не нужны часы на графиках. Рендж бары не обусловлены временем. Может понадобиться час для формирования рендж бара, либо 10 секунд, в течение которых произойдет прирост цены.
Range Bar Chart – вид тикового графика, который создает новые бары на основе заранее заданных ценовых колебаний. Эти колебания устанавливаются пользователем для вычисления разницы между высшей и низшей ценой для каждого бара. Бар будет продолжать строиться, пока разница между его высшей и низшей ценой остается меньше или равной разнице, установленной пользователем. Как только трейд выходит за пределы этой разницы, формируется новый бар и вычисление устанавливается заново и продолжается. Формирование бара не ограничивается временным диапазоном, период времени, в течение которого будет строиться каждый из баров, будет различным для каждого бара.
Этот вид графика сроится на основе тиковых данных, поэтому любое укрупнение источника для построения Range-баров, кроме тиков, вносит искажения в их построение.
Над Range-барами можно проводить такой же анализ и строить МТС, в том числе торговых роботов, как и для графиков фиксированного временного масштаба.
Некоторые торговые платформы уже имеют в своем арсенале функцию Range-баров, но зачастую это платные платформы, а нас интересует самый демократичный МТ4.
Вот как это выглядит у меня на компьютере.


Range-бары строятся следующим образом: как только размах колебаний цен (High-Low) внутри текущего бара достигнет заданного порогового уровня, с приходом нового тика выше High или ниже Low сразу начнет строиться новый бар. В результате все бары будут иметь примерно одинаковый размах колебаний High-Low. Но при этом период времени, в течение которого будет строиться каждый из баров, будет различным для каждого бара.
Данный эффект позволяет использовать эту особенность при построении МТС. Теперь нам не обязательно ждать закрытия бара 15-минутки, чтобы получить сигнал на покупку или продажу. Ведь на движении выстроится цепочка из Range-баров, по закрытии каждого из которых МТС сможет быстро выставить ордер.

Поскольку на сервере не хранятся тиковые данные, первоначально Range-бары будут смоделированы на основе минуток. Существует несколько вариантов написания программы для построения Range-баров в МТ4 - можно написать программу в виде "индикатора", "советника" или "скрипта". Я использовал последний вариант. Точнее остановился на последнем, после того как сравнил работу "индикатора" и "скрипта".

Проблемма была в следующем.
Если при поступлении новой котировки выполнялась функция start(), запущенная на предыдущей котировке, то пришедшая котировка будет проигнорирована "индикатором" ("експертом"). Все пришедшие во время выполнения программы новые котировки программой игнорируются до тех пор, пока не завершится очередное выполнение функции start(). После этого функция start() будет запущена только после прихода очередной новой котировки.

А вот работу "скрипта" для нашей задачи организовую таким образом чтобы принудительно обновлять информацию об окружении, тоесть теперь работа скрипта не зависит от приходящих тиков. Скрипт работает в собственном потоке. Но это оказывает дополнительную нагрузку на компьютер, хотя при нынешних мощностях компов (даже домашних) думаю это не критично...

Вот может получиться примерно такое расхождение в построении свечей, например на пике у "индикатора" 1,3687 и после этого ничего, точнее пропуск тиков, а вот "скрипт" показал движение цены до 1,3691. На временном графике нашел эту точку - действительно цена достигла 1,3691....

Гораздо чаще пропуски в один-два тика, это не много но если по таким свечам строить индикаторы - получатся отличия.
Внизу я запустил три индикатора CCI можете сами сравнить (светлые прямоугольники - это я отметил некоторые расхождения).


Длинная свенча на графиках это из-за того, что не включена опция AltRange которая корректно отрабатывает "гэпы", если её включить, то таких "тянучек" на графике не будет.



Мы еще на плаву...


Наконец-то появилась возможность отписаться про работу советника. Практически все время был занят ковырянием в гараже, готовил машину к сезону. 

Первым делом представлю на обозрение отчет с реала Plazma. Человек исползует первую версию советника и даже настройки не менял. Правда на мой взгляд он очень рискует используя крупные объемы ордеров. Кстати советника он запускает сразу на двух парах, класически на Евро и еще на Швейцарце.
















А это уже мои результаты. Резкое падение это исключительно моя заслуга, решил, что я самый умный, а потом нервишки зашалили вот и получил удар. Потом в растройстве ушел на неделю в гараж, а советник уже сам вытягивал депозит. У меня работает "десятая" версия с оптимизированными настройками и работаю исключительно на ЕвроДолларе.




13.04.2010 года
Вот, появилось еще время и решил добавить сюда информации.
Пока работает советник и появляется свободное время (если не копаюсь в гараже с машиной) иногда нахожу интересные статьи в интернете.
Вот последние мои находки
http://articles.mql4.com/ru/336
http://gelium.net/forex-menu/trading/343-create-trading-system
в принципе статьи не новые, а первую я уже давно читал просто сейчас освежил память.
Не буду сейчас устраивать тут обсуждение темы оптимизации советников, просто скажу, что решил применить тактику "три к одному". А именно, провожу оптимизацию советника на участке в три раза большем, чем тот на котором планирую работу.

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

extern int SL = 320;
extern int TP = 15;
extern double lots = 0.03;

extern bool lokk_Pos = true;
extern int lokk_zone = 210;
extern int lokk_level = 170;
extern int enlarge_lot = 8;

буду эксперементировать с такими настройками в апреле.

И еще, много встречал на форумах жалоб по поводу того, что ДЦ правят котировки и вмешиваются в прцес подачи сигналов и т.п. Вот и решил использовать действия ДЦ для своей пользы.
Побыстрому набросал небольшую программку которая получает информацию о некоторых действиях ДЦ, естественно эта программа работает только в реальном времени т.к. история действий ДЦ нигде не сохраняется. В принципе программка должна сигнализировать о предстоящем "движении" цены, направление движения она НЕ указыват.
Вот несколько дней фиксировал получаемые сигналы, нанес вручную на график моменты возникновения сигналов.
Если у кого возникнут идеи как интерпретировать эти сигналы, чтобы определяться с направлением цены, тогда можно и советник написать рабочий.


серый прямоугольник это зона где было много сигналлов поэтому метки ставить было не удобно.

16.04.2010 года
Сильно переживал из-за "гепа" в начале недели. Но кажется советник выстоял, на текущий момент в работе два рыночных ордера (на покупку) общая просадка по ним -70,06 общая прибыль составляет 612,55.

 






















рекомендовать блог друзьям и знакомым