지지 및 저항 추세 추종 전략


생성 날짜: 2024-02-27 15:11:04 마지막으로 수정됨: 2024-02-27 15:11:04
복사: 1 클릭수: 609
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

지지 및 저항 추세 추종 전략

개요

이 전략은 지원, 저항, 그리고 트렌드 라인 세 가지 기술 지표를 사용하여 자동으로 입문 및 중지합니다. 전략은 먼저 중요한 지원 및 저항 지점을 식별하고 추세 방향과 결합하여 입문 시기를 판단합니다.

전략 원칙

  1. 중요한 지지점과 저항점을 식별하십시오.
  2. 트렌드 라인을 사용하여 시장의 트렌드 방향을 판단하십시오. 어제의 종결 가격보다 가격이 높을 때 상승 추세로 정의되며 그렇지 않으면 하락 추세로 정의됩니다.
  3. 가격의 지지부진과 상승 추세에 가까워지면 구매 신호를 발산한다.
  4. 가격이 저항에 가까워지고 하향 추세에 속할 때 판매 신호를 발산한다.
  5. 스톱포드 타겟은 리스크-이익 비율에 따라 계산되며, 스톱로스는 지지율 근처에 설정된다.
  6. 이윤을 잠금하기 위해 추적한 스톱로스를 사용할 수 있습니다.

우위 분석

  1. 세 가지 강력한 지표인 지지, 저항, 경향의 장점을 최대한 활용하세요.
  2. “자동으로 진입 시점을 판단하여 주관적 오류를 피하십시오”.
  3. 위험은 통제할 수 있고, 스톱로스는 핵심지원점 근처에 있다.
  4. 이윤을 차단하기 위해 스톱로스를 선택적으로 추적할 수 있습니다.

위험 분석

  1. 파격 실패의 위험. 가격이 지지 또는 저항 지점을 뚫은 후 다시 회수될 수 있으며, 이로 인해 화된다.
  2. 트렌드 판단 실패의 위험. 트렌드 라인을 사용하여 트렌드 방향을 판단하는 데 오류가 있을 수 있다.
  3. 스톱디스가 깨질 위험이 있다. 스톱디스가 지진으로부터 멀지 않은 곳에 있긴 하지만, 격렬한 변동이 있을 때 직접적으로 뚫릴 수도 있다.

어떻게 대처해야 할까요?

  1. 적절히 느슨하게 지지 저항의 판정을 amplitude.
  2. 여러 지표들을 사용하여 트렌드를 판단한다.
  3. “지속적 피해를 막거나 적절한 수동 개입을 취한다”.

최적화 방향

  1. 더 많은 지표 확인 입학 신호를 추가하여 정확도를 높여줍니다. 예를 들어, 수량 지표, 이동 평균 등이 있습니다.
  2. 지원 저항점과 정지점의 설정을 최적화한다. 다른 매개 변수의 결과에 대한 영향을 테스트할 수 있다.
  3. 기계학습 방법을 사용해 자동으로 최적화합니다.

요약하다

이 전략은 여러 가지 기술 지표의 장점을 통합하여 합리적인 매개 변수 설정을 전제로 더 나은 수익 위험 비율을 얻을 수 있습니다. 매개 변수 설정을 최적화하고 출입 순서를 최적화하는 것이 중요합니다. 전체적으로 이 전략의 프레임 워크는 합리적이며 개선할 여지가 있습니다.

전략 소스 코드
/*backtest
start: 2024-01-27 00:00:00
end: 2024-02-26 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Support Resistance Trend Strategy", overlay=true)

// Input parameters
supportLevel = input(100, title="Support Level")
resistanceLevel = input(200, title="Resistance Level")
riskRewardRatio = input(2, title="Risk-Reward Ratio")
trailStopLoss = input(true, title="Use Trailing Stop Loss")

// Calculate trend direction based on trend lines
trendUp = close > request.security(syminfo.tickerid, "D", close[1])
trendDown = close < request.security(syminfo.tickerid, "D", close[1])

// Buy signal condition
buySignal = close < supportLevel and trendUp

// Sell signal condition
sellSignal = close > resistanceLevel and trendDown

// Entry point and exit conditions
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.entry("Sell", strategy.short, when=sellSignal)

// Calculate targets and stop-loss levels
targetPrice = close + (close - supportLevel) * riskRewardRatio
stopLossLevel = supportLevel

// Plot support and resistance levels
plot(supportLevel, color=color.green, linewidth=2, title="Support Level")
plot(resistanceLevel, color=color.red, linewidth=2, title="Resistance Level")

// Plot targets and stop-loss levels
plot(targetPrice, color=color.blue, linewidth=2, title="Target Price")
plot(stopLossLevel, color=color.orange, linewidth=2, title="Stop Loss Level")

// Trailing stop-loss
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=stopLossLevel, profit=targetPrice)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", loss=targetPrice, profit=stopLossLevel)

// Plot trail stop loss
if (trailStopLoss)
    strategy.exit("Trailing Stop Loss", from_entry="Buy", loss=stopLossLevel)
    strategy.exit("Trailing Stop Loss", from_entry="Sell", loss=stopLossLevel)