분자 오시레이터 전략

저자:차오장, 날짜: 2023-11-06 15:45:02
태그:

img

개요:

퍼센티엄 볼륨 오시일레이터 (PVO) 는 볼륨의 모멘텀 오시일레이터이다. PVO는 볼륨 트렌드의 변화를 측정하기 위해 두 개의 볼륨 기반 이동 평균의 비율로 차이를 측정한다. 이 전략은 PVO를 사용하여 볼륨 트렌드를 확인하거나 반박하기 위해 볼륨 트렌드를 식별한다. 일반적으로 PVO가 상승하거나 긍정적일 때 브레이크 오브 또는 서포트 브레이크가 검증된다.

전략 논리:

  1. 단기 거래량 EMA를 계산합니다 (기준 12일)
  2. 장기 볼륨 EMA를 계산합니다 (기본 26일)
  3. 짧은 EMA와 긴 EMA의 비율 차이로 PVO를 계산합니다.
  4. PVO에서 신호 라인 EMA를 계산합니다 (디폴트 9일)
  5. PVO와 신호선 사이의 차이로 히스토그램을 계산합니다
  6. 신호선이 PVO 위를 넘을 때 짧게, 그 아래를 넘을 때 길게
  7. 거래 방향 전환 옵션
  8. 신호에 기반한 색상 바

이 전략은 이중 EMA 구성을 통해 PVO 지표를 형성하고 잠재적인 가격 방향을 예측하기 위해 부피 트렌드 변화를 식별하는 신호선을 사용합니다. 일반 이중 EMA와 달리 PVO는 부피 증가 / 감소에 대한 명확한 판단을 위해 부피 비율 차이에 더 집중합니다.

장점:

  1. 초기 경고로 미래의 가격 동향을 결정하기 위해 부피 변화를 활용합니다.
  2. 융통성 있는 매개 변수 조정과 함께 간단하고 실용적인 이중 EMA 구조
  3. 직관적인 트렌드 판단과 간편한 조작을 위해 시각화 된 색상 바
  4. 신호 선은 잘못된 신호를 줄이고 안정성을 향상시킵니다.
  5. 선택적 리버스 트레이딩은 전략 사용을 풍요롭게 합니다.
  6. 중장기 트렌드와 단기 거래에 적용됩니다.

이 전략은 가격 행동에 대한 볼륨 변화의 지표적 효과를 완전히 활용합니다. 단일 지표와 비교하면 PVO 구조는 볼륨 트렌드 변화를 판단하고 잠재적인 가격 방향을 사전에 감지 할 수있는 사용자 정의 가능한 매개 변수로 더 안정적입니다. 직관적인 색상의 차별화는 트렌드 결정과 역 거래 옵션을 강화하여 다재다능한 볼륨 기반 전략이됩니다.

위험성:

  1. 부피 지표가 가격 신호에 뒤떨어지고 분리가 있을 수 있습니다.
  2. 잘못된 EMA 매개 변수 설정은 시장 상태를 잘못 판단할 수 있습니다.
  3. 리버스 거래는 주의가 필요하며 손실을 증가시킬 수 있습니다.
  4. 부피 변화만으로는 특정 입점점을 결정할 수 없습니다.
  5. 부피는 가격을 완전히 예측하지 못하며 다른 지표와 결합해야 합니다.

부피 변화는 종종 가격 작용에 뒤떨어지며 PVO는 가격이 트렌드 종료에 접근 할 때 잘못된 신호를 줄 수 있습니다. 잘못된 매개 변수 설정은 판단 정확성에 영향을 줄 수 있습니다. 트렌드가 확장 될 수 있으므로 역 거래 할 때 주의가 필요합니다. 부피 만 정확한 입점 지점을 결정할 수 없으며 타이밍에 대한 다른 지표의 도움이 필요합니다. 부피는 가격을 완전히 예측하지 않으며 신중한 추종이 필요합니다.

최적화:

  1. 다양한 제품 및 시간 프레임에 대한 EMA 기간을 최적화하십시오.
  2. 유효하지 않은 신호를 피하기 위해 필터 조건을 추가
  3. 입력 시기를 확인하기 위해 다른 지표를 결합하십시오.
  4. 스톱 손실을 추가합니다

트렌드 검출을 위해 최적의 시기를 찾기 위해 EMA 조합을 테스트하고 최적화합니다. 비효율적인 신호를 필터하기 위해 볼륨 변동 문턱을 추가합니다. 추가 엔트리 확인을 위해 MACD, KD를 통합합니다. 단일 거래 손실을 제어하기 위해 스톱 로스를 설정합니다. 이것들은 전략 적용 가능성을 크게 향상시킵니다.

결론:

비율 볼륨 오시일레이터 전략은 잠재적인 가격 방향을 예측하기 위해 볼륨 EMA 사이의 비율 차이를 계산하여 볼륨 트렌드 변화를 판단합니다. 볼륨 변동을 측정하기 위해 간단하고 효과적인 이중 EMA 구조를 채택하고 시각 효과를 향상시키기 위해 직관적인 색상 코딩을 사용합니다. 유연한 역 거래 옵션과 매개 변수 설정으로 중장기 및 단기 거래 모두에 적합합니다. 그러나 볼륨 지표가 가격 신호에 뒤떨어지고 정확한 진입 시기를 결정할 수 없기 때문에 매개 변수 및 다른 지표의 통합은 전략 성능을 향상시키기 위해 최적화가 필요합니다.


/*backtest
start: 2023-10-06 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 27/09/2017
// The Percentage Volume Oscillator (PVO) is a momentum oscillator for volume. 
// PVO measures the difference between two volume-based moving averages as a 
// percentage of the larger moving average. As with MACD and the Percentage Price 
// Oscillator (PPO), it is shown with a signal line, a histogram and a centerline. 
// PVO is positive when the shorter volume EMA is above the longer volume EMA and 
// negative when the shorter volume EMA is below. This indicator can be used to define 
// the ups and downs for volume, which can then be use to confirm or refute other signals. 
// Typically, a breakout or support break is validated when PVO is rising or positive. 
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Percentage Volume Oscillator (PVO)", shorttitle="PVO")
LengthShortEMA = input(12, minval=1)
LengthLongEMA = input(26, minval=1)
LengthSignalEMA = input(9, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=gray, linestyle=line)
xShortEMA = ema(volume , LengthShortEMA)
xLongEMA = ema(volume , LengthLongEMA)
xPVO = ((xShortEMA - xLongEMA) / xLongEMA) * 100
xSignalEMA = ema(xPVO , LengthSignalEMA)
xPVOHisto = xPVO - xSignalEMA
pos = iff(xSignalEMA < xPVO, -1,
	   iff(xSignalEMA > xPVO, 1, nz(pos[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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(xPVO, color=blue, title="PVO")
plot(xSignalEMA, color=red, title="Signal")
plot(xPVOHisto, color=gray, title="PVO Histo", style=histogram)

더 많은