Стратегия Double EMA Golden Cross и Death Cross


Дата создания: 2023-10-16 16:15:38 Последнее изменение: 2023-10-16 16:15:38
Копировать: 1 Количество просмотров: 638
1
Подписаться
1617
Подписчики

Стратегия Double EMA Golden Cross и Death Cross

Обзор

Стратегия основана на двух показателях EMA. Стратегия рассчитывает EMA на быстрой линии и EMA на медленной линии, делая больше при прохождении медленной линии на быстрой линии, а плавно при прохождении медленной линии под быстрой линии.

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

Эта стратегия основана на двух показателях EMA: сначала рассчитывается быстрая EMA и медленная EMA. Быстрая EMA имеет короткий цикл, который чувствительно отражает изменения цен; медленная EMA имеет длинный цикл, который отражает долгосрочную тенденцию.

В частности, стратегия включает в себя следующие шаги:

  1. Введите параметры для быстрого и медленного EMA, включая длину цикла SMA, источник данных и т. Д.

  2. Вычисление быстрого и медленного ЭМА

  3. Определение часового пояса: быстрый проходит через медленный снизу

  4. Определение времени мертвой вилки: быстрая линия сверху вниз через медленную

  5. Покупайте больше, когда у вас золотой форк

  6. Положение в момент смерти

  7. Возможность выбирать, разрешается ли пустота и используется ли стратегия стоп-стоп

  8. Вывод уведомлений о покупке и продаже

С помощью этой простой стратегии скрещивания двойных ЭМА можно случайно уловить краткосрочные тенденции цен и получить прибыль.

Анализ преимуществ

Эта стратегия имеет следующие преимущества:

  1. Стратегическая мысль проста и понятна, и ее легко понять и освоить.

  2. Для этого требуется только два показателя EMA.

  3. В этом случае, если вы используете арбитраж, вы получаете прибыль от колебаний.

  4. Настраиваемый цикл EMA, гибкость при адаптации к различным циклам рыночной среды.

  5. Можно выбрать, разрешается ли пустота, гибкая стратегия контроля риска.

  6. Можно выбрать использование стратегии стоп-стоп, чтобы контролировать риск торговли.

  7. Вывод уведомлений о покупке и продаже для удобства мониторинга.

  8. Стратегия легко оптимизируется, можно гибко настроить параметры EMA, оптимизировать пространство для получения прибыли.

Анализ рисков

Однако эта стратегия также несет в себе некоторые риски:

  1. Двойная стратегия EMA может создать ложные сигналы и привести к ненужным потерям.

  2. Нерациональная установка стоп-пойнтов может увеличить убытки.

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

  4. Фиксированные параметры EMA не могут адаптироваться к изменениям рынка.

  5. “Все, что я делаю, - это пытаюсь понять, что я делаю, и что я делаю.

  6. По словам экспертов, в этом случае, возможно, они не смогут определить, что тренд изменился, и могут открыть позиции в обратном направлении.

Соответствующие меры управления рисками:

  1. Оптимизация параметров EMA снижает вероятность ложного сигнала.

  2. Разумная установка стоп-стоп и контроль одиночных убытков

  3. Оптимизация циклов EMA, снижение частоты торгов.

  4. Параметры EMA могут быть динамически изменены в разных рыночных этапах.

  5. Повышение индексов оценки трендов, чтобы избежать отслеживания падения.

  6. В сочетании с индикаторами по оценке тенденций, определить направление тенденции.

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

Эта стратегия может быть оптимизирована в следующих аспектах:

  1. Динамическая оптимизация параметров EMA, использование различных комбинаций циклов EMA в разных рыночных этапах, оптимизация эффекта аренды параметров.

  2. Увеличение критериев отбора акций, стратегические сделки на акции, удовлетворяющие определенным критериям, повышают уровень успешности.

  3. В сочетании с показателями волатильности, снижение риска избежания позиций в период низкой волатильности.

  4. Сигналы, полученные в результате комбинированного сбытового показателя, подтверждают тенденцию только при высоком количестве.

  5. Установление ценовых условий, например, прорыв 20-дневной линии для торгов по стратегии EMA.

  6. Оптимизируйте стратегию стоп-лосса и установите условия стоп-стопа для блокировки прибыли.

  7. Повышение оценки тенденций на крупном уровне, чтобы избежать негативных позиций.

  8. Стратегия непрерывной оптимизации в сочетании с алгоритмами глубокого обучения и различными алгоритмами машинного обучения.

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

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

Исходный код стратегии
/*backtest
start: 2023-09-15 00:00:00
end: 2023-10-15 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy("EMA Strategy", shorttitle="EMA Strategy", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100)


// === Inputs ===
// short ma
maFastSource = input(defval=close, title="Fast MA Source")
maFastLength = input(defval=3, title="Fast MA Period", minval=1)

// long ma
maSlowSource = input(defval=close, title="Slow MA Source")
maSlowLength = input(defval=9, title="Slow MA Period", minval=1)

// invert trade direction
shorting = input(defval=false, title="Allow Shorting?")
// risk management
useStop = input(defval=false, title="Use Initial Stop Loss?")
slPoints = input(defval=25, title="Initial Stop Loss Points", minval=1)
useTS = input(defval=false, title="Use Trailing Stop?")
tslPoints = input(defval=120, title="Trail Points", minval=1)
useTSO = input(defval=false, title="Use Offset For Trailing Stop?")
tslOffset = input(defval=20, title="Trail Offset Points", minval=1)

// Messages for buy and sell
message_buy  = input("Buy message", title="Buy Alert Message")
message_sell   = input("Sell message", title="Sell Alert Message")

// Calculate start/end date and time condition
startDate  = input(timestamp("2021-01-01T00:00:00"), type = input.time)
finishDate = input(timestamp("2021-12-31T00:00:00"), type = input.time)
 
time_cond  = true

// === Vars and Series ===
fastMA = ema(maFastSource, maFastLength)
slowMA = ema(maSlowSource, maSlowLength)

plot(fastMA, color=color.blue)
plot(slowMA, color=color.purple)

goLong() =>
    crossover(fastMA, slowMA)
killLong() =>
    crossunder(fastMA, slowMA)
strategy.entry("Buy", strategy.long, when=goLong() and time_cond, alert_message = message_buy)
strategy.close("Buy", when=killLong() and time_cond, alert_message = message_sell)

// Shorting if using
if shorting
    strategy.entry("Sell", strategy.short, when=killLong() and time_cond, alert_message = message_sell)
    strategy.close("Sell", when=goLong() and time_cond, alert_message = message_buy)

if useStop
    strategy.exit("XLS", from_entry="Buy", stop=strategy.position_avg_price / 1.08)
    strategy.exit("XSS", from_entry="Sell", stop=strategy.position_avg_price * 1.08)