07/11/2024

Elder-Ray Биржевой рентген (Bulls Power и Bears Power)

 

Elder-Ray Биржевой рентген (Bulls Power и Bears Power)

Торговую систему «Биржевой рентген» (Elder-Ray) описал Александр Элдер в своей книге «Как играть и выигрывать на бирже» (Trading for a living). Она основывается на осцилляторах Bulls Power (индекс силы быков), Bears Power (индекс силы медведей) и трендовом индикаторе Moving Average (EMA — экспоненциальное усреднение).

Торговая система одновременно и простая и сложная:

  • простая — если читать и воспринимать буквально: сигнал к покупке — тенденция идёт вверх (EMA) и Bears Power (индекс силы медведей) ниже нуля, но повышается;
  • сложная — если читать внимательнее, а также посмотреть на график, на котором запущены и EMA, и Bears Power: оказывается, не всё так просто, и таких условий очень мало.

В этой статье мы пройдем все этапы от простого к сложному и проверим две разновидности торговой системы:

  1. все индикаторы на одном графике (а значит, на одном таймфрейме);
  2. в сочетании с системой «Тройной выбор».

Советники в статье ориентированы на работу только с неттинговыми счетами.

Основные постулаты

Для понимания сущности торговой системы необходимо четко усвоить, что означает каждый элемент Биржевого рентгена: цена, EMA, максимумы и минимумы индикаторов Bulls Power и Bears Power на каждом баре, сила быков и сила медведей.

  • Цена — сиюминутное соглашение о стоимости актива в данный момент. Все покупки совершаются в расчете на подъем цены, а продажи — в расчете на падение. Только когда покупатель согласен купить, а продавец — продать, совершается сделка.
  • EMA — экспоненциальное скользящее среднее. Отражает среднее соглашение о стоимости актива за определенный промежуток. Например, EMA(13) на таймфрейме D1 представляет собой среднее соглашение о стоимости актива за последние 13 дней. Почему лучше использовать экспоненциальное, а не простое скользящие среднее? А. Элдер ответил на этот вопрос в главе 4.2 («Скользящие средние»). Если вкратце, то EMA более чувствительна к изменениям тенденции, чем простое среднее.
  • Максимум Bulls Power показывает максимальную силу быков на данном баре. Когда цена растет, быки зарабатывают, поэтому быки покупают, пока цена не поднимется до максимума. Максимум Bulls Power — это тот момент, когда у быков есть желание двигать цену выше, но денег уже нет.
  • Минимум Bears Power показывает максимальную силу медведей на данном баре. Медведи зарабатывают, когда цена падает, и поэтому продают, пока цена не достигнет своего минимума. Минимум Bears Power — тот момент, когда у медведей есть желание двигать цену вниз, но уже нет возможностей.
  • Сила быков показывает способность быков поднять цену над средним соглашением о ценности актива. Как правило сила быков выше нуля, если же она ниже нуля, значит, в стаде быков паника и они тонут.
  • Сила медведей отражает способность медведей опустить цену ниже среднего соглашения о ценности актива. Обычно сила медведей ниже нуля, а если она выше нуля, значит, необычайно сильные быки подняли на рога медведей и те болтаются в воздухе.

Вариант 1: все индикаторы на одном графике

Исследовать будем фьючерсы и акции на таймфрейме D1. Все три индикатора (Bulls Power, Bears Power и EMA) располагаются на одном графике. Период усреднения всех индикаторов равен 13.

Правила для покупки

  • тенденция идет вверх (ориентируемся по индикатору EMA);
  • индекс силы медведей ( Bears Power ) ниже нуля, но повышается;
  • отложенный ордер Buy stop размещается выше максимума двух последних дней, а защитный стоп-лосс ставится ниже последнего минимума.

CATDaily Buy signals

CAT, Daily Buy signals

Правила для продажи

  • тенденция идет вниз (опираемся на показания индикатора EMA);
  • индекс силы быков (Bulls Power) выше нуля, но падает;
  • отложенный Sell stop размещается ниже минимума последних двух дней, а защитный стоп-лосс — выше последнего максимума.

