탄력적인 부피 가중화 이동 평균 크로스 전략

저자:차오장, 날짜: 2023-09-18 22:07:14
태그:

전반적인 설명

이 전략은 크로스오버를 생성하고 구매 및 판매 신호를 생성하기 위해 서로 다른 기간을 가진 두 개의 EVWMA 라인을 사용합니다. 짧은 기간 라인이 긴 기간 라인을 넘을 때 구매 신호를 생성합니다. 짧은 기간 라인이 긴 기간 라인을 넘을 때 판매 신호를 생성합니다.

전략 논리

전략은 다른 기간을 가진 두 EVWMA 선을 계산하고 교차함으로써 트렌드 변화를 식별합니다.

구체적으로, 먼저 두 개의 EVWMA 라인을 계산합니다.

  1. 짧은 기간 라인 m1, 기간 길이가 1, 5에 기본

  2. 긴 기간 라인 m2, 기간 길이2, 40에 기본 설정

그 다음 m1과 m2 사이의 크로스오버 상황을 결정하기 위해 크로스오버와 크로스온더 함수를 사용합니다:

  • m1이 m2를 넘으면 구매 신호를 생성하고 긴 동작을 실행합니다.

  • m1이 m2 아래로 넘어가면 판매 신호를 생성하고 단축 동작을 실행합니다.

참고로 EVWMA는 단순한 이동 평균에 비해 최근의 데이터에 더 많은 무게를 부여합니다. 계산 공식은:

data = (nz(data[1]) * (nb_floating_shares - volume)/nb_floating_shares) + (volume_price/nb_floating_shares)

nz ((data[1]) 는 이전 기간의 EVWMA 값, nb_floating_shares는 기간의 총 부피, 부피는 현재 기간의 부피, 그리고 부피_가격은 현재 기간의 매출이다. 이것은 최근의 데이터에 더 높은 가중치를 부여하는 효과를 달성합니다.

이점 분석

이 전략의 장점은 다음과 같습니다.

  1. EVWMA는 가격 변화에 더 빠르게 반응하고 수익 기회를 향상시킵니다.

  2. 이중 EVWMA 라인의 크로스오버는 전환점을 적시에 식별합니다.

  3. 간단한 논리와 실행하기 쉬운

  4. 다른 시장 환경에 적응하기 위해 사용자 정의 가능한 기간 길이가

  5. 복잡한 매개 변수 최적화가 필요없고 실시간 거래에 쉽습니다.

위험 과 해결책

이 전략에는 몇 가지 위험도 있습니다.

  1. 크로스오버는 시장 소음을 필터링하지 않고 지나치게 무효 신호를 생성할 수 있습니다.

    • 솔루션: 부피 또는 다른 표시기와 결합하여 신호를 필터합니다.
  2. 트렌드 반전 지점을 파악하기 어렵고 반전 지점을 놓칠 위험이 있습니다.

    • 솔루션: 기간 매개 변수를 조정하거나 다른 반전 지표를 추가합니다.
  3. 스톱 로스 또는 이윤 취득이 불가능하며 위험을 효과적으로 제어 할 수 없습니다.

    • 솔루션: 역사적 데이터와 변동성을 기반으로 적절한 스톱 로스 및 수익률 비율을 설정
  4. 불충분한 매개 변수 최적화는 잘못된 기간 설정으로 이어집니다.

    • 솔루션: 백테스팅을 통해 매개 변수를 최적화하고 적절한 길이를 선택

개선 방향

전략을 개선하기 위한 몇 가지 방향:

  1. 스톱 로스를 추가하고 수익을 취하여 위험을 엄격히 통제하십시오.

  2. 가장 좋은 매개 변수를 찾기 위해 기간 길이를 최적화

  3. 유효하지 않은 트레이드를 줄이기 위해 볼륨 필터를 추가

  4. 회전 지표와 결합하여 회전 손실을 피합니다.

  5. 시장 변화에 따라 매개 변수를 동적으로 최적화

  6. 황소 시장과 곰 시장의 차이와 다른 매개 변수를 사용

  7. 빅데이터 기반의 거래 시기를 결정하기 위한 머신러닝 모델을 도입

결론

요약하자면, 이 EVWMA 크로스 전략은 트렌드 변화를 효과적으로 식별하고 이중 EVWMA 라인을 계산하고 넘어서면서 거래 신호를 생성 할 수 있습니다. 논리는 간단하지만 위험과 개선 방향이 있습니다. 스톱 로스, 매개 변수 선택, 다른 지표를 통합하는 등을 최적화함으로써 전략은 라이브 거래에 강화 될 수 있습니다. 전반적으로 이것은 움직이는 평균 크로스 전략의 유익한 탐구이며 추가 연구 및 응용 가치가 있습니다.


/*backtest
start: 2023-08-18 00:00:00
end: 2023-08-26 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2

strategy("Elastic Volume Weighted Moving Average Cross Strategy", shorttitle="EVWMA Cross", overlay=true)
length1=input(5, title="EVWMA Short")
length2=input(40, title="EVWMA Long")

nbfs1=sum(volume, length1)
nbfs2=sum(volume, length2)

medianSrc=close

calc_evwma(price, length, nb_floating_shares) => 
    data = (nz(data[1]) * (nb_floating_shares - volume)/nb_floating_shares) + (volume*price/nb_floating_shares)
    data
    

m1=calc_evwma(medianSrc, length1, nbfs1)
m2=calc_evwma(medianSrc, length2, nbfs2)

if (crossover(m1, m2))
    strategy.entry("MA2CrossLE", strategy.long, comment="MA2CrossLE")

if (crossunder(m1, m2))
    strategy.entry("MA2CrossSE", strategy.short, comment="MA2CrossSE")

p1=plot(m1,color=orange,linewidth=2, title="evwma")
p2=plot(m2,color=orange,linewidth=2, title="evwma")

더 많은