
이중 EMA 가격 변동 전략은 두 개의 다른 기간의 EMA 사이의 차이를 계산하여 시장의 다공동적 태도와 강도를 판단합니다. 빠른 라인과 느린 라인 사이의 차이는 0을 통과하면 낙향 신호입니다. 빠른 라인과 느린 라인 사이의 차이는 0을 통과하면 낙향 신호입니다.
이 전략은 간단하고 쉽게 사용되며, EMA의 차이를 통해 시장의 힘과 방향을 판단한다. 그러나 또한 일정 정도의 지연성이 존재하며, 터닝 포인트 (turning point) 를 적시에 잡을 수 없다.
이중 EMA 가격 변동 전략의 핵심 지표는 APO, 즉 Absolute Price Oscillator이며, 두 EMA 사이의 차이를 나타냅니다. 계산 공식은 다음과 같습니다.
APO = EMA(短期) - EMA(长期)
특히, 이 전략에서 APO의 계산은 다음과 같습니다.
xShortEMA = ema(收盘价, LengthShortEMA)
xLongEMA = ema(收盘价, LengthLongEMA)
xAPO = xShortEMA - xLongEMA
여기서 LengthShortEMA와 LengthLongEMA는 각각 단기 및 장기 EMA의 주기 길이를 나타냅니다.
APO의 몇 가지 중요한 판단 규칙:
APO의 실시간 값에 따라 시장의 빈 상태와 진입 시간을 판단한다.
이중 EMA 가격 변동 전략은 다음과 같은 몇 가지 주요 장점이 있습니다.
이중 EMA 가격 변동 전략에는 다음과 같은 위험도 있습니다.
합리적인 스톱으로 단독 손실을 줄이고, 변수를 최적화하여 다른 주기에 적응하고, 다른 지표와 결합하여 신호를 필터링하여 전략의 안정성을 높여서 이러한 위험에 대처하고 줄일 수 있습니다.
이중 EMA 가격 변동 전략은 주로 다음과 같은 방향으로 최적화할 수 있다:
5~60의 EMA 길이를 각각 테스트하여 최적의 EMA 사이클 파라미터를 최적화합니다.
MA, KDJ, MACD 등 다른 지표를 추가하여 필터 조건을 설정하여 가짜 신호를 피하십시오.
부린띠, KD 등의 지표를 이용하여 합리적인 스톱 스톱 손실 위치를 결정한다.
트렌드 지수와 같은 지표와 결합하여 가격 추세를 판단하고 역경 거래를 피하십시오.
거래량 지표에 추가하여 거래량이 뒷받침되는 브레이크 신호를 보장합니다.
재입장 조건을 설정하여 거래 빈도를 줄이고 거래 횟수를 줄여줍니다.
요약하자면, 두 개의 EMA의 차이 APO를 계산하여 시장의 공백 상태를 판단하는 쌍 EMA 가격 변동 전략은 전략 신호가 간단하고 명확하며 실용성이 강하며, 또한 약간의 단점이 있습니다. 우리는 매개 변수 최적화, 필터 조건의 추가, 스톱 스톱 설정 등의 방법을 통해 전략의 안정성을 최적화하고 향상시킬 수 있습니다. 이 전략은 손쉽게 사용할 수 있으며, 많은 확장 공간이 있으며, 양적 거래 초보자 학습 및 응용에 적합합니다.
/*backtest
start: 2023-02-19 00:00:00
end: 2024-02-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 30/05/2017
// The Absolute Price Oscillator displays the difference between two exponential
// moving averages of a security's price and is expressed as an absolute value.
// How this indicator works
// APO crossing above zero is considered bullish, while crossing below zero is bearish.
// A positive indicator value indicates an upward movement, while negative readings
// signal a downward trend.
// Divergences form when a new high or low in price is not confirmed by the Absolute Price
// Oscillator (APO). A bullish divergence forms when price make a lower low, but the APO
// forms a higher low. This indicates less downward momentum that could foreshadow a bullish
// reversal. A bearish divergence forms when price makes a higher high, but the APO forms a
// lower high. This shows less upward momentum that could foreshadow a bearish reversal.
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Absolute Price Oscillator (APO) Backtest", shorttitle="APO")
LengthShortEMA = input(10, minval=1)
LengthLongEMA = input(20, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=gray, linestyle=line)
xPrice = close
xShortEMA = ema(xPrice, LengthShortEMA)
xLongEMA = ema(xPrice, LengthLongEMA)
xAPO = xShortEMA - xLongEMA
pos = iff(xAPO > 0, 1,
iff(xAPO < 0, -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(xAPO, color=blue, title="APO")