CATDaily Sell signal

CAT, Daily Sell signals

Торговые правила

По рисункам 1 и 2 можно заметить, что в варианте торговой системы «Все индикаторы на одном графике» правила для покупки и для продажи срабатывают при откатах на устойчивом тренде. А таких благоприятных моментов встречается довольно мало, тем более что анализируемый таймфрейм — D1. Поэтому в варианте «Все индикаторы на одном графике» необходимо проводить анализ очень большого количества инструментов для увеличения частоты сделок на торговом счете.

Но в графиках D1 есть и один весомый плюс: анализ наклона EMA и показаний индикаторов Bulls Power и Bears Power можно проводить только один раз в сутки — в момент рождения нового бара. Именно так и будет работать советник: ожидать по каждому заданному символу на таймфрейме D1 новый бар и только после этого проводить анализ возможности входа.

Так как фьючерсы или акции — это только неттинг, разнонаправленные позиции (хедж) недопустимы, а вот наращивание объема позиции вполне допустимо. Советник может торговать или только по текущему символу, или по нескольким символам, которые хранятся в текстовом файле. Если с текущим символом всё понятно, то выбор нескольких символов может представлять следующие проблемы:

  • нужно указать около ста символов одного рынка (например, только ценные бумаги);
  • нужно указать множество символов с разных рынков (например, фьючерсы и ценные бумаги).

Как отобрать все символы с одного рынка? К примеру, есть символ «CAT«, и он расположен по следующему пути: «Stock MarketsUSANYSE/NASDAQ(SnP100)CAT»

Symbols Specification

Допустим, этот символ нас устраивает, и мы хотим выбрать все остальные инструменты из ветки «NYSE/NASDAQ(SnP100)». В таком случае можно поступить так:

  1. открыть график этого символа;
  2. запустить скрипт (назовем его Symbols on the specified path.mq5), который получит путь символа (в примере выше для символа «CAT» это будет «Stock MarketsUSANYSE/NASDAQ(SnP100)«) и сохранит в текстовый файл все символы из полученного пути. Текстовый файл будет сохраняться в общую папку Common Data Folder;
  3. останется в настройках советника указать название текстового файла.

Реализация скрипта Symbols on the specified path.mq5 будет описана ниже.

Сборка советника. Вариант 1: все индикаторы на одном графике

Symbols on the specified path.mq5 — скрипт, с помощью которого получим текстовой файл с символами.

ВНИМАНИЕ: только распечатка текста «Everything is fine. There are no errors» во вкладке «Эксперты» гарантирует, что скрипт отработал без ошибок и полученный файл с символами можно использовать для работы советника!

Для сокращения кода файловых операций подключается класс CFileTxt , и работу с тестовым файлом ведёт m_file_txt — объект класса CFileTxt. Скрипт выполняет свою работу в семь шагов :

Алгоритм работы скрипта:

  • STEP 1: для текущего символа определяется SYMBOL_PATH — путь в дереве символов;
  • STEP 2: полученный путь разбирается на подстроки с разделителем «»;
  • STEP 3: заново собираем текущий путь, но уже без последней подстроки, так как последняя подстрока — это название символа;
  • STEP 4: цикл по всем доступным символам; если у символа путь в дереве символов совпадает с текущим путем, выделяем название символа и добавляем в массив найденных символов;
  • STEP 5: проверяем размер массива найденных символов;
  • STEP 6: создаем файл;
  • STEP 7: записываем в файл наш массив найденных символов и закрываем файл.

Elder-Ray 1 — советник (или несколько советников) с номерами версий 1.xxx, который будет торговать по варианту 1: все индикаторы на одном графике.

Как задавать объем позиции — минимальный лот может различаться

Простой эксперимент: проверим размер минимального лота у фьючерсов и ценных бумаг: по аналогии со скриптом Symbols on the specified path.mq5 переберем все символы, расположенные по тому же пути, что и текущий символ, только вместо сохранения символов в файл, выведем статистику по размеру минимального лота.

