Это торговая стратегия, использующая только две простые движущиеся средние ((SMA)). Эта стратегия использует медленную линию SMA для определения направления тенденции, а быструю линию SMA для определения конкретной точки входа в рынок. Эта стратегия применима к торговле криптовалютами на часовом уровне и выше.
Эта стратегия определяет направление тренда, рассчитывая быстрые и медленные линии SMA. В частности:
Медленная линия SMA (синий) используется для определения направления тренда. Когда цена ниже медленной SMA, она определяется как нисходящая тенденция; когда цена выше медленной SMA, она определяется как восходящая тенденция.
Быстрая линия SMA ((красный) используется для определения конкретного времени входа на рынок. При восходящем тренде, когда цена закрытия линии K ниже цены открытия и ниже скорой SMA, делают больше; при нисходящем тренде, когда цена закрытия линии K выше цены открытия и выше скорой SMA, делают больше.
Стратегия учитывает цвет K-линии и вступает в игру только в том направлении тренда, которое определяется стратегией. То есть, смотрите на многоодиночные сигналы при восходящем тренде и на пустые сигналы при нисходящем тренде, чтобы избежать обратной торговли.
В связи с вышеупомянутыми рисками можно оптимизировать:
Оценка тенденций в сочетании с MACD и другими показателями.
Присоединяйтесь к стратегии контроля рисков Stop Loss.
Добавление модуля оптимизации параметров для самостоятельной адаптации параметров.
Увеличение показателей подтверждения поступления, чтобы избежать избыточного поступления.
Эта стратегия может быть оптимизирована в следующих аспектах:
Параметрическая оптимизация. Можно добавить модуль оптимизации параметров, который автоматически корректирует параметры SMA в зависимости от различных рыночных условий, чтобы параметры могли адаптироваться.
Подтверждение входа. Можно добавить MACD, Brin Belt и другие индикаторы, чтобы провести многостороннюю проверку трендов SMA и избежать ошибочных сигналов.
Стоп-стратегия. Можно установить такие стратегии, как мобильная стоп-стратегия, стоп-стратегия времени, чтобы вовремя остановить потерю после входа, контролировать риск.
Контроль вывода. Можно установить максимальную пропорцию вывода, закрыть все позиции, когда достигнута пропорция вывода, чтобы избежать увеличения убытков.
Проверка на протяжении временных циклов. Можно вводить более высокие временные циклы для проверки надежности сигналов SMA с более низкими циклами.
Добавить опцию “сделай больше пустого времени”. Можно добавить опцию “сделай только больше пустого времени” или “сделай только пустое время”, чтобы адаптироваться к различным рыночным условиям.
Общая концепция стратегии ясна и понятна, использует простые, часто используемые показатели для определения тенденций, высокая надежность. Однако существует определенное пространство для получения прибыли, недостаточный контроль риска и другие проблемы. Следующий шаг - оптимизация стратегии с точки зрения оптимизации параметров, контроля риска и т. Д., Чтобы параметры стратегии были более соответствующими рыночной среде, и можно было эффективно контролировать риск торговли, и далее повысить стратегическое преимущество.
/*backtest
start: 2023-08-22 00:00:00
end: 2023-09-21 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Noro's Trend SMA Strategy v1.1", shorttitle = "Trend SMA str 1.1", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)
fastlen = input(5, "fast SMA Period")
slowlen = input(15, "slow SMA Period")
only = input(false, "Only long?")
fastsma = ema(close, fastlen)
slowsma = ema(close, slowlen)
trend = low > slowsma ? 1 : high < slowsma ? -1 : trend[1]
up = trend == 1 and low < fastsma and close < open ? 1 : 0
dn = trend == -1 and high > fastsma and close > open ? 1 : 0
plot(fastsma, color = red, title = "Fast SMA")
plot(slowsma, color = blue, title = "Slow SMA")
longCondition = up == 1
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = dn == 1
if (shortCondition)
strategy.entry("Short", strategy.short, only == true ? 0 : na)