Сегодня рассмотрим историю появления индикатора ER.
Также к данной статье будут прикреплены готовые скрипты роботов на этом индикаторе с возможностью торговать на нашей платформе OsEngine.
Оглавление.
1. История появления индикатора ER.
2. Как проводятся расчеты индикатора ER.
3. Какие сигналы может подавать индикатор ER.
4. Роботы для OsEngine на индикаторе Efficiency Ratio.
4.1. Стратегия на индикаторах ER, force index и Parabolic SAR.
4.2. Контртрендовая стратегия на индикаторах Envelopes, CCI и ER.
4.3. Стратегия на пробой Linear Regression Channel, Atr и ER.
5. Таблица общих результатов.
1. История появления индикатора ER.
История создания индикатора ER начинается с работ Перри Кауфмана в области разработки торговых систем и индикаторов. Кауфман — трейдер и автор нескольких книг по торговле на финансовых рынках.
Индикатор Efficiency Ratio был впервые представлен в его книге «Smarter Trading: Improving Performance in Changing Markets» (Умная торговля: повышение эффективности в изменчивых рыночных условиях), опубликованной в 1995 году. В этой книге Кауфман представляет ряд инновационных идей и индикаторов для анализа и торговли на финансовых рынках.
Индикатор Efficiency Ratio был разработан Кауфманом для измерения эффективности рыночных движений и трендов. Он вычисляется путем деления изменения цены за определенный период на общую сумму изменений цены. Полученное значение колеблется между 0 и 1, где ближе к 1 указывает на сильный тренд, а ближе к 0 указывает на отсутствие тренда.
Одним из основных преимуществ индикатора ER является его способность показывать точки входа и выхода из рынка, основываясь на разворотах цены в рамках заданного диапазона.
Индикатор ER быстро стал популярным среди трейдеров и аналитиков, благодаря своей простоте и полезности в анализе активов. Он позволяет трейдерам быстро оценивать эффективность тренда и принимать соответствующие решения о входе или выходе из рынка.
2. Как проводятся расчеты индикатора ER.
1. Находим разность между ценами закрытия последней завершенной свечи и первой свечи за выбранный период по модулю (ER1).
ER1 = | candles[close] – (candles[close] – Length) |
где
- candles[close] – цена закрытия последней завершенной свечи,
- Length – выбранный период.
2. Находим сумму разностей между ценами закрытия последней завершенной свечи и каждой свечи за период (ER2).
ER2 = | candles[close] – (candles[close] – Length) | + | candles[close] – (candles[close] – (Length – 1)) | + | candles[close] – (candles[close] – (Length – 2)) |… + … | candles[close] – (candles[close] – (Length — n)) |
3. Рассчитаем отношение между ER1 и ER2 и получим значение индикатора Efficiency Ratio
Efficiency Ratio = ER1 / ER2
Расчёт индикатора в OsEngine, можно посмотреть вот в этом файле:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/EfficiencyRatio.cs
3. Какие сигналы может подавать индикатор ER.
Индикатор Efficiency Ratio может подавать следующие сигналы:
1. Трендовые сигналы: если значение ER выше определенного уровня (например, 0.8 или 0.9), это может указывать на сильный тренд на рынке. Такой сигнал может использоваться для открытия позиции в направлении тренда.
2. Сигнал консолидации: если значение ER достигает низкого уровня (например, 0.1 или 0.2), это может указывать на фазу консолидации на рынке. Можно это использовать для торговли во флэте или для выхода из трендовых стратегий.
3. Сигналы к входу и выходу: когда ER пересекает определенные уровни (например, 0.7 или 0.3), это может быть сигналом к входу или выходу из рынка.
4. Как мультипликатор для индикаторов: ER может быть использован в качестве мультипликатора для других индикаторов. Например, с индикаторами волатильности, как Atr, используем индикатор ER как мультипликатор для нахождения точек входа и выхода с учетом волатильности.
Важно отметить, что Efficiency Ratio не является самостоятельным индикатором и должен использоваться в сочетании с другими инструментами и анализом для принятия торговых решений.
4. Роботы для OsEngine на индикаторе Efficiency Ratio.
4.1. Стратегия на индикаторах ER, force index и Parabolic SAR.
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/StrategyFIParabolicAndER.cs
Ссылка на Parabolic:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/ParabolicSAR.cs
Ссылка на Force Index:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/ForceIndex.cs
Логика входа:
- Покупаем, когда свеча закрылась выше индикатора Parabolic, индикатор Force Index выше значения параметра MaxValueFI, индикатор ER выше параметра MaxValueER, и значения индикаторов действуют, только если точек у Parabolic не больше параметра ParabolicCount.
- Продаем, когда свеча закрылась ниже индикатора Parabolic, индикатор Force Index ниже значения параметра MinValueFI, индикатор ER выше параметра MaxValueER, и значения индикаторов действуют, только если точек у Parabolic не больше параметра ParabolicCount.
Выход:
- Из покупки, когда свеча закрылась ниже индикатора Parabolic.
- Из продажи, когда свеча закрылась выше индикатора Parabolic.
Рис. 1. Пример логики.
Рис. 2. Si, TF15 min, 2021-23, P/L 1 contract: 0,19%
Рис. 3. BR, TF15 min, 2021-23, P/L 1 contract: 0,55%
Рис. 4. BTCUSDT, TF15 min, 2021-23, P/L 1 contract: 0,27%
Рис. 5. ETHUSDT, TF15 min, 2021-23, P/L 1 contract: 0,43%
4.2. Контртрендовая стратегия на индикаторах Envelopes, CCI и ER.
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/CountertrendEnvelopesCCIandER.cs
Ссылка на Envelopes:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/Envelops.cs
Ссылка на CCI:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/CCI.cs
Логика входа:
- Покупаем, когда за период CandlesCountLow минимум свечи был ниже нижней линии индикатора Envelopes, затем последняя свеча закрылась выше нижней линии. За этот же период был максимум на ER, и затем значение индикатора начало падать, и также значение индикатора CCI было выше +100, и затем начался спад.
- Продаем, когда за период CandlesCountHigh максимум свечи был выше верхней линии индикатора Envelopes, затем последняя свеча закрылась ниже верхней линии. За этот же период был максимум на ER, затем значение индикатора начало падать, и также значение индикатора CCI было ниже -100, и затем начался подъем.
Выход:
- Из покупки. Ставим трейлинг-стоп в процентах от минимума свечи, на которой вошли.
- Из продажи. Ставим трейлинг-стоп в процентах от максимума свечи, на которой вошли.
Рис. 6. Пример логики входа и выхода робота.
Рис. 7. Si, TF15 min, 2021-23, P/L 1 contract: 0,78%
Рис. 8. BR, TF15 min, 2021-23, P/L 1 contract: 0,33%
Рис. 9. BTCUSDT, TF15 min, 2021-23, P/L 1 contract: 1,29%
Рис. 10. ETHUSDT, TF15 min, 2021-23, P/L 1 contract: 1,25%
4.3. Стратегия на пробой Linear Regression Channel, Atr и ER.
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/BreakLRTrailVolatility.cs
Ссылка на Linear Regression Channel:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/LinearRegressionChannel.cs
Ссылка на ATR:
https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Indicators/Scripts/ATR.cs
Пример логики:
- Покупаем, когда цена выше верхней линии индикатора Linear Regression Channel.
- Продаём, когда цена ниже нижней линии индикатора Linear Regression Channel.
Выход:
- Из покупки. Ставим трейлинг-стоп на минимум минус значение индикатора ATR, умноженное на ER за указанный для трейлинг-стопа период, и переносим к новым минимумам цены также за указанный период.
- Из продажи. Ставим трейлинг-стоп на максимум плюс значение индикатора ATR, умноженное на ER за указанный для трейлинг-стопа период, и переносим к новым максимумам цены также за указанный период.
Рис. 11. Пример логики.
Рис. 12. Si, TF15 min, 2021-23, P/L 1 contract: 0,52%
Рис. 13. Br, TF15 min, 2021-23, P/L 1 contract: 0,51%
Рис. 14. BTCUSDT, TF15 min, 2021-23, P/L 1 contract: 0,72%
Рис. 15. ETHUSDT, TF15 min, 2021-23, P/L 1 contract: 0,74%
5. Таблица общих результатов.
Рис. 16. Общая таблица результатов.
Лучшие результаты у нас показала контртрендовая стратегия, основанная на трех индикатора Envelopes, CCI и ER.
Ссылки на роботов на GitHub:
1.https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/StrategyFIParabolicAndER.cs
2.https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/CountertrendEnvelopesCCIandER.cs
3.https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/bin/Debug/Custom/Robots/BreakLRTrailVolatility.cs
Комментарии открыты для друзей, добавляйтесь!
OsEngine: https://github.com/AlexWan/OsEngine
Поддержка OsEngine: https://t.me/osengine_official_support