Gets minimal volume.mq5 — скрипт, с помощью которого выведем статистику по минимальному объему группы символов. Скрипт обходит группу символов и накапливает статистику (minimal volume to close a deal и counter) в двухмерном массиве:

Полный код скрипта:

Алгоритм работы скрипта:

  • STEP 1: для текущего символа определяется SYMBOL_PATH — путь в дереве символов;
  • STEP 2: полученный путь разбирается на подстроки с разделителем «»;
  • STEP 3: заново собираем текущий путь, но уже без последней подстроки, так как последняя подстрока — это название символа;
  • STEP 4: цикл по всем доступным символам; если у символа путь в дереве символов совпадает с текущим путем, получаем минимальный объем символа и производим поиск в массиве символов. Если такое значение уже есть, то увеличиваем счетчик. Если такого значения еще нет, добавляем в массив и счетчик ставим в «1.0»;
  • STEP 5: проверяем размер массива найденных символов;
  • STEP 6: выводим статистику.

Результат запуска на ценных бумагах:

— на двух рынках размер лота одинаковый — 1.0.

Значит, не будем усложнять систему и примем за минимальный лот размер «1.0».

Визуализация используемых индикаторов

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

CATDaily visual trading

Как видите, здесь я для всех индикаторов использовал свои настройки цвета и толщины линии (конечно, это всё было проделано вручную). А вот для автоматической визуализации индикаторов, используемых на графике в терминале, необходимо немного переписать индикаторы Moving Average, Bulls Power и Bears Power. Нечто подобное я уже реализовывал в коде Custom Moving Average Input Color — во входные параметры был вынесен цвет индикатора: этот входной параметр доступен при создании индикатора из советника. Остается по образу и подобию написать еще три индикатора.

Эти индикаторы (Custom Moving Average Inputs, Custom Bulls Power Inputs и Custom Bears Power Inputs) можно скачать в CodeBase. Обратите внимание, что скачанные индикаторы необходимо поместить в корень папки [data folder]MQL5Indicators.

Elder-Ray 1.001.mq5визуализация используемых индикаторов, у которых можно настраивать цвет и ширину. Работает как в тестере стратегий, так и при запуске советника на графике:

Как это реализовано?

Главное условие — это наличие индикаторов Custom Moving Average Inputs, Custom Bulls Power Inputs и Custom Bears Power Inputs в папке [data folder]MQL5Indicators

Three indicators

Управление внешним видом индикаторов, а также задание периода производится во входных параметрах, а для работы с индикаторами объявляются три переменные, в которых потом будут храниться хендлы индикаторов (handle_iCustom_MA, handle_iCustom_Bulls и handle_iCustom_Bears).

В OnInit() создаются хендлы пользовательских индикаторов (применяется iCustom), и созданные индикаторы добавляются на график (применяется ChartIndicatorAdd).

Экономим ресурсы. Elder-Ray 1.010.mq5

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

В советнике подключается класс CFileTxt (мы его уже применяли в скрипте Symbols on the specified path.mq5) — объект этого класса m_file_txt отвечает за доступ к текстовому файлу и чтение информации из файла. Также подключаем класс CSymbolInfo — объект этого класса m_symbol отвечает за проверку существования символа и за добавление символа в окно «Обзор рынка». Почему выбор пал именно на CSymbolInfo, а не на реализацию через SymbolInfoInteger и SymbolSelect функции? Всё просто: в классе CSymbolInfo весь код по проверке, добавлению или сообщениям об ошибках спрятан внутри класса, и в советнике нужно лишь прописать эти три строки:

Здесь не лишним будет вспомнить, что все символы мультивалютного эксперта должны быть добавлены в окно «Обзор рынка»: Включение необходимых символов в окне «Обзор рынка» для мультивалютных экспертов.

