
Эта стратегия основана на сопоставлении средних линий EMA в четырех различных периодах, позволяя осуществлять трендовую торговлю. Делайте больше, когда быстрая линия EMA пересекает среднюю линию EMA, средняя линия EMA пересекает медленную линию EMA, а медленная линия EMA пересекает самую медленную линию EMA. Делайте пустое, когда быстрая линия EMA пересекает среднюю линию EMA, средняя линия EMA пересекает медленную линию EMA, а медленная линия EMA пересекает самую медленную линию EMA.
Основная логика этой стратегии основана на сравнении четырех средних линий EMA. Средняя линия EMA может эффективно сглаживать данные о ценах, удалять рыночный шум и выделять основные тенденции. Быстрая линия EMA наиболее быстро отражает изменения цен, средняя линия EMA немного отстает, медленная линия EMA немного отстает, а самая медленная линия EMA имеет наибольший эффект отставания.
Стратегия также включает в себя фильтрацию на условиях даты, позволяющую торговать только в пределах указанного диапазона дат, чтобы избежать влияния на стратегию аномальных колебаний в определенный период времени.
В частности, четыре средних линии EMA в стратегии имеют периоды 8, 13, 21 и 34 дней соответственно. Эти четыре средних линии имеют более короткие периоды, которые используются в основном для захвата краткосрочных и среднесрочных тенденций. Дата, указанная в стратегии, составляет период с 1 июня 2018 года по 31 декабря 2019 года.
Стратегия четырех EMA имеет следующие преимущества:
В этой стратегии также есть некоторые риски, о которых следует помнить:
Чтобы снизить эти риски, мы можем оптимизировать в следующих областях:
Эта стратегия может быть оптимизирована в следующих аспектах:
Параметры оптимизации: корректировка параметров длины средней линии EMA в соответствии с различными циклами и разными сортами, что позволяет более точно оценивать тенденции.
Остановка убытковУстановка разумных точек остановки, таких как остановка ATR или остановка тренда, чтобы контролировать риски в отдельных и в целом.
Условия фильтрацииВключение других вспомогательных индикаторов, чтобы избежать ошибочных сигналов в отсутствие четкой тенденции. Например, в качестве фильтрующего сигнала используйте такие индикаторы, как RSI, MACD.
Оставьте свой постУстановление разумной позиции или стратегии остановки, выход из рынка после того, как tren гарантирует определенную прибыль. Это может блокировать прибыль и предотвратить ее отброс.
Алгоритмическая торговля: параметризация стратегии и доступ к алгоритмической торговой системе, автоматизация торгов, расширение сферы применения стратегии.
Эта стратегия основана на сопоставлении отношений между четырьмя средними линиями EMA для определения направления тенденции. Это простая и практичная стратегия для отслеживания тенденций. Она быстро реагирует, эффективно отслеживает краткосрочные и среднесрочные тенденции и имеет хорошую обратную эффективность. Мы можем снизить риск и повысить эффективность путем корректировки параметров, добавления вспомогательных фильтрующих условий и установки стоп-стоп.
/*backtest
start: 2022-12-19 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("4 EMA TREND Strategy ", overlay=true)
length1 = input(8, minval=1)
outFAST = ema(close,length1)
plot(outFAST, color=green ,linewidth=3)
length2 = input(13, minval=1)
outM = ema(close, length2)
plot(outM, color=yellow,linewidth=3)
length3 = input(21, minval=1)
outSLOW = ema(close, length3)
plot(outSLOW, color=red,linewidth=3)
length4 = input(34, minval=1)
outSLOWEST = ema(close, length4)
plot(outSLOWEST, color=black,linewidth=3)
price = close
yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
if ( (outFAST>outM) and (outM > outSLOW) and(outSLOW>outSLOWEST))
strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY")
else
strategy.cancel(id="BUY")
if ( (outFAST<outM) and (outM<outSLOW) and (outSLOW <outSLOWEST))
strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND", comment="SELL")
else
strategy.cancel(id="SELL")