Стратегия закрытого прорыва индекса скользящей средней


Дата создания: 2023-12-07 15:50:13 Последнее изменение: 2023-12-07 15:50:13
Копировать: 0 Количество просмотров: 696
1
Подписаться
1619
Подписчики

Стратегия закрытого прорыва индекса скользящей средней

Обзор

Эта стратегия определяет многополюсное направление путем определения направления движущейся средней линии индекса. При появлении формы, когда солнечная линия поглощает солнечную линию, и при увеличении объема торгов, выполняются многополюсные операции. При переходе в направлении движущейся средней линии индекса или при появлении формы, когда солнечная линия поглощает солнечную линию.

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

  1. Индекс использует движущуюся среднюю линию с двумя различными параметрами для определения направления рыночных тенденций. Краткосрочная линия EMA рассматривается как многоголовый рынок над долгосрочной линией EMA, а не как свободный рынок.

  2. Когда рынок находится в состоянии многоголового состояния, если возникает форма, в которой солнечная линия в основном поглощает предыдущую K-линию, и объем торгов больше, чем в 1,2 раза предыдущая K-линия, то создается сигнал многоголового. Эта форма показывает сильную силу многоголового, и можно догнать многоголовый.

  3. Когда рыночная тенденция переворачивается, то есть, когда краткосрочная EMA проходит длительную EMA, показывают ослабление силы множества голов, следует выровнять позицию. Или, когда появляется форма, в которой клин в основном поглощает солнечную линию, показывают, что сила пустых голов прибавляет вес, также следует активно останавливать убытки от равновесия.

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

  1. Используя двойную ЭМА, можно более точно определить структуру рынка.

  2. Поглощение формы показывает, что односторонние силы внезапно увеличивают вход в игру, что позволяет запечатлеть более крупную ситуацию. В сочетании с объемом торгов увеличивается фильтр, чтобы избежать задержки в ложном прорыве.

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

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

  1. Двойные ЭМА могут также привести к ошибкам в определении структуры рынка, что может привести к пропускам или нарушениям. Параметры цикла ЭМА могут быть соответствующим образом скорректированы.

  2. Поглощающие формы легко поддаются обману в результате колебаний. Можно добавить дополнительные фильтры, чтобы избежать ошибочных сделок.

  3. Без установки стоп-поста может привести к большим потерям. Можно попробовать такие методы, как стоп-пост break even.

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

  1. Можно объединить больше показателей для определения пустоты, таких как MACD, энергетический прилив и т. д.

  2. При необходимости может быть добавлена определенная величина стоп-ложа.

  3. Параметры цикла EMA могут быть оптимизированы в зависимости от особенностей торговой разновидности.

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

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

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

// @version=5
// # ========================================================================= #
// #                   |   STRATEGY  |
// # ========================================================================= #
strategy(
  title                           = "fpemehd Strategy001",
  shorttitle                      = "f_001",
  overlay                         =  true,
  default_qty_type                =  strategy.percent_of_equity, 
  default_qty_value               =  100, 
  initial_capital                 =  10000000, 
  currency                        =  currency.USD, 
  slippage                        =  0, 
  commission_type                 =  strategy.commission.cash_per_order, 
  commission_value                =  0.01, 
  process_orders_on_close         =  true)
// # ========================================================================= #
// #                   |   STRATEGY  |
// # ========================================================================= #


// Inputs
I_start_date = input (defval = timestamp("20 Jan 1990 00:00 +0900"))
I_finish_date = input(defval = timestamp("20 Dec 2030 00:00 +0900"))

I_short_ema = input.int(defval = 15 , title = "Short EMA", minval = 1 , maxval = 300 , step = 1)
I_long_ema = input.int(defval = 30 , title = "Long EMA", minval = 1 , maxval = 300 , step = 1)

I_body = input.float(defval = 1 , title = "Size of Body", minval = 1 , maxval = 5 , step = 0.1)

time_cond = true

// Calculate Engulfing Candles
C_uptrend = false
C_downtrend = false
C_ema_short = ta.ema(source = close, length = I_short_ema) 
C_ema_long = ta.ema(source = close, length = I_long_ema) 
C_uptrend := close > C_ema_short and C_ema_short > C_ema_long
C_downtrend := close < C_ema_short and C_ema_short < C_ema_long

C_pre_body = math.abs(open[1]-close[1])
C_pre_body_ratio = (math.abs(open[1]-close[1])) / (math.abs(high[1]-low[1])) * 100

C_now_body = math.abs(open-close)
C_now_body_ratio = (math.abs(open-close)) / (math.abs(high-low)) * 100

C_bullish_engulfing = (open[1] > close[1] and open <= close) and (low < low[1] and high > high[1])
C_bearish_engulfing = (open[1] < close[1] and open >= close) and (low < low[1] and high > high[1])
C_avoid_doge = (C_pre_body_ratio > I_body and C_now_body_ratio > I_body) ? true : false
C_volume_filter = volume > volume[1] * 1.2

// Signals
long_signal = C_uptrend and C_bullish_engulfing and C_avoid_doge and C_volume_filter
close_signal = C_downtrend or C_bearish_engulfing 


if long_signal and time_cond
    strategy.entry(id = "Long", direction = strategy.long)

if close_signal and time_cond
    strategy.close(id = "Long")