Итак, советник работает по такому алгоритму: в OnInit() открывает текстовой файл, считывает символ и сразу пытается создать три пользовательских индикатора (Custom Moving Average Inputs, Custom Bulls Power Inputs и Custom Bears Power Inputs) по считанному символу и на текущем таймфрейме. Если индикатор создать не удалось (например, банально не хватило баров для создания Custom Moving Average Inputs), то просто идем по циклу дальше. Если же индикаторы были созданы, заносим имя символа в массив m_symbols_array, а хендлы трех индикаторов — в трехмерный массив m_handles_array. Таким образом по первому измерению оба массива синхронно содержат информацию по имени символа и о хендлах на этом символе:

Хендлы индикаторов создаются в CreateHandles().

Итак, потребление памяти замерялось через TERMINAL_MEMORY_USED и визуально в диспетчере задач Windows 10. Чтобы определить потребление памяти по шагам, в версии 1.010 специально отключались некоторые строки (строки были закомментированы). В итоговой версии 1.010 все строки по добавлению символов и созданию индикаторов раскомментированы.

  • Запуск советника обычным способом: советник прикреплен на график:
    • старт терминала (символы из текстового файла еще не добавлены в окно «Обзор рынка») — TERMINAL_MEMORY_USED 345 МБ, диспетчер задач от 26 до 90 МБ;
    • добавляем около сотни символов в окно «Обзор рынка» — TERMINAL_MEMORY_USED 433 МБ, диспетчер задач + 10 МБ;
    • а теперь по каждому символу создаем три индикатора — TERMINAL_MEMORY_USED 5523 МБ, диспетчер задач 300 МБ.

    Вывод: TERMINAL_MEMORY_USED показывает суммарное потребление ОЗУ и дискового пространства. И так как потребление ОЗУ в обычном режиме не превышает 300 МБ, ничего экономить не будем.

    Тенденция (EMA) идет.

    Определить направление тренда (EMA) — это главная задача советника. На одном баре тренд не определить — необходима информация с нескольких баров. Обозначим этот параметр «bars«. Вот три графика ценных бумаг — CAT, MCD и V. Пусть обозначения тренда следующее: тренд вверх «+1», нет тренда «0» и тренд вниз «—1»

    Trend (EMA) is .

    Тогда на графике «CAT» тренд «0» (4 бара вниз, 4 вверх, на остальных барах изменение индикатора мизерное), на «MCD» тренд «—1» (8 баров вниз, остальные в неопределенном состоянии) и на «V» тренд «0» (6 баров вверх, 2 или 3 вниз). Возможно, следует ввести параметр different — минимальная разница между показаниями индикатора на соседних барах.

    Определяем тренд. Elder-Ray 1.020.mq5

    Условия наличия тренда: EMA на протяжении bars должна быть направлена в одну сторону. Вероятно, потом следует проверить два дополнительных параметра:

    • different — минимальная разница между показаниями индикатора на соседних барах;
    • trend percentage — минимальный процент показаний индикатора в одну строну (на рисунке: символ CAT — индикатор EMA направлен в разные стороны на участке bars, а на символе MCD все показания индикатора EMA (или почти все) направлены в одну строну).

    Что добавлено и удалено в версии 1.020:

    • не реализован параметр different — минимальная разница между показаниями индикатора на соседних барах;
    • «—» перечисление enum ENUM_INPUT_SYMBOLS — решено, что советник будет работать только символами из текстового файла;
    • «+» параметр number of bars for identifying the trend — количество баров для идентификации тренда по EMA;
    • «+» параметр minimum percentage of the trend — минимальное качество тренда (однонаправленность);
    • «+» массив m_prev_bars — массив для хранения времени открытия предыдущего бара;
    • «+» таймер 60 секунд — в таймере проходит проверка на новый бар.

    Блок отлавливания нового бара и определения направления тренда

    В OnTimer() раз в 60 секунд обходим массив символов (m_symbols_array), загруженный из текстового файла, и л овим новый бар на символе из массива . Получаем в массив ema_array данные индикатора EMA, достаточные для определения тренда . Производим подсчет: на скольких барах индикатор шел вверх, а на скольких — вниз. Выводим на печать найденные закономерности .

    Результат определения тренда. Настройки: number of bars for identifying the trend — 6, minimum percentage of the trend — 75%. Помним, что если работаем в момент рождения нового бара, то нулевой бар не учитывается:

    Trend on symbols

    Trend on symbols

    Выставляем отложенные ордера (Buy stop или Sell stop). Elder-Ray 1.030.mq5

    Как обойти ошибку нехватки средств при открытии позиции? Так как мы работаем с отложенными ордерами, то ответ: «Никак»! Могут быть какие-то половинчатые решения, но гарантировать ничего нельзя, и основная причина — никто не знает, в какой момент сработает отложенный ордер и вообще сработает ли он когда-нибудь.

    Итак, определять тренд советник вроде научился, теперь нужно, используя Правила для покупки и Правила для продажи, найти точки, в которых можно выставить отложенный ордер. Для открытия BUY будет простая проверка: значение индикатора Bears Power на баре #1 должно быть меньше нуля и больше значения Bears Power на баре #2. Для открытия SELL условие зеркальное: значение индикатора Bulls Power на баре #1 должно быть больше нуля и меньше значения Bears Power на баре #2.

    В описании стратегии Александр Элдер указал, что для открытия BUY позиции «. защитный Стоп Лосс ставится ниже последнего минимума . «, а для открытия SELL позиции «. защитный Стоп Лосс — выше последнего максимума . «. Само понятие «последнего» оказалось размытым, и я проверил два варианта:

    1. выставлял стоп-лосс по ценам бара #1 и
    2. производил поиск ближайшего экстремума.

    Вариант 1 оказался нежизнеспособным — очень часто были срабатывания стоп-лосса, поэтому в коде советника Elder-Ray 1.030.mq5 я остановился на варианте 2: поиске ближайшего экстремума.

    Поиск ближайшего экстремума

    Функция ищет ближайший экстремум:

    Nearest extremum

    Если экстремум не найден или обнаружена ошибка, возвращается false:

    Что добавлено и удалено в версии 1.030:

    • «+» торговый класс CPositionInfo (и m_position — объект этого класса);
    • «+» торговый класс CTrade (и m_trade — объект этого класса);
    • «+» торговый класс COrderInfo (и m_order — объект этого класса);
    • «+» трейлинг (параметры Trailing Stop и Trailing Step);
    • «+» magic number — уникальный идентификатор эксперта;
    • «+» OnInit() — проверка типа счета: если это хедж-счет — запретить торговлю и выгрузиться с ошибкой;
    • OnInit() — изменен порядок визуализации: если запущен тестер стратегий, и текущий символ (символ, на котором запущен эксперт) есть в текстовом файле — индикаторы на текущий символ не добавляем (ChartIndicatorAdd не применяем); — добавлен код подтверждения сигнала и торговые операции по выставлению отложенных Buy Stop и Sell Stop ордеров; — добавлен механизм компенсации, если был разворот позиции или частичное закрытие;
    • «+» при срабатывании Алгоритма компенсации, в OnTradeTransaction() стоп-лосс НЕ ВЫСТАВЛЯЕТСЯ, вместо этого модернизируется функция трейлинга: если в процессе перебора позиций обнаружится позиция без стоп-лосса, стоп-лосс будет выставлен по правилу поиска ближайшего экстремума;
    • «+» добавлена переменная m_magic_compensation — идентификатор компенсационных сделок.

    Чтобы разобраться с ситуациями, когда срабатывает отложенный ордер, противоположный по направлению к текущей позиции, нужно рассмотреть три типичных ситуации после срабатывания отложенного ордера Buy Stop:

    Существующая позиция, объем Сработал отложенный ордер, объем Получилась позиция, объем Примечание к моменту срабатывания отложенного ордера magic позиции был Алгоритм компенсации (важно: перед компенсацией magic устанавливаем в m_magic_compensation) magic позиции стал
    1 Sell 1.0 Buy Stop 3.0 Buy 2.0 Разворот позиции (направление сделки DEAL_ENTRY_INOUT) m_magic Дополнительно открыть Buy объемом 3.0 — 2.0 = 1.0 m_magic_compensation
    2 Sell 1.0 Buy Stop 1.0 Полное закрытие позиции (направление сделки DEAL_ENTRY_OUT) m_magic Поиск позиции. Если позиции нет, открыть Buy объемом 1.0 m_magic_compensation
    3 Sell 2.0 Buy Stop 1.0 Sell 1.0 Частичное закрытие позиции (направление сделки DEAL_ENTRY_OUT) m_magic Поиск позиции. Если позиции есть и она противоположна Buy, открыть Buy объемом 1.0 + 1.0 = 2.0 m_magic_compensation

    Для каждого из трех случаев я подготовил распечатку сделок и ордеров (тест на реальном неттинговом счете, но в тестере). Для формирования отчета по сделкам и ордерам я использовал код из скрипта History Deals and Orders.

    #1: Sell 1.0 -> Buy Stop 3.0

    #2: Sell 1.0 -> Buy Stop 1.0

    #3: Sell 2.0 -> Buy Stop 1.0

    И еще одна ситуация уже на реальном счете и реальном времени (не в тестере): по рынку Buy объемом 2.0 (торговый приказ на открытие Buy породил две сделки объемами 1.0 — 20087494 и 20087495 ), затем был выставлен Sell limit объемом 2.0 для фиксации прибыли и закрытия позиции. Чуть позже этот Sell limit исполнился за два захода (сделки 20088091 и 20088145 ). Распечатка:

    Советы по тестированию 1.xxx

    • Старайтесь в текстовом файле оставить ценные бумаги примерно одинаковой стоимости.
    • При тестировании в текстовом файле лучше оставлять небольшое количество символов. Идеальный случай: оставлять один символ и по нему проводить тест.

    Вариант 2: в сочетании с системой «Тройной выбор»

    В Варианте 1 (все индикаторы на одном графике) трендовый индикатор был на том же таймфрейме. В варианте 2 трендовый индикатор будет находиться на более крупном таймфрейме. Таким образом добавится только один новый параметр — трендовый таймфрейм (Trend timeframe).

    Вариант 2 реализован в советнике Elder-Ray 2.000.mq5.

    Файлы, прикрепленные к статье:

    Название Тип файла Описание
    Symbols on the specified path.mq5 Скрипт Формирует текстовой файл с символами данной группы, сохраняется в Commom Data Folder
    Gets minimal volume.mq5 Скрипт Выводит статистику по минимальному объему данной группы.
    Elder-Ray 1.001.mq5 Советник Демонстрирует визуализацию используемых индикаторов
    Elder-Ray 1.010.mq5 Советник Начинаем работать с текстовым файлом и создавать индикаторы по символам из файла. Советник служит для наблюдений за расходом используемой памяти
    Elder-Ray 1.020.mq5 Советник Определяем тренд. Проверяем правильность определения тренда
    Elder-Ray 1.030.mq5 Советник Рабочая версия по Варианту 1: все индикаторы на одном графике
    Elder-Ray 2.000.mq5 Советник Вариант 2: в сочетании с системой «Тройной выбор»

    Заключение

    Торговая система Elder-Ray Биржевой рентген (Bulls Power и Bears Power) имеет право на жизнь, особенно в сочетании с системой «Тройной выбор», когда индикатор тренда (EMA) рассчитывается на более высоком таймфрейме, чем индикаторы Bulls Power (индекс силы быков) и Bears Power (индекс силы медведей).

    При тестировании советника следует понимать, что в подготовленном текстовом файле может быть до 100 символов: для старта теста по такому количеству символов может понадобиться до 10 минут только для старта и до 5 Гб памяти в процессе теста.

    И как ни доверяй советнику, а всё время хочется влезть руками в процесс. Например, пока статья писалась и тестировались версии советников, я так и поступал:

    Индикаторы быков и медведей: подробное описание

    Любой финансовый рынок сегодня – это постоянное движение цены. Стоимость каждого актива непрерывно изменяется с начала торговой недели в понедельник, когда открываются биржи, и продолжается до вечера пятницы, завершаясь закрытием последней торговой сессии. И этот цикл повторяется снова и снова после каждой пары выходных дней.

    Но что же является той самой движимой силой, не позволяющей котировкам валютных пар ни на секунду застывать на месте? Это яростное противостояние людей, покупающих валюту, с трейдерами, которые ее стремятся продать. Иначе говоря, быками и медведями на Форекс.

    Таков закон экономики: именно соотношение общемировых инвестиций в одну и в другую валюту определяет ее надежность и устойчивость, следовательно – и котировки пары этих денежных единиц. Для того, чтобы простому спекулянту было проще представить себе текущую расстановку сил, были изобретены индикаторы силы быков и медведей – Bears and Bulls Power Indicators.

    • 1 Bulls Power – индикатор силы быков
    • 2 Bears Power – индикатор силы медведей
    • 3 Индикатор Balance of power
    • 4 Как торговать по индикаторам силы быков и медведей

    Bulls Power – индикатор силы быков

    Принцип работы Bulls Power

    Рисунок 1. Принцип работы Bulls Power

    Bulls Power – это осцилляторный индикатор, предназначенный для определения степени того, насколько на рынке в текущий момент преобладает доминирование бычьей, то есть восходящей тенденции.

    Он имеет вид отдельного от основного графика окна, в котором находится гистограмма, строящаяся из вертикальных столбцов. Каждый столбец соответствует свече или бару живого графика. По центру окна Bulls Power располагается горизонтальная линия, разделяющая верхнюю и нижнюю части индикатора. Линия являет собой грань, на которой силы быков и медведей сбалансированы.

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

    Такое описание индикатора Bulls Power позволяет сделать вывод, что он одновременно является и трендовым, и осциллятором. Если условно провести скользящую среднюю по верхним краям бычьих полос и нижним краям медвежьих, то получим нечто похожее на MACD или Stochastic с увеличенным периодом и меньшей чувствительностью к ценовому шуму.

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

    Ценовые показатели за прошедший период выражаются в виде экспоненциальной скользящей средней (EMA). Алгоритм оценки прост: если текущий максимум цены выше значения EMA, то полоска на Bulls Power строится выше нулевой горизонтали, если же показатели скользящей средней выше – свеча медвежья.

    В этом состоит важное отличие индикатора силы медведей и быков от большинства осцилляторов: учитывается значение не простой скользящей средней (MA), а именно EMA. Если MA расценивает показатели графика за весь указанный период как равноценные, то EMA придает большее значение самым свежим, незначительно приуменьшая те, которые старше. Таким образом, Bulls и Bears Power быстрее реагируют на изменение тенденции.

    Bears Power – индикатор силы медведей

    Индикаторы быков и медведей

    Рисунок 2. Оба индикатора в терминале МТ4

    Индикатор Bears Power – своего рода зеркальный брат-близнец Bulls Power. Они имеют идентичный внешний вид и одинаковые правила построения индикаторных свечей. Разница состоит лишь в том, что индикатор силы медведей разность среднего значения цены сравнивает не с максимумами цен, а с минимумами.

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

    Ответ на вопрос, как пользоваться индикатором Bears Power, простой: это нужно делать в паре с Bulls Power. Ведь оба осциллятора – изобретение Александра Элдера, достойных аналогов которого до сих пор не нашлось. Уникальность их состоит в том, что Bulls и Bears Power изначально были созданы не как два отдельных продукта, а в качестве дополнения друг к другу. Следовательно, и все основные стратегии торговли по ним основаны на анализе одновременно обоих осцилляторов.

    длина свеч на индикаторах

    Рисунок 3. Так определяется длина свеч на индикаторах

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

    1. Индикаторы по умолчанию присутствуют во всех основных платформах для трейдинга, как МТ4, МТ5, Ninja Trader, ZuluTrade, Mirror Traer. Потому не придется тратить время на поиск и установку.
    2. Чувствительность к шумам – основной недостаток осцилляторных индикаторов. Из-за них ложные сигналы возникают чуть ли не чаще, чем достоверные. Но это не проблема для Bulls и Bears Power, так как в них присутствует сглаживание, благодаря которому индикаторы всегда выглядят плавными, а не острыми и рваными.
    3. Использование в алгоритме EMA вместо обычной скользящей средней дает возможность быстрее реагировать на смену рыночного настроения. Это возможно благодаря тому, что экспоненциальная отдает преимущество последним свечам цены перед более старыми. Более подробно: MA с периодом 10 будет каждый бар учитывать одинаково, то есть по 10%. EMA же оценивает важность последней из 10 свечей на 18% из ста.
    4. Тот факт, что трейдер принимает важные торговые решения, глядя сразу на 2 индикатора, автоматически отсеивает множество ложных сигналов, возникающих только на одном из них.

    Индикаторы Bulls Power и Bears Power не требуют настройки, так как установленные по умолчанию параметры отлично подходят для любого торгового инструмента и на любом таймфрейме. Изменить можно разве что цвет свечей и тип нулевой горизонтали (пунктирная, сплошная). Для этого нужно кликнуть по осциллятору правой клавишей мыши и в настройках выбрать подходящий вариант.

    Дефолтные настройки

    Рисунок 4. Дефолтные настройки менять нет необходимости

    Индикатор Balance of power

    Индикатор Balance of power

    Рисунок 5. Внешний вид индикатора

    По описанию индикатор Balance of power очень похож на Bulls Power и Bears Power. По сути, он является вариантом, в котором совмещены последние два. Разница лишь в том, что он учитывает и максимум, и минимум ценовых баров. Balance of power выполнен также в виде гистограммы, но его свечи окрашиваются в два цвета, указывающих на преобладание восхождения либо нисхождения. А показания высчитываются по формуле (Close – Open)/(High – Low).

    Индикатор отлично подойдет тем трейдерам, которые предпочитают использовать один осциллятор вместо двух. Стратегии, применяемые с использованием Balance of power, такие же, как и для индикаторов быков и медведей. Наибольшую эффективность показывает в условиях средней волатильности при торговле на разворот тренда.

    Еще один неплохой вариант: торговать по Balance of power в направлении тренда, открывая сделки, когда свечи индикатора пересекают среднюю линию. Основной тренд в этом случае лучше определять с помощью скользящей средней линии.

    Как торговать по индикаторам силы быков и медведей

    Торговля по дивергенции

    Рисунок 6. Торговля по дивергенции

    Предназначение осцилляторов преимущественно заключается в определении смены трендов и коррекционных движений. Потому для Bulls Power и Bears Power стратегии будут в основном разворотными.

    Дивергенция

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

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

    Торгуя по дивергенции, условием для покупки будет возникновение на Bulls Power и Bears Power бычьей дивергенции. Вход в рынок выполняется сразу после формирования более высокого минимума. Чтобы открыть ордер на продажу, нужно убедиться в наличии медвежьей дивергенции и войти на более низком максимуме.

    Торговля по тренду

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

    Конвергенция быков образуется, когда в восходящем тренде на графике цен новый минимум выше предыдущего, а на Bulls и Bears Power – ниже. Такая ситуация означает, что актив перепродан и не желает больше снижаться. Открывать ордер нужно в момент возникновения минимумов, по которым определяется конвергенция.

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

    Итоги

    Сглаживание делает индикаторы практически невосприимчивыми к ценовому шуму и просто приятными глазу. Так что можно смело создавать любую торговую систему с добавлением Bulls и Bears Power.

    Источник https://www.mql5.com/ru/articles/5014

    Источник https://howtotrade.biz/indikatoryi-byikov-i-medvedey/

    Источник

    Источник