
Постепенно отслеживать стратегию стоп-убытков путем динамической корректировки стоп-линий, реализуя контроль риска и органическое сочетание стоп-перехватов. Она использует средний реальный диапазон колебаний для вычисления стоп-линий, эффективно отслеживает тенденции цен на акции и уменьшает ненужные стоп-убытки, защищая прибыль. Эта стратегия применима к акциям с сильной тенденцией и обеспечивает стабильную прибыль.
Стратегия использует расчет среднего реального диапазона колебаний (ATR) в качестве основы для динамического остановки. ATR может эффективно отражать волатильность акций. Сначала стратегия вводит параметры цикла ATR, обычно 10 дней.
В частности, стратегия рассчитывает значение ATR для текущей линии K, а затем умножает его на коэффициент коэффициента, чтобы получить стоп-дистанцию. Если цена акции выше цены стоп-убытка, открывайте позиции; если цена акции ниже цены стоп-убытка, открывайте позиции. Таким образом, линия стоп-убытка будет плотно прикреплена к цене акции, чтобы достичь эффекта эволюционного отслеживания линии стоп-убытка.
Постепенное отслеживание стоп-стратегии обеспечивает эффективный баланс между контролем риска и сдерживанием сдерживания путем динамического регулирования стоп-дистанции. Эта стратегия проста в использовании, имеет высокую степень настройки и подходит для автоматизированной торговли роботов. Конечно, разумный выбор параметров и комбинации индикаторов все еще требуют ручного опыта.
/*backtest
start: 2023-10-17 00:00:00
end: 2023-10-24 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Supertrend Strategy, by Ho.J.", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=15)
// 백테스팅 시작일과 종료일 입력
startYear = input(2020, title="Start Year")
startMonth = input(1, title="Start Month")
startDay = input(1, title="Start Day")
endYear = input(9999, title="End Year")
endMonth = input(12, title="End Month")
endDay = input(31, title="End Day")
// 백테스팅 시간 범위 확인
backtestingTimeBool = (year >= startYear and month >= startMonth and dayofmonth >= startDay) and (year <= endYear and month <= endMonth and dayofmonth <= endDay)
atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)
[_, direction] = ta.supertrend(factor, atrPeriod)
var bool longCondition = false
var bool shortCondition = false
if backtestingTimeBool
prevDirection = direction[1]
if direction < 0
longCondition := false
shortCondition := true
else if direction > 0
longCondition := true
shortCondition := false
if longCondition
strategy.entry("My Long Entry Id", strategy.long)
if shortCondition
strategy.entry("My Short Entry Id", strategy.short)
plot(strategy.equity, title="equity", color=color.rgb(255, 255, 255), linewidth=2, style=plot.style_area)