Стратегия пересечения EMA5 и EMA13

EMA SMA
Дата создания: 2024-05-17 15:28:17 Последнее изменение: 2024-05-17 15:28:17
Копировать: 0 Количество просмотров: 1123
1
Подписаться
1617
Подписчики

Стратегия пересечения EMA5 и EMA13

Обзор

Эта стратегия использует крест 5-дневных скользящих средних ((EMA5) и 13-дневных скользящих средних ((EMA13) для получения торгового сигнала. Когда EMA5 наступает на EMA13, создается многосигнал; когда EMA5 наступает на EMA13, создается пустой сигнал. Эта стратегия предназначена для захвата изменений в краткосрочных тенденциях и использует крест двух скользящих средних для определения входных и выходных точек.

Стратегический принцип

В основе этой стратегии лежит использование перекрестных движущихся средних индексов (EMA) двух различных циклов для создания торговых сигналов. EMA - это часто используемый технический индикатор, который придает больший вес недавним данным о ценах и, следовательно, более своевременно отражает изменения в ценах по сравнению с простой движущейся средней (SMA). Когда краткосрочная EMA (например, EMA5) пересекает долгосрочную EMA (например, EMA13), это указывает на усиление движения цены вверх, создавая полисигнал; наоборот, когда краткосрочная EMA пересекает долгосрочную EMA, это указывает на усиление движения цены вниз, создавая пустой сигнал.

Стратегические преимущества

  1. Простая и понятная: стратегия использует только два показателя EMA, принципы просты, легко понять и реализовать.
  2. Адаптируемость: с помощью корректировки циклических параметров EMA можно адаптироваться к различным рыночным условиям и торговым видам.
  3. Высокая своевременность: по сравнению с SMA, EMA более своевременно реагирует на изменения цен, что помогает быстро улавливать изменения тенденций.
  4. Расширяемость: на основе этой стратегии, можно комбинировать с другими техническими показателями или фундаментальными факторами, чтобы еще больше оптимизировать эффективность стратегии.

Стратегический риск

  1. Фальшивые сигналы: при колебаниях рынка или неопределенности тренда, пересечение EMA может привести к большему количеству фальшивых сигналов, что приводит к частым сделкам и потерем средств.
  2. Отставание: хотя EMA отстает по сравнению с SMA, все же существует определенное отставание, которое может пропустить лучший момент входа в игру.
  3. Отсутствие стоп-лосса: стратегия не устанавливает четких условий стоп-лосса и может понести большие потери при обратном движении.
  4. Параметрическая оптимизация: выбор параметров цикла EMA требует оптимизации в зависимости от различных рынков и сортов, иначе это может повлиять на эффективность стратегии.

Направление оптимизации стратегии

  1. Добавление фильтрации трендов: на основе перекрестных сигналов EMA, в сочетании с долгосрочным индикатором тренда (например, EMA50) проводится фильтрация трендов, чтобы уменьшить ложные сигналы.
  2. Настройка стоп-лосса: настройка динамического стоп-лосса в соответствии с такими показателями, как ATR, или использование фиксированного стоп-лосса в процентах, чтобы контролировать максимальные потери в одной сделке.
  3. Параметры оптимизации: оптимизируйте параметры цикла EMA, отслеживая исторические данные, чтобы найти наиболее подходящую комбинацию параметров для текущего рынка и сорта.
  4. В сочетании с другими показателями: используется в сочетании с другими техническими показателями (например, RSI, MACD и т. Д.) для повышения подтверждения и надежности сигнала.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 2d
basePeriod: 1d
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/
// © Milankacha

//@version=5
strategy('5-13 EMA by Naimesh ver04', overlay=true)

qty = input(1, 'Buy quantity')

testStartYear = input(2021, 'Backtest Start Year')
testStartMonth = input(1, 'Backtest Start Month')
testStartDay = input(1, 'Backtest Start Day')
testStartHour = input(0, 'Backtest Start Hour')
testStartMin = input(0, 'Backtest Start Minute')
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, testStartMin)
testStopYear = input(2099, 'Backtest Stop Year')
testStopMonth = input(1, 'Backtest Stop Month')
testStopDay = input(30, 'Backtest Stop Day')
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriodBackground = input(title='Color Background?', defval=true)
testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? #00FF00 : na
testPeriod() => true


ema1 = input(5, title='Select EMA 1')
ema2 = input(13, title='Select EMA 2')
//ema3 = input(50, title='Select EMA 3')
//SL = input(70, title='Stoploss')
//TR = input(250, title='Target')

expo = ta.ema(close, ema1)
ma = ta.ema(close, ema2)
//EMA_50 = ta.ema(close, ema3)

//avg_1 = avg (expo, ma)
//s2 = ta.cross(expo, ma) ? avg_1 : na
//plot(s2, style=plot.style_line, linewidth=3, color=color.red, transp=0)

p1 = plot(expo, color=color.rgb(231, 15, 15), linewidth=2)
p2 = plot(ma, color=#0db63a, linewidth=2)
fill(p1, p2, color=color.new(color.white, 80))

longCondition = ta.crossover(expo, ma)

shortCondition = ta.crossunder(expo, ma)


if testPeriod()
    //strategy.entry('Long', strategy.long, when=longCondition)
    strategy.entry('Short', strategy.short, when=expo<ma)

//strategy.close("Long", expo<ma, comment= 'SL hit')
strategy.close("Short", expo>ma, comment= 'SL hit')



//plotshape(longCondition and close>EMA_50, title='Buy Signal', text='B', textcolor=color.new(#FFFFFF, 0), style=shape.labelup, size=size.normal, location=location.belowbar, color=color.new(#1B8112, 0))
//plotshape(shortCondition and close<EMA_50, title='Sell Signal', text='S', textcolor=color.new(#FFFFFF, 0), style=shape.labeldown, size=size.normal, location=location.abovebar, color=color.new(#FF5733, 0))