스토카스틱 회전 요인 및 주요 회전 신호에 기초한 복합 회전 전략

저자:차오장, 날짜: 2023-12-13 17:54:34
태그:

img

전반적인 설명

이 전략은 합성 거래 신호를 얻기 위해 스토카스틱 전환 요인 및 주요 반전 신호, 두 가지 유형의 반전 전략을 결합합니다. 먼저 스토카스틱 전환 요인을 사용하여 가격이 반전 징후를 보는지 여부를 결정합니다. 그 다음은 잘못된 반전을 필터링하고 진정한 반전 기회를 확보하여 거래 위험을 줄이기 위해 키 반전 신호를 통합합니다.

전략 원칙

스토카스틱 회전 요인

이 부분은 울프 젠센의 책?? How I Tripped My Money in the Futures Market?? 에서 소개된 역전 전략에서 유래한다. 그것은 가격 추세가 역전되었는지 여부를 결정하기 위해 폐쇄 가격과 스토카스틱 지표의 역전 패턴을 결합한다.

종료 가격이 2 일 연속으로 이전 종료 가격보다 높고 9 일 느린 스토카스틱 라인이 50 미만으로 길게 갈 때 이것은 가격이 단기간에 계속 상승했음을 나타냅니다. 그러나 스토카스틱 지표는 주가가 과도하게 구매되어 가능한 역전 하락을 알리는 것을 보여줍니다.

마감 가격은 2 일 연속으로 이전 마감 가격보다 낮고 9 일 빠른 스토카스틱 라인이 50 이상인 경우 마감됩니다. 이것은 가격이 단기간에 계속 하락하고 있음을 나타냅니다. 그러나 스토카스틱 지표는 주가가 과도하게 팔리고 있음을 나타냅니다.

주요 반전 신호

주요 반전 신호는 하루 동안 가격이 새로운 최고 또는 최저에 도달하고 눈에 띄게 반전되는 K-라인 패턴을 의미합니다. 종종 시장 트렌드 변화가 나타납니다.

황소 시장에서 가격이 새로운 최고치를 달성 한 후, 닫기 가격이 전날의 최저 가격에 가깝다면, 그것은 주요 반전 긴 신호를 구성합니다. 곰 시장에서 가격이 새로운 최저치를 달성 한 후, 닫기 가격이 전날의 최고 가격에 가깝다면 중요한 반전 단축 신호를 구성합니다.

전략 의 장점

  1. 여러 지표와 K-라인 패턴을 결합하면 거래 신호의 정확도가 향상됩니다.

  2. 역전 이론을 바탕으로 잠재적인 역전 기회를 포착합니다.

  3. 동시다발적으로 트렌드와 스토카스틱 지표를 판단하면 잘못된 신호를 효과적으로 필터링할 수 있습니다.

  4. 주요 반전 신호는 잘못된 반전을 방지하고 거래 위험을 줄일 수 있습니다.

위험 과 최적화

  1. 반전 패턴이 나타나면 시장이 실제로 반전되지 않을 수 있으며 콜백 위험을 초래합니다. 위험을 제어하기 위해 스톱 로스를 설정할 수 있습니다.

  2. 스토카스틱 지표와 가격 사이에 오차가 발생할 수 있으며, 잘못된 신호가 발생할 수 있습니다. 스토카스틱 지표의 매개 변수는 최적화되거나 확인을 위해 다른 지표와 결합 될 수 있습니다.

  3. 이 전략은 주로 내일 및 단기 거래를 기반으로하며 장기적인 트렌딩 시장에 대처할 수 없습니다. 트렌드 및 차트 패턴과 같은 방법이 추가적으로 개선 될 수 있습니다.

결론

이 전략은 잠재적인 반전 기회를 포착하기 위해 가격 액션, 스토카스틱 지표 및 주요 반전 신호를 결합합니다. 독립적인 반전 거래 방법과 비교하면 반전의 시기를 더 정확하게 결정할 수 있으며 잘못된 신호를 필터링할 수 있습니다. 그러나 반전 후 인회 위험과 스토카스틱과 가격의 차이에 여전히주의를 기울여야합니다. 매개 변수 최적화, 스톱 로스 설정 및 다른 전략과의 추가 통합을 통해 더 신뢰할 수있는 거래 전략을 얻을 수 있습니다.


/*backtest
start: 2023-12-05 00:00:00
end: 2023-12-12 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 22/12/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// A key reversal is a one-day trading pattern that may signal the reversal of a trend. 
// Other frequently-used names for key reversal include "one-day reversal" and "reversal day."
// How Does a Key Reversal Work?
// Depending on which way the stock is trending, a key reversal day occurs when:
// In an uptrend -- prices hit a new high and then close near the previous day's lows.
// In a downtrend -- prices hit a new low, but close near the previous day's highs
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

KRU(nLength) =>
    pos = 0.0
    xLL = lowest(low[1], nLength)
    C1 = iff(low < xLL and close > close[1], true, false)
    pos := iff(C1, 1, 0)
    pos

strategy(title="Combo Backtest 123 Reversal & Key Reversal Up", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
nLength = input(1, minval=1, title="Enter the number of bars over which to look for a new low in prices.")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posKRU = KRU(nLength)
pos = iff(posReversal123 == 1 and posKRU == 1 , 1,
	   iff(posReversal123 == -1 and posKRU == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

더 많은