클래식 듀얼 트렌드 팔로잉 전략


생성 날짜: 2023-11-01 16:54:29 마지막으로 수정됨: 2023-11-01 16:54:29
복사: 0 클릭수: 578
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

클래식 듀얼 트렌드 팔로잉 전략

개요

이 전략은 클래식 피벗 포인트를 계산하고 RSI 지표를 사용하여 현재 트렌드 방향을 판단하여, 주식에 대한 이중 트렌드 추적을 구현하며, 중간에 짧은 선의 트렌드 거래에 적용된다.

전략 설명

이 전략은 다음과 같은 단계를 통해 두 가지 트렌드 추적을 수행합니다.

  1. 클래식 피벗 포인트를 계산합니다. 중심점 (Pivot), 지지 1 (S1), 저항 1 (R1), 지지 2 (S2), 저항 2 (R2) 등이 포함됩니다.

  2. RSI를 사용하여 주식의 트렌드 방향을 판단하십시오. RSI 80 이상은 초고매 지역이며, 20 이하는 초매 지역입니다.

  3. 주식의 일선 레벨의 트렌드 방향을 판단한다. 종결 가격이 전날의 R2보다 크면 강점으로 간주한다. 종결 가격이 전날의 S2보다 작으면 약점으로 간주한다.

  4. Pivot 점과 RSI 지표와 결합하여 일일 라인 레벨 트렌드 방향에 따라 당일 거래 전략을 수립하십시오.

    • 만약 일선이 강하다 (폐쇄가격>R2), 피벗 포인트 아래에서 반조치 구매점을 관찰하거나, S1 아래에서 구매한다.

    • 만약 일선이 약한 경우 (폐쇄가격

  5. 스톱 손실을 설정하십시오. 강점은 전날의 S1에 의해 중단되고, 약점은 전날의 R1에 의해 중단됩니다.

이 전략은 Pivot 점을 계산하여 중장선 트렌드 방향을 판단하고, RSI와 같은 지표와 함께 단기 트렌드 및 특정 입구점을 결정하고, 주식 가격의 이중 트렌드를 추적합니다. 중장선 트레이딩에 적용됩니다.

우위 분석

이 전략의 주요 장점은 다음과 같습니다.

  1. 중장기적 추세와 단기적 추세를 동시에 추적할 수 있고, 시장의 변화에 유연하게 적응할 수 있다.

  2. Pivot 점은 특정 추세를 판단하는 능력을 가지고 있으며, 중장선 추세를 효과적으로 판단할 수 있다.

  3. RSI와 같은 지표는 단기간에 과매매되는 상황을 판단하여 특정 진입 지점을 결정하는 데 도움을 줍니다.

  4. 전략 운영 규칙은 명확하고 간단하며, 쉽게 익힐 수 있습니다.

  5. 위험은 통제되고, 막점이 명확하다.

위험 분석

이 전략의 주요 위험은 다음과 같습니다.

  1. 피벗 포인트의 오류가 있을 수 있으며, 중장선 트렌드를 정확하게 판단할 수 없다. 파라미터를 조정하거나 다른 지표의 조합을 통해 개선할 수 있다.

  2. RSI 등의 지표는 잘못된 신호를 보낼 수 있다. 적절한 수치를 조정하거나, 다른 지표와 조합하여 사용할 수 있다.

  3. 정지점 설정은 너무 무단일 수 있으며, 정지가 뚫려지는 위험을 완전히 피할 수 없습니다. 적절한 경우 일정 버퍼 영역을 남길 수 있습니다.

  4. 전략적 인 철수는 더 큰 가능성이 있으며, 심리적 준비와 충분한 재정적 지원이 필요합니다.

  5. 너무 자주 거래할 위험이 있다. 포지션 개설 조건을 적절히 조정하여 너무 자주 거래하는 것을 피할 수 있다.

최적화 방향

이 전략은 다음과 같은 측면에서 최적화될 수 있습니다.

  1. RSI의 변수를 조정하거나, 피벗 포인트의 계산 방법을 최적화하는 것과 같은 다른 변수 조합을 시도하여 최적의 변수 조합을 찾으십시오.

  2. KDJ, MACD 등과 같은 다른 지표를 추가하거나 조합하여 신호를 더 정확하고 신뢰할 수 있습니다.

  3. 이동 상쇄, 오프 경기 상쇄와 같은 상쇄 전략을 최적화하여 상쇄 상쇄의 위험을 줄이십시오.

  4. 포지션 관리를 최적화하고 단일 포지션 크기를 적절히 제어하여 단일 손실의 영향을 줄입니다.

  5. 포지션 개설 조건을 최적화하여 너무 자주 출입하는 것을 피하십시오. 필터링 조건을 설정할 수 있습니다.

  6. 다양한 품종의 효과를 테스트하고, 최적의 효과를 얻기 위해 파라미터를 조정한다.

  7. 자동 중단 전략을 추가하여 수익을 고정하십시오.

요약하다

이 전략은 피벗 포인트 판단 중장선 트렌드를 계산하고, RSI와 같은 지표 보조 판단 단기 트렌드 및 특정 입시점을 활용하여 주가 가격 이중 트렌드를 추적 할 수 있으며, 전체적인 운영 논리는 명확하고 합리적이며, 중장선 거래 효과는 좋습니다. 그러나 특정 확률에 대한 잘못된 신호 위험이 있지만, 위험을 줄이기 위해 파라미터 포지션을 추가로 최적화하고, 중지 손실을 엄격하게 제어하며, 가능한 큰 회수를 제어하기 위해 위치 규모를 적절하게 제한해야합니다. 이 전략을 지속적으로 최적화하고 개선하면 안정적인 투자 수익을 얻을 수 있습니다.

전략 소스 코드
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="swing trade", shorttitle="vinay_swing", overlay=true)
pf = input(false,title="Show Filtered Pivots")
sd = input(true, title="Show Daily Pivots?")

