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

Автор:Чао Чжан, Дата: 2024-02-05 11:10:41
Тэги:

img

Обзор

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

Принцип стратегии

Стратегия использует 4 группы скользящих средних: 9-дневные, 21-дневные, 50-дневные и 200-дневные линии.

Когда краткосрочная скользящая средняя пересекает долгосрочную вверх, определяется, что рынок вступает в восходящую тенденцию.

Стратегия использует 9-дневный МР как ориентир для наблюдения за соответствием других МР, тем самым оценивая общее направление тренда.

Условия длительного входа: закрыть > 9-дневный MA и 9-дневный MA > 21-дневный MA и 21-дневный MA > 50-дневный MA и 50-дневный MA > 200-дневный MA.

Условия кратковременного входа: Ближайший < 9-дневный MA и 9-дневный MA < 21-дневный MA и 21-дневный MA < 50-дневный MA и 50-дневный MA < 200-дневный MA.

Здесь соотношение между ценой закрытия и 9-дневным MA определяет кратковременный тренд, в то время как соотношение между 9-дневным и 21-дневным MA определяет краткосрочный тренд, 21-дневный и 50-дневный среднесрочный тренд, 50-дневный и 200-дневный долгосрочный тренд.

Условия выхода: цена закрытия переходит ниже 21-дневного MA, сглаживает все длинные позиции; переходит выше 21-дневного MA, сглаживает все короткие позиции.

Преимущества стратегии

  1. Принятие нескольких МО для определения тенденции может отфильтровать рыночные шумы от нетрадиционных движений и отслеживать средне- и долгосрочные тенденции.

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

  3. Своевременное прекращение потерь помогает эффективно контролировать риски.

Риски и решения

  1. На долгосрочных рынках с ограниченным диапазоном могут возникать чрезмерные ложные сигналы и увеличивать торговые риски.

  2. Во время бурных трендов часто происходят пересечения MA. Для определения реальной тенденции необходимы другие факторы, например, объединение таких индикаторов, как RSI и MACD для подтверждения, в случае если сильные движения будут пропущены.

Руководство по оптимизации

  1. Оптимизация параметров. Испытать различные комбинации параметров, чтобы узнать оптимальный. Например, корректировка периодов MA, добавление или изменение критериев остановки потери и т.д.

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

  3. Внедрить подтверждение от более технических индикаторов, чтобы избежать неправильных сигналов на фоне резких рыночных движений.

Резюме

В целом, это типичная и практичная стратегия следования трендам. Он использует несколько МА для определения тенденций, имеет строгие правила входа, чтобы блокировать средне- и долгосрочные тенденции. Вместе с своевременной остановкой потерь, он помогает контролировать риски. Дальнейшее улучшение стабильности и прибыльности может быть достигнуто такими способами, как оптимизация параметров и добавление индикаторов подтверждения. Он подходит для инвесторов, которые предпочитают следовать тренду для долгосрочной торговли.


/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
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/
// © shayak1

//@version=5
strategy('Super SR', overlay=true)

r = input.int(14,"rsi-length",1,100)
rsi = ta.rsi(close,r)

len1 = 9
len2 = 21
len3 = 50
len4 = 200

ema1 = ta.ema(close, len1)
ema2 = ta.ema(close, len2)
ema3 = ta.ema(close, len3)
ema4 = ta.ema(close, len4)

plot(ema1,color= color.green)
plot(ema2,color= color.yellow)
plot(ema3,color= color.orange)
plot(ema4,color= color.red)


// *** entries 
Long1 = close > ema1
Long2 = ema1 > ema2
Long3 = ema2 > ema3
Long4 = ema3 > ema4
buy_condition = Long1 and Long2 and Long3 and Long4 and strategy.position_size == 0

if (buy_condition and strategy.position_size <= 1)
    strategy.entry("B", strategy.long)

Short1 = close < ema1
Short2 = ema1< ema2
Short3 = ema2< ema3
Short4 = ema3< ema4
sell_condition = Short1 and Short2 and Short3 and Short4 and strategy.position_size == 0

//if (sell_condition)
//    strategy.entry("S", strategy.short)

// trailing SL
//Long_sl = min(strategy.position_avg_price * 0.95, strategy.pos


//EXIT CONDITIONS

exit_long = ta.crossunder(close, ema2)
exit_short = ta.crossover(close, ema2)

if(exit_long)
    strategy.close("B", "LE", qty_percent=100)
if(exit_short)
    strategy.close("S", "SE", qty_percent=100)

//==============================================================================
//INSERT SECTION
//This section is where users will be required to insert the indicators they
//would like to use for their NNFX Strategy.
//==============================================================================
//INSERT - CONFIRMATION INDICATOR 1
//==============================================================================


//==============================================================================
//INSERT - CONFIRMATION INDICATOR 2
//==============================================================================


//==============================================================================
//INSERT - VOLUME INDICATOR
//==============================================================================


//==============================================================================
//INSERT - BASELINE INDICATOR
//==============================================================================


//==============================================================================
//INSERT - EXIT INDICATOR
//==============================================================================


//==============================================================================
//INSERT - CONTINUATION TRADES INDICATOR
//==============================================================================


//==============================================================================
//COMPLETED SECTION
//This section has been optimised to work with the above indicators the user
//has inserted above. The user does not require to change any code below and
//is completed and optimised for the full NNFX strategy. Users may wish to 
//customise this section of code if they wish to alter the NNFX strategy.
//==============================================================================
//COMPLETE - BACKTEST DATE RANGE
//==============================================================================
// start_day = input.int(1,"start day",1,31)
// start_month = input.int(1,"start month",1,12)
// start_year = input.int(1,"start year",2010,2023)



//==============================================================================
//COMPLETE - CURRENCY CONVERSION
//==============================================================================


//==============================================================================
//COMPLETE - ATR MONEY MANAGEMENT
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C1
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C2
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Vol
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Bl
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Exit
//==============================================================================


//==============================================================================
//COMPLETE - CONTINUATION TRADES
//==============================================================================


//==============================================================================
//COMPLETE - ONE CANDLE RULE
//==============================================================================


//==============================================================================
//COMPLETE - BRIDGE TOO FAR
//==============================================================================


//==============================================================================
//COMPLETE - BASELINE AND ATR RULE
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - TAKE PROFIT AND STOP LOSS CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - EXIT ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - CLOSE ORDERS
//==============================================================================


//==============================================================================

Больше