리소스 로딩... 로딩...

전략에 따른 다중 이동 평균 트렌드 - EMA와 SMA 지표에 기반한 장기 투자 신호 시스템

저자:차오장, 날짜: 2024-12-13 10:28:02
태그:EMASMA

img

전반적인 설명

이 전략은 중장기 투자 기회를 포착하기 위해 주간 EMA20, 일일 SMA100, 일일 SMA50 및 일일 EMA20 사이의 크로스오버 및 위치 관계를 주로 활용하여 여러 이동 평균 조합을 기반으로 한 트렌드 다음 시스템입니다. 전략은 지속 기간 요구 사항과 결합하여 가격과 이동 평균 사이의 관계를 관찰하여 잠재적 인 긴 입구 지점을 식별합니다.

전략 원칙

전략의 핵심 논리는 다음의 핵심 조건에 기초합니다.

  1. 주요 트렌드 지표로 20주기 주간 기하급수적 이동 평균 (EMA1W20) 을 사용합니다.
  2. 2차 트렌드 확인을 위해 100일 간편 이동 평균 (SMA1D100) 과 결합
  3. 중장기 트렌드 기준으로 50일 간편 이동 평균 (SMA1D50) 을 사용합니다.
  4. 단기 트렌드 확인을 위해 20일 지수 이동 평균 (EMA1D20) 을 사용합니다. 이 시스템은 가격이 EMA1W20와 SMA1D100을 14일 연속 유지한 후 SMA1D50 아래로 떨어지면 긴 신호를 생성합니다. 이 디자인은 신호 신뢰성을 높이기 위해 여러 시간 프레임에 걸쳐 트렌드 확인을 결합합니다.

전략적 장점

  1. 멀티 타임프레임 검증: 더 포괄적인 트렌드 평가를 위해 주간 및 일일 이동 평균을 결합합니다.
  2. 엄격한 진입 조건: 가격이 주요 이동 평균보다 충분히 오래 유지하도록 요구하며 잘못된 신호를 효과적으로 필터링합니다.
  3. 합리적인 위험 관리: 명확한 위험 경계선을 위해 여러 이동 평균 크로스오버와 포지션을 사용합니다.
  4. 높은 적응력: 전략 매개 변수를 다른 시장 환경에 조정할 수 있습니다.
  5. 명확한 실행: 거래 신호는 잘 정의되어 있고 프로그램 실행에 적합합니다.

전략 위험

  1. 지연 위험: 이동 평균은 본질적으로 약간의 지연을 가지고 있으며 지연된 입력을 유발할 수 있습니다.
  2. 부평적 시장 위험: 다양한 시장에서 빈번한 잘못된 파업 신호를 생성할 수 있습니다.
  3. 매개 변수 감수성: 최적 매개 변수는 다른 시장 환경에서 다를 수 있습니다.
  4. 마감 위험: 급격한 트렌드 역전 시 상당한 마감을 경험할 수 있습니다.
  5. 실행 위험: 신호 손실 또는 실행 지연을 피하기 위해 안정적인 시스템 작동이 필요합니다.

전략 최적화 방향

  1. 부피 표시를 포함: 신호 신뢰성을 향상시키기 위해 부피 확인 메커니즘을 추가
  2. 매개 변수 조정 최적화: 동적 매개 변수 조정 메커니즘 개발
  3. 필터링 조건 추가: 시장 환경 지표를 추가하는 것을 고려하십시오.
  4. 스톱 로스 메커니즘 개선: 더 상세한 스톱 로스 및 수익 취득 규칙을 설계
  5. 신호 확인을 강화: 보조 확인을 위해 다른 기술적 지표를 추가하는 것을 고려하십시오.

요약

이 전략은 중장기 투자자에게 적합한 여러 이동 평균 조합을 통해 비교적 포괄적인 추세를 설정합니다. 특정 지연 및 매개 변수 민감성 위험이 있지만 적절한 위험 통제 및 지속적인 최적화로 전략은 실용적 가치가 있습니다. 투자자는 위험 선호도 및 시장 조건에 따라 적절한 조정을 할 것을 권장합니다.


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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © petitepupu

//@version=5

ema20wTemp = ta.ema(close, 20)
ema20w = request.security(syminfo.tickerid, "1W", ema20wTemp, barmerge.gaps_on, barmerge.lookahead_off)
sma100d = ta.sma(close, 100)
sma50d = ta.sma(close, 50)
ema20d = ta.ema(close, 20)
daysAbove = input.int(14, title="Days", minval=1)
plot(ema20w, color=color.blue)
plot(sma100d, color=color.yellow)
plot(sma50d, color=color.red)
plot(ema20d, color=color.green)

longCondition = true
clean = true
for i = 0 to daysAbove
    if close[i] < ema20w or close[i] < sma100d or close > sma50d
        longCondition := false
        clean := false
        break

//TODO: 
if clean != true
    longCondition := true
    for i = 0 to daysAbove
        if close[i] > ema20w or close[i] > sma100d or close >= ema20d or -100 * (close - ema20d)/ema20d < 5.9
            longCondition := false
            break


// plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal", size = size.small)

if (longCondition)
    strategy.entry("Long", strategy.long)

    
strategy(title="LT Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=800)

관련

더 많은