Стратегия пересечения скользящих средних SMA


Дата создания: 2023-09-22 14:40:03 Последнее изменение: 2023-09-22 14:40:03
Копировать: 0 Количество просмотров: 812
1
Подписаться
1617
Подписчики

Обзор

Эта стратегия является простой стратегией отслеживания тенденций на основе перекрестных SMA-движущихся средних и применяется для торговли биткойном и другими криптовалютами на более высоких временных периодах.

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

Стратегия основана на движущихся средних величинах SMA двух различных циклов. Одна - 10-циклическая SMA, другая - 100-циклическая SMA. Стратегия постоянно отслеживает значения этих двух SMA.

В частности, эта стратегия определяет их пересечение путем сравнения значений 10-циклического SMA и 100-циклического SMA. Если 10-циклический SMA проходит через 100-циклический SMA, то условие longCondition устанавливается как истинное. В этом случае стратегия входит в поле с помощью функции strategy.entry.

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

Стратегические преимущества

  1. Стратегические идеи просты, понятны, легко понятны и реализуемы, подходят для начинающих.

  2. На основе перекрестного суждения SMA можно эффективно улавливать переломные моменты ценовых тенденций, своевременно вводить в действие.

  3. Движущаяся средняя эффективно фильтрует рыночный шум и определяет направление тренда.

  4. Можно адаптироваться к различным рыночным условиям путем корректировки цикла SMA. Например, в бычьем рынке можно сократить цикл, в медвежьем - удлинить цикл.

  5. Эта стратегия доказала свою эффективность на криптовалютном рынке.

Стратегический риск

  1. Задержка с пересечением SMA может привести к задержке входа и риску остановки.

  2. Краткоциклические SMA способны к ложным прорывам, которые могут привести к ненужным повторным сделкам.

  3. При длительном хранении позиций необходимо установить точку стоп-лосса для контроля риска.

  4. В случае неэффективного фильтрации рыночных колебаний, часто происходит убыток.

  5. Неправильная настройка параметров также может повлиять на эффективность стратегии. Необходимо корректировать цикл SMA в соответствии с рынком.

Оптимизация стратегии

  1. Для повышения точности стратегии могут быть введены другие индикаторы в сочетании с оценками SMA, такие как RSI, BRI и т. д.

  2. Можно добавить механизм остановки убытков. Если цена превышает SMA остановка убытков.

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

  4. Различные масштабы позиций могут быть установлены для определения силы и слабости скрещивания SMA в длинных и коротких периодах.

  5. Можно установить механизм повторного входа. Если цена возвращается в SMA, можно вновь войти.

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

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

Общая концепция SMA Moving Average Crossover Strategy проста, понятна и реализуема, она использует перекрестные суждения двух различных циклов SMA для захвата точек перелома ценовой тенденции, и является классической стратегией отслеживания тенденций. Преимущества этой стратегии заключаются в том, что концепция прямая, торговые сигналы ясны и эффективно отслеживают тенденции; недостатки - возможные задержки и создание ложных прорывов.

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

//@version=3
//study(title="MA Crossover Strategy", overlay = true)
// Simple MA crossover strategy with a 10/100 MA crossover)

strategy("MA Crossover Strategy", overlay=true)
src = input(close, title="Source")

price = security(syminfo.tickerid, timeframe.period, src)
ma1 = input(10, title="1st MA Length")
type1 = input("SMA", "1st MA Type", options=["SMA", "EMA"])

ma2 = input(100, title="2nd MA Length")
type2 = input("SMA", "2nd MA Type", options=["SMA", "EMA"])

price1 = if (type1 == "SMA")
    sma(price, ma1)
else
    ema(price, ma1)
    
price2 = if (type2 == "SMA")
    sma(price, ma2)
else
    ema(price, ma2)


//plot(series=price, style=line,  title="Price", color=black, linewidth=1, transp=0)
plot(series=price1, style=line,  title="1st MA", color=blue, linewidth=2, transp=0)
plot(series=price2, style=line, title="2nd MA", color=green, linewidth=2, transp=0)


longCondition = crossover(price1, price2)
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = crossunder(price1, price2)
if (shortCondition)
    strategy.entry("Short", strategy.short)