MQL4 - automated forex trading   /  

Статьи

Cтатьи  Торговые системы  Синтетические бары – новое слово в отображении ценовой графической информации Авторизуйтесь или зарегистрируйтесь , чтобы добавить новую статью



Автоматический трейдинг в новом MetaTrader 5
и торгуй мобильно!
Почитай статьи про MQL5
Готовься к Чемпионату -

Эта статья о возможностях
MetaTrader 4

и торгуй мобильно!

Синтетические бары – новое слово в отображении ценовой графической информации [ en ]


Введение

Подавляющее большинство активно торгующих трейдеров используют для целей технического анализа традиционные баровые или свечные графики. Как известно, они различаются между собой временным масштабом, по которому они собственно и строятся. Иными словами, один традиционный временной бар или свеча отражает диапазон колебаний цены в период определенного временного промежутка. Общими для них является четыре базовые цены: open, high, low, close.

Толчком к изысканиям в данном направлении стал тот факт, что традиционные баровые графики, при всей их популярности, обладают одним весьма существенным недостатком. Этот недостаток очень явно проявляется при использовании таких графиков в торговых системах, в которых формирование торгового сигнала происходит по факту завершения последнего бара.


Синтетические бары

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

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


Рис. 1. Пример пересечения скользящих средних на графике временных баров

Более ранними решениями данной проблемы была разработка и внедрение таких методов отображения ценовой информации как графики ренко, каги или крестики-нолики.

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

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

Исходя из этого, была поставлена задача разработки такого вида отображения ценовой информации, который сочетал бы в себе достоинства графиков с фиксированной высотой бокса (ренко, каги или ХО) и традиционного барового графика. Он получил название синтетический бар (synthetic bar).

За основной принцип формирования синтетического бара был взят не временной фактор, как в традиционных барах, а фактор движения цены. То есть, один синтетический бар может висеть на графике до тех пор, пока цена не придет в движение (хоть несколько часов) и в тоже время при сильном движении мы можем получить их гораздо больше одного всего за один минутный промежуток.

Другими словами, данный вид отображения не имеет никакой временной привязки, а значит, временная шкала на синтетическом графике не играет никакой роли. Ко всему прочему, полученные синтетические бары по внешнему виду совершенно не отличаются от традиционных временных баров, и их можно использовать совместно с любыми индикаторами программы MetaTrader 4.

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



Рис. 2. Пример пересечения скользящих средних на графике синтетических баров


Каким образом производится построение синтетических баров? Для начала задается основной и единственный параметр - это высота бара в пунктах. Далее специально разработанный индикатор начинает запоминать и анализировать все приходящие тики.


Алгоритм построения синтетических баров

Рассмотрим процесс построения синтетических баров. Например, начинаем с первого бара. Первый тик записываем как цена открытия OPEN. Следующий тик будет цена HIGH или LOW, в зависимости от того, больше или меньше пришедшая цена уровня OPEN.

Далее происходит обновление цен HIGH или LOW при условии, что они перебивают максимальные или минимальные значения предыдущих HIGH или LOW. При этом если очередная цена делает разность между HIGH и LOW больше заданного параметра высоты бара, то бар закрывается и начинает формироваться новый бар. Характерной особенностью такого бара будет то, что цена CLOSE у него всегда будет равна либо HIGH, либо LOW.

Данный индикатор разрабатывался на базе скрипта Period Converter, входящего в стандартную поставку терминала MetaTrader 4. Код индикатора приводится во вложенном файле.


Использование индикатора

Использование данного индикатора несколько сложнее, чем работа с обычными индикаторами. Для начала вам нужно поместить индикатор в папку, где вы размещаете свои пользовательские индикаторы. Затем нужно открыть минутный график выбранной вами валютной пары и прикрепить к нему наш индикатор "synbar.mq4".



Рис. 3. Подготовка данных

После того как индикатор обработает историю минутных баров, он сформирует новый график, который будет иметь временную размерность М9. Открыть его можно через меню "Файл – Открыть автономно" главного меню, затем выбрать "Символ инструмента", М9 – "Открыть".


Рис. 4. Открытие графика с синтетическими барами

