
이 전략은 초 트렌드 지표에 기반하여 초 트렌드 라인을 사용하여 트렌드 방향을 판단하고 초 트렌드 라인을 스톱 로스로 사용하여 초 트렌드 움직임을 추적하는 자동 거래 전략을 구현합니다. 이 전략은 트렌디성이 비교적 명백한 품종에 적용되며 중장선 트렌드를 포착하여 강한 트렌드에서 추적 할 수 있습니다.
초과 추세 지표는 평균 실제 진동량 ((ATR) 과 지정된 곱수를 계산하여 가격 추세 방향을 효과적으로 판단할 수 있다. 가격이 상위 초과 추세선보다 높으면 상승 추세이며, 가격이 하위 초과 추세선보다 낮으면 하락 추세이다.
이 전략은 우선 상위 트렌드 라인과 하위 트렌드 라인을 계산한다. 상위 트렌드 라인은 최고 가격과 최저 가격의 평균값을 ATR의 N배를 빼고 계산한다. 하위 트렌드 라인은 최고 가격과 최저 가격의 평균값과 ATR의 N배를 더하여 계산한다. 그 중 N은 사용자가 설정한 곱셈 변수이다.
다음으로 가격의 상대적인 경향의 방향을 계산한다. 가격이 상위 K선의 하위 트렌드 라인보다 높을 때 상승 경향으로 정의되고, 가격이 상위 K선의 상위 트렌드 라인보다 낮을 때 하락 경향으로 정의된다.
판단된 트렌드 방향에 따라 상위 오프트렌드 라인 또는 하위 오프트렌드 라인을 초트렌드 라인으로 선택한다. 상승 트렌드인 경우, 초트렌드 라인은 상위 오프트렌드 라인을, 하락 트렌드인 경우, 초트렌드 라인은 하위 오프트렌드 라인을 선택한다.
마지막으로, 전략은 오버트렌드 라인을 손실 라인으로 사용하여, 가격이 오버트렌드 라인을 넘어서면 더 많은 것을하고, 가격이 오버트렌드 라인을 넘어서면 공백을 만들고, 가격이 오버트렌드 라인을 만지면 손실을 중지합니다.
이 전략은 다음과 같은 장점을 가지고 있습니다.
트렌드 지표를 사용하여 가격 트렌드 방향을 판단하여 트렌드를 효과적으로 추적 할 수 있습니다.
트렌드 라인은 손실을 제한하는 스톱 라인입니다.
전략적 인 회수는 작았으며, 샤프 비율은 2.51로 안정적이었다.
거래 횟수는 최대 1988번이며, 파라미터를 최적화하여 승률을 높일 수 있다.
모든 거래는 자동으로 이루어지고, 사람의 개입이 필요하지 않습니다.
이 전략에는 몇 가지 위험도 있습니다.
초트렌드 지표는 가격 변화에 민감하며, 더 많은 휘프사우 신호를 생성하여 수익을 감소시킬 수 있다.
진동 동향에서 쉽게 멈출 수 있으며, 가로판 품종에는 적합하지 않다.
주요 경제 사건의 영향을 고려하지 않고, 이 기간 동안 큰 손실을 초래할 수 있습니다.
이윤과 손실 비율은 41%에 불과하지만, 거래율은 더 높아질 것으로 보인다.
다양한 품종과 시간 주기에 맞게 최적화해야 합니다.
단독 손실을 막기 위해 엄격한 재무 관리가 필요합니다.
이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.
다른 지표와 함께 필터링을 수행하여 whipsaw를 피하고 승률을 높인다. 예를 들어 MA, MACD 등.
트렌드 확인을 추가하여 트렌드 라인을 초과하여 잘못된 신호를 생성하는 것을 피하십시오. 예를 들어, 채널 브레이크 확인을 추가하십시오.
다른 품종과 시간 주기에 맞게 변수를 조정한다. 예를 들어 ATR 주기 변수를 조정한다.
이 기획은 경제 이슈를 피하기 위한 전략과 주요 보도자료를 피하기 위한 전략으로 구성되어 있습니다.
손해 중지 전략을 최적화, 이동 손해 중지, 후기 손해 중지 등의 방법으로 손해 중지 최적화.
포지션 관리를 최적화하고, 시장 상황에 따라 엑스포를 조정하여 리스크 을 제어한다.
이 전략은 초 트렌드 지표에 기초하여 간단한 트렌드 추적 전략을 설계했습니다. 성능은 여전히 좋지만 거래 신호가 많고 승률이 향상 될 것입니다. 다른 지표와 함께 필터링 최적화를 수행하고, 다양한 품종에 적합한 파라미터를 조정하고, 엄격한 자금 관리를 수행하여 이 전략은 온화한 회수와 함께 안정적인 트렌드 추적 전략이 될 수 있습니다.
/*backtest
start: 2023-10-16 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("QuantNomad - SuperTrend - XBTUSD - 1m", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
// INPUTS //
st_mult = input(2, title = 'SuperTrend Multiplier', minval = 0, maxval = 100, step = 0.01)
st_period = input(14, title = 'SuperTrend Period', minval = 1)
// CALCULATIONS //
up_lev = hl2 - (st_mult * atr(st_period))
dn_lev = hl2 + (st_mult * atr(st_period))
up_trend = 0.0
up_trend := close[1] > up_trend[1] ? max(up_lev, up_trend[1]) : up_lev
down_trend = 0.0
down_trend := close[1] < down_trend[1] ? min(dn_lev, down_trend[1]) : dn_lev
// Calculate trend var
trend = 0
trend := close > down_trend[1] ? 1: close < up_trend[1] ? -1 : nz(trend[1], 1)
// Calculate SuperTrend Line
st_line = trend ==1 ? up_trend : down_trend
// Plotting
plot(st_line[1], color = trend == 1 ? color.green : color.red , style = plot.style_line, linewidth = 2, title = "SuperTrend")
plotshape(crossover( close, st_line), location = location.belowbar, color = color.green)
plotshape(crossunder(close, st_line), location = location.abovebar, color = color.red)
// Strategy with stop orders
strategy.entry("long", true, stop = st_line)
strategy.entry("short", false, stop = st_line)