Эта стратегия использует движущиеся средние для определения тенденции, чтобы обнаружить потенциальные возможности покупки и продажи. Она одновременно использует быстрые и медленные движущиеся средние для создания торговых сигналов в зависимости от их перекрестного положения.
Эта стратегия использует два движущихся средних с разными сроками. Первый движущийся средний с более коротким сроком, установленным на 20 дней, используется для уловить краткосрочные тенденции цен; второй движущийся средний с более длительным сроком, установленным на 120 дней, используется для измерения долгосрочных тенденций цен.
Когда быстрая скользящая средняя пересекает медленную скользящую среднюю с нижнего направления, она рассматривается как золотой форк, который указывает на краткосрочный тренд вверх, и можно купить. Когда быстрая скользящая средняя пересекает медленную скользящую среднюю с верхнего направления, она рассматривается как мертвый форк, который указывает на краткосрочный тренд, и можно продать.
Стратегия использует ta.crossover и ta.crossunder для определения пересечения движущихся средних, и, как только они пересекаются, они вызывают соответствующий сигнал покупки или продажи.
Наибольшим преимуществом этой стратегии является простота и легкость использования. Движущаяся средняя является одним из наиболее часто используемых инструментов технического анализа.
По сравнению с другими сложными показателями, движущаяся средняя имеет меньшую сложность в построении стратегии. Она требует только оптимизации периодических параметров движущейся средней, чтобы создать стабильную систему стратегий.
Кроме того, стратегия движущихся средних имеет гибкость. Различные параметры могут быть установлены в зависимости от различных типов торгов, временных периодов, от долгосрочных до краткосрочных.
Наибольший риск этой стратегии заключается в том, что часто появляются ошибочные сигналы. Когда рыночные тенденции повторяются, быстрые и медленные скользящие средние пересекаются друг с другом, что приводит к большому количеству ненужных торговых сигналов. В этом случае следует соответствующим образом скорректировать циклы скользящих средних и отфильтровать некоторый шум.
Другой потенциальный риск заключается в том, что движущиеся средние имеют задержку. Когда возникают новые тенденции, движущимся средним требуется определенное время, чтобы отразиться, и эта разница во времени может привести к определенной потере скольжения.
Кроме того, стратегия не учитывает влияние внезапных событий, таких как новости о значительных прибылях/прибылях. Такие события нарушают эффективность движущихся средних, поэтому следует установить остановку для контроля риска.
Эта стратегия может быть улучшена следующими способами:
Добавление фильтров, таких как объемы торгов, чтобы избежать ошибочных сигналов в условиях потрясений.
Использование адаптивных скользящих средних, позволяющих циклам скользящих средних динамически корректироваться в зависимости от колебаний, чтобы быстрее адаптироваться к изменениям рынка.
Комбинирование с другими индикаторами, такими как MACD, Stochastic и т. Д., использует больше факторов для подтверждения сигналов движущихся средних.
Создание ценового канала, учитывающего торговые сигналы только при прорыве канала, чтобы избежать ненужных повторных сделок.
Установка условий стоп-стоп для повышения стабильности стратегии.
В целом, стратегия пересечения скользящих средних использует пересечение быстрых и медленных скользящих средних для формирования торговых сигналов. Она проста и проста в использовании, она позволяет идентифицировать направление тенденции, но также имеет риск создания ошибочных сигналов и проблем с отставанием.
/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © brandlabng
//@version=5
//study(title="Holly Grail FX", overlay = true)
strategy('HG|E30m', overlay=true)
src = input(close, title='Source')
price = request.security(syminfo.tickerid, timeframe.period, src)
ma1 = input(20, title='1st MA Length')
type1 = input.string('EMA', '1st MA Type', options=['EMA'])
ma2 = input(120, title='2nd MA Length')
type2 = input.string('EMA', '2nd MA Type', options=['EMA'])
price1 = if type1 == 'EMA'
ta.ema(price, ma1)
price2 = if type2 == 'EMA'
ta.ema(price, ma2)
//plot(series=price, style=line, title="Price", color=black, linewidth=1, transp=0)
plot(series=price1, style=plot.style_line, title='1st MA', color=color.new(#219ff3, 0), linewidth=2)
plot(series=price2, style=plot.style_line, title='2nd MA', color=color.new(color.purple, 0), linewidth=2)
longCondition = ta.crossover(price1, price2)
if longCondition
strategy.entry('Long', strategy.long)
shortCondition = ta.crossunder(price1, price2)
if shortCondition
strategy.entry('Short', strategy.short)