Далее с этим графиком вы можете работать как с обычным, с одним условием, что параллельно на рабочем столе будут открыты оба графика М1 и М9.


Рис. 5. График EURUSD, построенный на синтетических барах

Вы сможете прикреплять к нему всевозможные индикаторы, рисовать на нем линии, размещать графические объекты и пр. Единственным ограничением будет то, что на таком графике не будут работать эксперты.

Это ограничение удалось обойти, написав скрипт с функциями эксперта. Скрипты, как ни странно, на таком графике отрабатываются исправно. К сожалению, в тематику данной статьи не входит тема написания скриптов для графика М9, поэтому я ее касаться пока не буду.

Чтобы обеспечить корректную работу индикатора, нужно установить разрешение на использование DLL.


Рис. 6. Настройки советника


Параметров в индикаторе всего два. Первый, самый важный и основной, это высота бара.

  • Параметр ExtBarHeight определяется в пунктах (в пунктах, которые приняты на торговом сервере). Например, если пункт "четырехзначный", то пишете в параметр обычное целое число пунктов, которое вы хотите поставить. Если пункт "пятизначный", то целое число пунктов умножаете на 10.
  • Параметр SplitOnLine является вспомогательным и влияет только на то, как отображать график. Если вы хотите получить статический график, то данный параметр должен быть равен FALSE. Если вы хотите иметь график с динамичным формированием баров, то ставите TRUE.

Как вы понимаете, вид графика зависит от высоты бара, заданного параметром ExtBarHeight. Это также очень сильно будет влиять на результативность сигналов вашей торговой системы. По сути, высота бара - это дополнительный параметр и в ряде случаев он может быть единственным.


Рис. 7. График котировок EURUSD, дневные бары



Рис. 8. График котировок EURUSD, синтетические бары


Заключение

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

  • Так как торговый сигнал может быть сформирован в любой момент, то необходимо обеспечивать постоянный мониторинг таких графиков.

Из недостатков можно выделить следующий: если рынок "взрывается" гэпом, величина которого намного превышает параметр высоты синтетического бара, то возможна отрисовка графика постфактум. Это означает, что:

  • Даже если на графики при таком стечении обстоятельств и будут весьма привлекательные торговые сигналы, отработать их будет невозможно, так как ни один брокер не дает возможности торговать внутри гэпа.
Совет - не торгуйте в моменты, когда рынок формирует гэпы.

Прикрепленные файлы:
synbar.mq4 (5.8 Kb)
Создана: 07.09.2011  Автор: Rustem Bigeev
Предупреждение: все права на данные материалы принадлежат MetaQuotes Software Corp. Полная или частичная перепечатка запрещена.
Механическая торговая система
Механическая торговая система "Треугольник Чувашова"

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

Эконометрика: прогноз EURUSD на один шаг вперед
Эконометрика: прогноз EURUSD на один шаг вперед

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

50 комментариев: 1 2 3 4 5   Авторизуйтесь или зарегистрируйтесь

Можно немного переделать, добавив переменную, которая отвечает на сколько выше (ниже) должен закрыться бар по отношению к последней сформировавшийся свече!

Это поможет избежать частично флетового скопления!

10.05.2012 09:52 wertor
Добрый день! Подскажите пожалуйста, есть ли возможность открыть в одном терминале сразу два графика, например 10 тиков и 20?
26.04.2012 10:00 REXX

Здравствуйте народ!!!

Eager, я смотрю ты разбираешся.... у меня проблема с построением этих графиков синтетики. Бывает так что новый бар начинает рисоваться не последним в окне терминала а прыгает на предпоследнее место, а предпоследний уже сформированный бар становиться последним... Глюк какойто!!! высоту бара использую 9 пипсов. можете это исправить.????? а забыл сказать это происходит на synbar4ЕА.mq4, а вот сначало я использовал synbar.mq4 там после добавления int deinit()........ такое перестало происходить. но по закону подлости на synbar.mq4 не работают советники ......ПОМОГИТЕ!!!!! Можете сделать пож. чтоб или на synbar.mq4 мработали советники или чтоб на synbar4ЕА.mq4 бары не прыгали .......ПЛЛИИИЗЗЗЗ!!!!! У меня вся система построена на этих барах.......

