모멘텀 브레이크업 전략

저자:차오장, 날짜: 2024-01-18 15:17:11
태그:

img

전반적인 설명

이 전략은 EMA 라인, MACD 지표 및 일일 이윤을 결합하여 시장 돌파 신호를 식별하고 낮은 가격에 구매하고 높은 가격에 판매하는 모멘텀 거래 전략을 구현합니다.

전략 원칙

빠른 EMA 라인이 느린 EMA 라인을 넘을 때 시장이 상승 추세로 간주되며 구매 신호가 생성됩니다. MACD 지표의 차이는 0 축을 넘을 때 긴 포지션을 열기 위해 구매 신호도 생성됩니다.

또한, 단 하루의 닫기 가격이 오픈 가격에 비해 10% 이상 상승하면 파인 시그널도 생성되어 시장 트렌드를 추적합니다.

포지션을 열면 가격이 10% 이상 떨어지면 스톱 로스가 트리거됩니다. 이윤이 45%에 도달하면 이윤이 트리거됩니다.

이점 분석

이것은 큰 수익 잠재력을 가진 강력한 추진력 돌파구 후 상승 추세를 포착 할 수있는 전형적인 트렌드 다음 전략입니다. 주요 장점은 다음과 같습니다.

  1. EMA 라인은 시장 통합 중 포지션 개설을 피하기 위해 트렌드 판단을 구현합니다.
  2. MACD 지표는 더 신뢰할 수 있는 구매 신호를 보장합니다.
  3. 단일 이득 상태는 트렌드 파장을 포착합니다.
  4. 합리적인 스톱 로스 설정과 수익 설정은 위험을 통제하는 데 도움이 됩니다.

위험 분석

합리적으로 설계되었지만 여전히 몇 가지 위험이 있습니다.

  1. 부적절한 돌파 신호 판단은 짧은 손실로 이어질 수 있습니다.
  2. 시장의 회복은 또한 잘못된 신호를 일으킬 수 있습니다.
  3. 너무 큰 스톱 손실 설정은 손실 위험을 증가시킵니다.
  4. 돌파구 이후의 불충분한 후속 추세는 불충분한 수익으로 이어질 수 있습니다.

위의 위험을 줄이기 위해, 우리는 이동 스톱 손실 전략을 최적화하거나 볼륨과 같은 다른 지표를 필터 신호에 추가하는 것을 고려할 수 있습니다.

최적화 방향

아직 더 많은 최적화를 할 수 있습니다.

  1. 트렌드를 지원하는 충분한 거래량을 보장하기 위해 볼륨 지표를 추가합니다.
  2. MACD 매개 변수를 최적화하여 지표의 감수성을 향상시킵니다.
  3. EMA 기간의 다양한 조합을 테스트합니다.
  4. 적응식 스톱 손실 메커니즘을 추가합니다.
  5. 더 효율적인 돈 관리를 위해 수익점을 최적화하십시오.

매개 변수 조정, 지표 조합 및 기타 방법을 통해 이 전략의 안정성과 수익성이 크게 향상될 수 있습니다.

결론

일반적으로 이 전략은 간단하고 실용적이며 큰 수익 잠재력을 가지고 있다. 시장의 돌파점을 판단함으로써 상승세를 효과적으로 파악할 수 있으며, 마감 통제도 합리적이다. 미래의 최적화에서 매개 변수 조정 및 스톱 로스/트랙 노프트 디자인을 지속적으로 개선하면 가치있는 장기적 양적 거래 전략이 될 수 있다.


/*backtest
start: 2023-01-11 00:00:00
end: 2024-01-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Alt Coins", overlay=true)

//Simple Alt Coin Trading Strategy//
// by @ShanghaiCrypto //

////EMA////
fastLength = input(5)
slowLength = input(12)
baseLength = input(50)
price = close

emafast = ema(price, fastLength)
emaslow = ema(price, slowLength)
emabase = ema(price, baseLength)

///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

////PUMP////
OneCandleIncrease = input(10, title='Gain %')
pump = OneCandleIncrease/100

////Profit Capture and Stop Loss//////
stop = input(10.0, title='Stop Loss %', type=float)/100
profit = input(45.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)

////Entries/////
if crossover(emafast, emaslow)
    strategy.entry("Cross", strategy.long, comment="BUY")

if (crossover(delta, 0))
    strategy.entry("MACD", strategy.long, comment="BUY")
    
if close > (open + open*pump)
    strategy.entry("Pump", strategy.long, comment="BUY")

/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)

////Plots////
plot(emafast, color=green)
plot(emaslow, color=red)
plot(emabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)

더 많은