В процессе загрузки ресурсов... загрузка...

Стратегия двойной тяги на основе SMA

Автор:Чао Чжан, Дата: 2023-11-22 15:42:29
Тэги:

img

Обзор

Эта стратегия строит простую стратегию двойного толчка, основанную на индикаторе SMA. Она длинна, когда цена пересекает 20-периодную самую высокую SMA, и коротка, когда цена пересекает 20-периодную самую низкую SMA.

Логика стратегии

Эта стратегия использует 20-периодную SMA с самой высокой ценой и самой низкой низкой ценой для определения направления для торговли. Когда цена пересекает верхнюю SMA, она считается восходящим трендом, поэтому идет на длинный. Когда цена пересекает нижнюю SMA, она считается нисходящим трендом, поэтому идет на короткий.

В частности, стратегия сначала рассчитывает 20-периодную SMA наивысших высоких и самых низких низких цен, а также графики линий индикатора.

Длинный вход: цена закрытия пересекает верхнюю SMA
Длинный выход: цена закрытия пересекается ниже 0,99 * наивысшая SMA

Короткий вход: цена закрытия пересекает нижнюю SMA
Короткий выход: цена закрытия пересекает отметку выше 1,01 * минимальная SMA

Таким образом, формируется тенденция следования стратегии двойной тяги.

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

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

  1. Использование SMA для определения направления тренда просто и практично
  2. Наиболее высокая SMA и наименьшая SMA действуют как линии поддержки/сопротивления
  3. Разумный дизайн стоп-лосса для максимальной защиты от больших потерь
  4. Хорошая адаптивность, может использоваться на разных продуктах и временных рамках

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

Эта стратегия также сопряжена с некоторыми рисками:

  1. SMA имеет отстающий эффект, может пропустить поворотные моменты тренда
  2. Нет защиты от внезапных событий на рынке
  3. Влияние на стоимость торговли не рассматривается

Эти риски можно контролировать и уменьшать путем сочетания других индикаторов, установки стоп-лосса, настройки параметров и т.д.

Направления к улучшению

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

  1. Комбинируйте другие индикаторы, такие как MACD, KDJ, чтобы определить тенденцию
  2. Добавить защиту от внезапных событий, таких как приостановка, ограничение цен и т.д.
  3. Оптимизировать периоды SMA, найти лучшую комбинацию параметров
  4. Найти лучшие параметры для различных продуктов и временных рамок
  5. Оценить влияние затрат на торговлю, установить оптимальный стоп-лосс и взять прибыль

Заключение

Общая логика этой стратегии ясна и проста в реализации. Используя SMA для определения направления тренда и установления разумных правил входа / выхода, можно достичь хороших результатов. Есть возможность дальнейшей оптимизации, и в сочетании с другими методами она может стать перспективной стратегией, которая стоит долгосрочного отслеживания.


/*backtest
start: 2023-11-14 00:00:00
end: 2023-11-21 00:00:00
period: 10m
basePeriod: 1m
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/
// © AlanAntony

//@version=4


strategy("ma 20 high-low",overlay=true)

//compute the indicators

smaH = sma(high, 20)
smaL = sma(low, 20)


//plot the indicators
plot(smaH,title="smaHigh", color=color.green, linewidth=2)


plot(smaL,title="smaLow", color=color.red, linewidth=2)


//trading logic
enterlong = crossover(close,smaH) //positive ema crossover
exitlong = crossunder(close,0.99*smaH)  //exiting long


entershort = crossunder(close,smaL) //negative EMA Crossover
exitshort = crossover(close,1.01*smaH) //exiting shorts


notintrade = strategy.position_size<=0
bgcolor(notintrade ? color.red:color.green)

//execution logic

start = timestamp(2015,6,1,0,0)
//end = timestamp(2022,6,1,0,0)

if time >= start
    strategy.entry( "long", strategy.long,1, when = enterlong)
    strategy.entry( "short", strategy.short,1, when = entershort) 
    
    strategy.close("long", when = exitlong)
    strategy.close("short", when = exitshort)

//if time >= end
   // strategy.close_all()

Больше