
이 전략은 가격 운동 지표 Chandre 운동 흔들기 ((CMO) 와 그것의 가중된 이동 평균 ((WMA) 을 기반으로 한 쌍평선 거래 전략이다. Attempts to identify trend reversals and continuation Using CMO crossover
이 전략은 먼저 CMO를 계산하고, 이 지표는 가격의 온라인 동력 변화를 측정한다. 긍정적 인 값은 상승 동력을 나타내고, 부정적인 값은 하락 동력을 나타냅니다. 그리고 CMO의 WMA를 계산한다.
CMO를 계산하는 핵심 단계는 다음과 같습니다.
이 전략의 장점은 가격 중기 경향의 전환점을 포착하는 것이다. CMO의 절대값 크기는 가격 운행 경향의 강도를 반영하며, WMA는 파동 위조의 돌파구를 유리한 것이다.
이 전략의 가장 큰 장점은 CMO 지표의 절대값을 사용하여 시장 대중의 감정을 판단하고, WMA 波을 사용하여 중기 트렌드의 전환점을 식별하는 것입니다. 단일 이동 평균 전략에 비해 탄력적인 공간을 더 많이 갖는 중기 트렌드를 더 잘 포착 할 수 있습니다.
CMO는 가격 변화를 표준화하여 100에서 100의 범위에 매핑하여 시장 대중의 정서를 판단하는 데 도움이됩니다. 절대 값 크기는 현재 트렌드의 강도를 나타냅니다. WMA는 CMO에 대한 추가적인 조사를 통해 너무 많은 잘못된 신호를 피합니다.
이 전략의 주요 위험은 다음과 같습니다.
대응 최적화 방법은 다음과 같습니다:
이 전략의 최적화 방향은 주로 변수 최적화, 신호 필터링 및 스톱로드에 집중된다:
CMO와 WMA의 변수 최적화: 순환을 통해 최적의 변수 조합을 찾아내는 방법
거래량, 강도, 약도 등의 보조 지표와 결합하여 신호를 필터링하여 가짜 브레이크를 방지합니다.
CMO와 WMA에서 가격이 다시 떨어질 때 동적 상쇄를 추가합니다.
브레이크아웃 실패 패턴은 CMO와 WMA가 먼저 중요한 지점을 돌파하고 곧 다시 떨어지는 경우를 입력 신호로 간주 할 수 있습니다.
더 긴 선주기 지표와 결합하여 큰 트렌드를 판단하여 역동적인 거래를 피할 수 있습니다.
이 전략은 전체적으로 CMO 지표를 사용하여 트렌드 강도와 전환점을 판단하고, WMA와 결합하여 기류를 생성하는 거래 신호가 전형적인 양평선 시스템에 속한다. 단일 MA 전략에 비해 더 강한 탄력성 중기 트렌드를 포착하는 장점이 있다. 그러나 매개 변수 설정과 기류 측면에서 최적화 할 여지가 있으며, 거래 주파수를 적절히 제어하고 동적 스톱로스를 도입하여 시스템의 안정성을 더욱 향상시킬 수 있다.
/*backtest
start: 2023-12-25 00:00:00
end: 2024-01-24 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 18/10/2018
// This indicator plots Chandre Momentum Oscillator and its WMA on the
// same chart. This indicator plots the absolute value of CMO.
// The CMO is closely related to, yet unique from, other momentum oriented
// indicators such as Relative Strength Index, Stochastic, Rate-of-Change,
// etc. It is most closely related to Welles Wilder?s RSI, yet it differs
// in several ways:
// - It uses data for both up days and down days in the numerator, thereby
// directly measuring momentum;
// - The calculations are applied on unsmoothed data. Therefore, short-term
// extreme movements in price are not hidden. Once calculated, smoothing
// can be applied to the CMO, if desired;
// - The scale is bounded between +100 and -100, thereby allowing you to clearly
// see changes in net momentum using the 0 level. The bounded scale also allows
// you to conveniently compare values across different securities.
////////////////////////////////////////////////////////////
strategy(title="CMO & WMA Backtest ver 2.0", shorttitle="CMO & WMA")
Length = input(9, minval=1)
LengthWMA = input(9, minval=1)
BuyZone = input(60, step = 0.01)
SellZone = input(-60, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
hline(0, color=gray, linestyle=line)
xMom = abs(close - close[1])
xSMA_mom = sma(xMom, Length)
xMomLength = close - close[Length]
nRes = 100 * (xMomLength / (xSMA_mom * Length))
xWMACMO = wma(nRes, LengthWMA)
pos = 0.0
pos := iff(xWMACMO > BuyZone, 1,
iff(xWMACMO < SellZone, -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(nRes, color=blue, title="CMO")
plot(xWMACMO, color=red, title="WMA")