Ореховый тренд в соответствии со стратегией на основе расстояния от 200 EMA

Автор:Чао Чжан, Дата: 2024-03-01 10:50:03
Тэги:

Достигает цели прибыли в конце дня

Короткий выход:Закрытие <= 200 EMA достигает целевой прибыли в конце дня

Стоп-лосс составляет 20% от премии опциона.

II. Преимущества

Основными преимуществами этой стратегии являются:

  1. Использование 200-дневной скользящей средней для определения средне-долгосрочной тенденции, избегая краткосрочного шума рынка
  2. Установление тенденции в соответствии с механизмом отслеживания средне- и долгосрочной тенденции цен
  3. Оптимизация времени входа, когда направление последней свечи соответствует основной тенденции
  4. Разумный стоп-лосс и прибыль для избежания больших потерь

III. Риски

Основными рисками этой стратегии являются:

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

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

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

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

Основными направлениями оптимизации этой стратегии являются:

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

V. Заключение

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


/*backtest
start: 2024-02-22 00:00:00
end: 2024-02-24 06:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Intraday Price Away from 200 EMA Strategy", overlay=true)

// Define inputs
emaPeriod = input(200, title="EMA Period")
thresholdPercent = input(0.75, title="Threshold Percent", minval=0)  // Define the threshold percentage

// Calculate 200 EMA
ema = ema(close, emaPeriod)

// Calculate distance from 200 EMA as a percentage
distance_percent = ((close - ema) / ema) * 100

// Track average entry price
var float avgEntryPrice = na

// Buy conditions
buy_condition = close < ema and abs(distance_percent) >= thresholdPercent and close[1] < close[2]

// Exit conditions for buy
exit_buy_condition = close >= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) <= close

// Sell conditions
sell_condition = close > ema and abs(distance_percent) >= thresholdPercent and close[1] > close[2]

// Exit conditions for sell
exit_sell_condition = close <= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) >= close

// Execute buy and sell orders only if there are no open trades
if strategy.opentrades == 0
    strategy.entry("Buy", strategy.long, when=buy_condition)
    strategy.entry("Sell", strategy.short, when=sell_condition)

// Update average entry price for buy condition
if buy_condition
    avgEntryPrice := close

// Update average entry price for sell condition
if sell_condition
    avgEntryPrice := close

// Close buy position if exit condition is met
strategy.close("Buy", when=exit_buy_condition)

// Close sell position if exit condition is met
strategy.close("Sell", when=exit_sell_condition)

// Plot 200 EMA
plot(ema, color=color.blue, linewidth=2)

// Plot buy and sell signals
plotshape(buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)


Больше