이 전략은 종합적인 거래 신호를 생성하기 위해 이중 요인 역전 및 개선된 가격 부피 트렌드 하위 전략을 결합합니다. 이중 요인 역전 전략은 그의 책의 183 페이지에서 울프 젠슨의 아이디어를 기반으로하며, 주식 가격이 이틀 동안 역전되고 스토카스틱 지표 조건이 충족되면 신호를 생성합니다. 개선된 가격 부피 트렌드 전략은 시장의 방향과 동력을 판단하기 위해 가격과 거래 부피의 공동 연구를 따르고 있습니다. 두 전략은 서로를 검증 할 수 있으며 결합 사용은 안정성을 향상시킬 수 있습니다.
이중 요인 반전 하위 전략은 2 일 가격 반전 원칙과 스토카스틱 지표의 복수 판단을 사용합니다. 이전 종료 가격이 높지만 현재 종료 가격이 하향으로 반전되고 빠른 스토카스틱이 느린 스토카스틱보다 낮고 빠른 스토카스틱이 50 이상인 경우 짧은 신호가 생성됩니다. 이전 종료 가격이 낮지만 현재 종료 가격이 상향으로 반전되고 빠른 스토카스틱이 느린 스토카스틱보다 높고 빠른 스토카스틱이 50 이하인 경우 긴 신호가 생성됩니다.
개선된 가격량 트렌드 전략은 가격과 거래량 공동 연구를 기반으로 합니다. 계산 공식은: PxVFactor = PriceFactor + Scale * CumPVT, 여기서 PriceFactor는 가격 요소이며, CumPVT는 축적 된 힘 지표입니다. 그 다음 PxVFactor의 길이-일 간단한 이동 평균을 계산하고 현재 PxVFactor 값과 비교하여 시장 추세와 동력을 결정합니다.
콤보 전략은 두 가지 하위 전략의 신호를 포괄적으로 고려합니다. 이중 요인 역전과 개선 된 가격 부피 추세가 상승하거나 하락할 때 대응하는 긴 신호와 짧은 신호가 생성됩니다.
결론적으로, 이중 요인 역전 및 개선된 가격량 트렌드의 조합 전략은 역전 및 트렌드의 판단을 두 차원에서 결합합니다. 둘은 안정성을 향상시키기 위해 서로 신호를 확인할 수 있습니다. 트렌드 지표를 보조 판단으로 추가하는 것은 함정에 빠지기 쉬운 역전 전략에서 필요합니다. 또한 거래량 요인을 통합하는 것은 시장 역전 및 동력을 결정하는 데도 필수적입니다. 이 전략은 특정 실용적 가치와 함께 내일 및 단기 운영에 적합한 중장기 매개 변수를 사용합니다.
/*backtest start: 2024-01-17 00:00:00 end: 2024-01-24 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 23/02/2021 // 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 // The related article is copyrighted material from // Stocks & Commodities. // // 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 MPVT(Level,Scale,Length) => pos = 0.0 xCumPVT = 0.0 xOHLC4 = ohlc4 xV = volume rV = xV / 50000 xCumPVT := nz(xCumPVT[1]) + (rV * (xOHLC4 - xOHLC4[1]) / xOHLC4[1]) nRes = Level + Scale * xCumPVT xMARes = sma(nRes, Length) pos:= iff(nRes > xMARes, 1, iff(nRes < xMARes, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Modified Price-Volume Trend", shorttitle="Combo", overlay = true) line1 = input(true, "---- 123 Reversal ----") Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- line2 = input(true, "---- Price-Volume Trend ----") LevelPVT = input(1) Scale = input(1) LengthPVT = input(23) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posMPVT = MPVT(LevelPVT,Scale,LengthPVT) pos = iff(posReversal123 == 1 and posMPVT == 1 , 1, iff(posReversal123 == -1 and posMPVT == -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 )