//moving average
len = input(50, minval=1, title="Length")
src = input(close, title="Source")
out = ema(src, len)

//RSI INPUT
length = input( 7 )
overSold = input( 20 )
overBought = input( 80 )
price = close
vrsi = rsi(price, length)


// Classic Pivot
pivot = (high + low + close ) / 3.0
// Filter Cr
bull= pivot > (pivot + pivot[1]) / 2 + .0025
bear= pivot < (pivot + pivot[1]) / 2 - .0025
// Classic Pivots
r1 = pf and bear ? pivot + (pivot - low) : pf and bull ? pivot + (high - low) : pivot + (pivot - low)
s1 = pf and bull ? pivot - (high - pivot) : pf and bear ? pivot - (high - low) : pivot - (high - pivot)
r2 = pf ? na : pivot + (high - low)
s2 = pf ? na : pivot - (high - low)
BC = (high + low) / 2.0
TC = (pivot - BC) + pivot

//Pivot Average Calculation
smaP = sma(pivot, 3)

//Daily Pivots 
dtime_pivot = request.security(syminfo.tickerid, 'D', pivot[1])
dtime_pivotAvg = request.security(syminfo.tickerid, 'D', smaP[1])
dtime_r1 = request.security(syminfo.tickerid, 'D', r1[1]) 
dtime_s1 = request.security(syminfo.tickerid, 'D', s1[1]) 
dtime_r2 = request.security(syminfo.tickerid, 'D', r2[1]) 
dtime_s2 = request.security(syminfo.tickerid, 'D', s2[1])
dtime_BC = request.security(syminfo.tickerid, 'D', BC[1])
dtime_TC = request.security(syminfo.tickerid, 'D', TC[1])

offs_daily = 0
plot(sd and dtime_pivot ? dtime_pivot : na, title="Daily Pivot",style=circles, color=fuchsia,linewidth=1) 
plot(sd and dtime_r1 ? dtime_r1 : na, title="Daily R1",style=circles, color=#DC143C,linewidth=1) 
plot(sd and dtime_s1 ? dtime_s1 : na, title="Daily S1",style=circles, color=lime,linewidth=1) 
plot(sd and dtime_r2 ? dtime_r2 : na, title="Daily R2",style=circles, color=maroon,linewidth=1) 
plot(sd and dtime_s2 ? dtime_s2 : na, title="Daily S2",style=circles, color=#228B22,linewidth=1)
plot(sd and dtime_BC ? dtime_BC : na, title="Daily BC",style=circles, color=black,linewidth=1)
plot(sd and dtime_TC ? dtime_TC : na, title="Daily TC",style=circles, color=black,linewidth=1)

bull1=  (close > dtime_r2)
bull2= (low < dtime_pivot) or (low < dtime_s1) 
bull3= dtime_pivot > dtime_pivot[1]
bullishenglufing=bull2 and bull3
bullishenglufing1=bull1 and (close > out) and (crossover(vrsi, overBought))
longCondition = bull1[1] and ((low < dtime_TC) or (low < dtime_BC) or (low < dtime_s1))

bear1=  (close < dtime_s2)
bear2= (high > dtime_pivot) or (high < dtime_r1) 
bear3= dtime_pivot < dtime_pivot[1]
bearishenglufing=bear2 and bear3
bearishenglufing1=bear1 and (close < out) and (crossunder(vrsi, overSold))
shortCondition = bear1[1] and ((high > dtime_BC) or (high > dtime_TC) or (high > dtime_r1))

plotshape(bullishenglufing, style = shape.triangleup, location = location.belowbar, color = green, size = size.tiny)
plotshape(bearishenglufing, style = shape.triangledown, location = location.abovebar, color = red, size = size.tiny)

if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)