최고가 및 최저가 손절매 전략


생성 날짜: 2024-03-08 14:32:30 마지막으로 수정됨: 2024-03-08 14:32:30
복사: 0 클릭수: 597
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

최고가 및 최저가 손절매 전략

개요

이 전략은 근래의 최고 가격과 최저 가격의 정지 손실을 기반으로 빠르게 트렌드를 차단하고 위험을 엄격하게 제어한다. 가격이 연속적으로 상승할 때 다중 상장을 열고, 연속적으로 하락할 때 공명 상장을 열는다. 포지션을 보유할 때, 다중 상장 손실은 가장 최근의 몇 K 라인의 최저 가격이며, 공명 상장 손실은 가장 최근의 몇 K 라인의 최고 가격이다.

전략 원칙

  1. 통과하다input함수 설정 최고 가격 및 최저 가격 참조 주기hiLen그리고loLen20
  2. 사용ta.highest(high, hiLen)[1]가장 높은 값을 계산하기 전에 K 선까지hiHighs사용ta.lowest(low, loLen)[1]K선까지의 최저값을 계산합니다.loLows
  3. 이 경우, 단 하나의 스톱포지션이loLows, 빈 카드 중지 위치hiHighs이 그림은 지분을 가지고 있지 않은 상태에서 그리는 것이 아니라, 직관적으로 확인하기 쉽다.
  4. 거래 신호 조건을 정의합니다.
    • 최근 3개의 K선 종식시장 가격이 연속적으로 상승했다.higherCloses
    • 최근 3개 K선 종점 가격이 연속으로 하락했다.lowerCloses
    • 현재 지분을 보유하지 않은 것은isFlat
  5. 포지션 개설: 만족isFlat그리고higherCloses“이건 정말 대단한 일입니다.isFlat그리고lowerCloses비어있는 표는
  6. 손해 차단: 다중 입장을 보유할 때, 손해 차단 가격은loLows이 경우, 공인인증서를 보유한 경우,hiHighs

간단히 말해서, 이 전략은 근래 최고 최저 가격을 설정하여 이동 상쇄를 하고, 강한 추세에 빠르게 접근하고, 상쇄를 엄격히 제한하여, 효율적으로 추세 수익을 잡는다.

우위 분석

  1. 간단하고 효과적: 이 전략의 논리는 명확하고 간단하며, 가격 자체에 기반한 스톱로스를 설정하여 트렌드를 효과적으로 포착할 수 있다.
  2. 빠른 절단: 연속적으로 3개의 K선 동방향 운동으로 포지션을 개설하여 새로운 트렌드에 빠르게 절단할 수 있다.
  3. 스톱 로드 엄격: 스톱 로드 포지션은 최근 최고 가격 또는 최저 가격으로, 현재 가격과 밀접하게 관련되어 있으며, 리스크 컨트롤은 엄격하다.
  4. 이동 스톱: 스톱 포지션은 가격에 따라 계속 업데이트되며, 수익을 잠금하고 트렌드 공간을 유지할 수 있습니다.
  5. 적응력: 다양한 시장과 품종에 적합하며, 매개 변수도 유연하게 조정할 수 있다.

위험 분석

  1. 흔들림 시장 위험: 흔들림 시장은 자주 포지션 문을 닫는 데로 이어지며, 전략은 좋지 않습니다. 해결책은 흔들림 시장을 피하거나 포지션 문을 연 조건을 확대하여 필터링하는 것입니다.
  2. 트렌드 말기 위험: 트렌드가 반전될 때, 포지션을 개시했을 때 반전이 발생할 수 있으며, 이로 인해 손실이 발생할 수 있습니다. 해결책은 트렌드 판단 지표와 함께 제때 종료하는 것입니다.
  3. 극한상황 위험: 극한상황이 반발을 초과하거나 초저축을 할 때, 이동한 스톱로드는 위치를 잘 보호하지 못할 수 있다. 해결책은 고정된 스톱로드를 설정하는 것이다.
  4. 매개 변수 위험: 매개 변수 설정이 잘못되면 매개 변수 최적화를 통해 매개 변수 최적화를 할 수 있습니다.

최적화 방향

  1. 트렌드 판단: 평균선과 같은 트렌드 판단 지표를 추가하고, 큰 트렌드 방향으로만 포지션을 개설하여 승률을 높인다.
  2. 결합 변동: ATR과 같은 변동 지표에 따라 변수를 조정하여 다른 변동에 대응한다.
  3. 동력 확인: 동력 지표 확인, MACD와 같이, 동력 지원 아래만 포지션을 개설한다.
  4. 최적화 스톱: 백분율 스톱을 결합하여 극단적인 상황을 방지할 수 있으며, 보호 스톱을 증가시켜 단편적 손실을 줄일 수 있다.
  5. 포지션 관리: 포지션 관리를 최적화 할 수 있습니다. 예를 들어 위험 수준에 따라 포지션을 조정하여 위험 수익률을 높일 수 있습니다.

요약하다

이 최고 최저 가격 중단 전략은 가격 자체를 기반으로 동적 중단을 설정하고, 강력한 트렌드를 효율적으로 포착하고, 위험을 엄격하게 제어한다. 이 전략은 간단하고 효과적이며, 빠르게 절단되며, 엄격하게 중단되며, 적응력이 강하다. 그러나, 변동 시장, 트렌드 끝, 극단적인 상황에서는 성능이 좋지 않으며, 변수 설정도 주의해야 한다. 추세와 동적 판단, 중지 손실 및 위치 관리를 최적화하는 방법을 추가하여 향후 개선할 수 있다.

전략 소스 코드
/*backtest
start: 2023-03-02 00:00:00
end: 2024-03-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Highest high/lowest low stop", overlay=true)

// STEP 1:
// Make inputs for length of highest high and lowest low
hiLen = input.int(20, title="Highest High Lookback", minval=2)
loLen = input.int(20, title="Lowest Low Lookback", minval=2)

// STEP 2:
// Calculate recent extreme high and low
hiHighs = ta.highest(high, hiLen)[1]
loLows  = ta.lowest(low, loLen)[1]

// Plot stop values for visual confirmation
plot(strategy.position_size > 0 ? loLows : na,
     style=plot.style_circles, color=color.green, linewidth=3,
     title="Lowest Low Stop")

plot(strategy.position_size < 0 ? hiHighs : na,
     style=plot.style_circles, color=color.red, linewidth=3,
     title="Highest High Stop")

// Trading conditions for this example strategy
higherCloses = close > close[1] and
     close[1] > close[2] and 
     close[2] > close[3]

lowerCloses = close < close[1] and
     close[1] < close[2] and 
     close[2] < close[3]

isFlat = strategy.position_size == 0

// Submit entry orders
if isFlat and higherCloses
    strategy.entry("EL", strategy.long)

if isFlat and lowerCloses
    strategy.entry("ES", strategy.short)

// STEP 3:
// Submit stops based on highest high and lowest low
if strategy.position_size > 0
    strategy.exit("XL HH", stop=loLows)

if strategy.position_size < 0
    strategy.exit("XS LL", stop=hiHighs)