이 전략은 슈퍼 트렌드 지표 (Supertrend) 를 기반으로 한 정량 거래 시스템으로, 정확한 위험 관리 메커니즘과 결합된다. 전략의 핵심은 가격과 슈퍼 트렌드 라인의 교차 관계를 사용하여 진출 시기를 판단하며, 각 거래에 대해 1%의 스톱과 1%의 스톱 로스를 설정하여 위험 수익을 정확하게 제어한다. 슈퍼 트렌드 지표는 평균 실제 파장 (ATR) 과 사용자 정의 인자를 계산하여 시장의 트렌드 변화를 효과적으로 식별할 수 있으며, 트렌드 초기에 진출하는 데 도움이되며, 트렌드 역전 시에 진출 할 수 있도록 거래의 성공률과 안정성을 향상시킵니다.
이 전략의 핵심 원칙은 슈퍼 트렌드 지표 (Supertrend) 의 계산과 적용에 기반합니다.
슈퍼 트렌드 지표 계산:
입력 신호 생성:
위험 관리 메커니즘:
시각적 도움말:
이 전략은 파인 스크립트 5.0을 사용하여 작성되었으며, 함수 ta.supertrend를 통해 슈퍼 트렌드 지표값과 방향을 직접 얻으며, 코드 구조를 단순화하고, 계산 효율을 높였다.
트렌드 추적 장점:
위험 관리의 정밀화:
변수를 조정할 수 있습니다.:
거래 과정을 시각화:
코드는 간결하고 효율적입니다.:
지진의 위험:
고정 비율 위험:
트렌드 반전 지연:
매개변수 민감도:
정지 수준에 가깝다:
동적 중지 중지 손실:
다주기 확인:
지능형 창고 관리:
필터링 조건을 추가:
슈퍼 트렌드 변수를 최적화:
“다중주기 슈퍼트렌드 퍼센트 위험 제어 전략”은 트렌드 추적과 정밀한 위험 관리를 결합한 정량 거래 시스템이다. 전략은 슈퍼트렌드 지표를 통해 시장 추세 변화를 포착하고 고정된 비율의 스톱 및 스톱 손실 제어 위험을 사용합니다.
이 전략의 주요 장점은 운영 규칙이 명확하고, 위험이 제어 가능하며, 매개 변수가 조정 가능하며, 타협 기반 거래 시스템 사용에 적합하다는 것이다. 그러나, 이 전략은 변동 시장의 성능이 좋지 않고, 고정 비율 위험이 충분히 유연하지 않다는 등의 단점도 있다.
전략의 성능을 더욱 향상시키기 위해, 동적 스톱 스톱, 다중 주기 확인, 스마트 포지션 관리 등의 최적화 조치를 도입하는 것을 고려할 수 있다. 이러한 개선으로, 전략은 기존의 우위를 유지한 기초에서 승률과 위험 조정 후 수익률을 더욱 높일 수 있다.
이 전략은 중장기 경향상거래자, 특히 위험 관리와 안정적인 수익을 추구하는 거래자에 적합합니다. 합리적인 매개 변수 조정과 전략 최적화를 통해 신뢰할 수 있는 거래 시스템 구성 요소가 될 수 있습니다.
/*backtest
start: 2024-11-08 00:00:00
end: 2025-02-24 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Supertrend with 1% Target and 1% Stoploss", overlay=true)
// Input parameters
atr_length = input.int(14, title="ATR Length")
factor = input.float(3.0, title="Factor")
target_pct = input.float(1.0, title="Target Percentage", minval=0.1) / 100
stoploss_pct = input.float(1.0, title="Stop Loss Percentage", minval=0.1) / 100
// Supertrend calculation
[supertrend, direction] = ta.supertrend(factor, atr_length)
// Plot the Supertrend line
plot(supertrend, color=color.blue, linewidth=2, title="Supertrend")
// Long and Short conditions
long_condition = ta.crossover(close, supertrend)
short_condition = ta.crossunder(close, supertrend)
// Calculate stop loss and take profit levels
long_stop_loss = close * (1 - stoploss_pct)
long_take_profit = close * (1 + target_pct)
short_stop_loss = close * (1 + stoploss_pct)
short_take_profit = close * (1 - target_pct)
// Long position entry
if long_condition
strategy.entry("Long", strategy.long, stop=long_stop_loss, limit=long_take_profit)
// Short position entry
if short_condition
strategy.entry("Short", strategy.short, stop=short_stop_loss, limit=short_take_profit)
// Plot stoploss and take profit levels for visual reference
plot(long_condition ? long_take_profit : na, color=color.green, style=plot.style_line, linewidth=1, title="Long Take Profit")
plot(long_condition ? long_stop_loss : na, color=color.red, style=plot.style_line, linewidth=1, title="Long Stop Loss")
plot(short_condition ? short_take_profit : na, color=color.green, style=plot.style_line, linewidth=1, title="Short Take Profit")
plot(short_condition ? short_stop_loss : na, color=color.red, style=plot.style_line, linewidth=1, title="Short Stop Loss")