Проверьте,чтобы не было одновременно выставлено в одном окне более одного индикатора synbar или synbar4EA. Если в этом плане всё нормально,то имейте в виду,что 9 пипсов на 5-ти знаке - это мизерная величина и тогда на каждом тике будет появляться новый бар. А вообще надо быть осторожным с экспертами на синтетических барах. Если,например,в экспе используется код для проверки образования нового бара на основе Time,то это не будет работать на синтетических барах,т.к. там ко времени нет привязки. Т.е. я хочу подчеркнуть,что тупо ставить обычного экспа на синтетические бары нельзя - нужна корректировка кода.
22.04.2012 20:54 Eager
ussurdim:
Eager:
Сейчас только заметил,что почему-то изменились имена файлов,необходимых для работы экспертов на автономных графиках. А ведь раньше всё было нормально (смотри мой комментарий ниже). Например, файл должен называться WinUser32.mqh, но никак не WinUser32_2.mqh, а иначе synbar4EA.mq4 не будет компилироваться. Поэтому заново выкладываю нужные файлы одним ZIPom.


  Извините чето всё синим написалось в прошлом посте




20.04.2012 21:34 ussurdim
Eager:
Сейчас только заметил,что почему-то изменились имена файлов,необходимых для работы экспертов на автономных графиках. А ведь раньше всё было нормально (смотри мой комментарий ниже). Например, файл должен называться WinUser32.mqh, но никак не WinUser32_2.mqh, а иначе synbar4EA.mq4 не будет компилироваться. Поэтому заново выкладываю нужные файлы одним ZIPom.


Здравствуйте народ!!!

 Eager, я смотрю ты разбираешся.... у меня проблема с построением этих графиков синтетики. Бывает так что новый бар начинает рисоваться не последним в окне терминала а прыгает на предпоследнее место, а предпоследний уже сформированный бар становиться последним... Глюк какойто!!! высоту бара использую 9 пипсов. можете это исправить.????? а забыл сказать это происходит на synbar4ЕА.mq4, а вот сначало я использовал synbar.mq4 там после добавления int deinit()........ такое перестало происходить. но по закону подлости на synbar.mq4 не работают советники ......ПОМОГИТЕ!!!!! Можете сделать пож. чтоб или на synbar.mq4 мработали советники или чтоб на synbar4ЕА.mq4 бары не прыгали .......ПЛЛИИИЗЗЗЗ!!!!! У меня вся система построена на этих барах.......

20.04.2012 21:34 ussurdim
Благодарю! Очень хорошая работа!
06.03.2012 20:25 greenpatron
Люди хелп!!!
Автор пока не отвечает, но может вы поможете с ситуёвиной.
Проблемка проявляется в гэпах (а именно если есть ценовой разрыв между close и open на основном фрейме).
Я не очень в коде разбираюсь, но думаю надо сделать в коде проверку на предмет разрыва цены.
Ваши мнения?
Если кто сможет это реализовать, буду признателен.
Спасибо!

p.s. скрин приложен


24.02.2012 07:28 InVest0r
Сейчас только заметил,что почему-то изменились имена файлов,необходимых для работы экспертов на автономных графиках. А ведь раньше всё было нормально (смотри мой комментарий ниже). Например, файл должен называться WinUser32.mqh, но никак не WinUser32_2.mqh, а иначе synbar4EA.mq4 не будет компилироваться. Поэтому заново выкладываю нужные файлы одним ZIPom.
Прикрепленные файлы:
  OfflineEA.zip (5.85 KB)
26.12.2011 20:32 Eager
asc9:
а можно как нибудь проводить тестирование советников на этой истории(М9)?

Читайте ниже комментарий dimeona.Там всё пошагово описано. Однако,хотя на первый взгляд всё работает,но при более внимательном вглядывании в визуальный результат,обнаруживаются какие-то непонятки,которые мне никак не удалось избежать. Поэтому я пока забросил тестирование на автономных графиках из-за грубых расхождений с алгоритмом открытия позиций.
26.12.2011 20:00 Eager
а можно как нибудь проводить тестирование советников на этой истории(М9)?
25.12.2011 09:46 asc9
50 комментариев: 1 2 3 4 5