
이 전략은 가격의 동력 지표를 계산하여 가격 이동 추세가 반전되는지 판단하여 가격 반전의 기회를 잡습니다. 가격 상승 추세가 느려지거나 하락 추세가 느려지면 가격 동력이 반전되는 것을 나타냅니다. 이 전략은 상장 또는 상장합니다.
이 전략은 주로 동력 지표의 계산에 기초한다. 동력 지표는 가격 변화의 속도와 강도를 반영한다. 전략은 두 가지 동력 지표인 MOM과 MOM1을 계산한다.
MOM 계산 공식:
MOM = 당일 종료 가격 - N일 전 종료 가격
MOM1 계산 공식:
MOM1 = MOM 오늘 - MOM 어제
MOM과 MOM1의 값에 따라 가격이 반전되는지 판단한다. MOM>0과 MOM1 <0이면 가격 상승 추세가 느려지고 반전 신호가 발생하면 더 많이 한다. MOM>0과 MOM1>0이면 가격 하락 추세가 느려지고 반전 신호가 발생하면 공백한다.
주요 위험 완화 방법:
이 전략은 가격 운동 지표를 계산하여 가격 이동 추세가 역전되는지 판단하여 자동으로 더 많은 공백을 구현한다. 회고가 보여준 바에 따르면, 이 전략은 전반적으로 원활하게 작동하며 가격 역전점을 효과적으로 포착한다. 최적화 파라미터 설정, 신호 필터링을 추가하는 등의 방법을 통해 전략의 안정성과 수익률을 더욱 향상시킬 수 있다.
/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Momentum - Strategy", overlay = false, precision = 2, initial_capital = 10000, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, commission_type = strategy.commission.percent, commission_value = 0.2 )
i_len = input(defval = 12, title = "Length", minval = 1)
i_src = input(defval = close, title = "Source")
i_percent = input(defval = true, title = "Percent?")
i_mom = input(defval = "MOM2", title = "MOM Choice", options = ["MOM1", "MOM2"])
momentum(seria, length, percent) =>
_mom = percent ? ( (seria / seria[length]) - 1) * 100 : seria - seria[length]
_mom
mom0 = momentum(i_src, i_len, i_percent)
mom1 = momentum(mom0, 1, i_percent)
mom2 = momentum(i_src, 1, i_percent)
momX = mom1
if i_mom == "MOM2"
momX := mom2
if (mom0 > 0 and momX > 0)
strategy.entry("MomLE", strategy.long, stop = high + syminfo.mintick, comment = "MomLE")
else
strategy.cancel("MomLE")
if (mom0 < 0 and momX < 0)
strategy.entry("MomSE", strategy.short, stop = low - syminfo.mintick, comment = "MomSE")
else
strategy.cancel("MomSE")
plot(mom0, color = #0000FF, title = "MOM")
plot(mom1, color = #00FF00, title = "MOM1", display = display.none)
plot(mom2, color = #00FF00, title = "MOM2")