양적 마스터 독점적 다중 레벨 이동 평균 교차 전략


생성 날짜: 2024-01-12 12:11:02 마지막으로 수정됨: 2024-01-12 12:11:02
복사: 4 클릭수: 579
avatar of ChaoZhang ChaoZhang
1
집중하다
1627
수행원

양적 마스터 독점적 다중 레벨 이동 평균 교차 전략

개요

이 전략은 다단계 이동 평균의 교차 원리를 적용하여 중장선 추세를 포착하여 안정적인 수익을 달성합니다. 전략은 다양한 파라미터의 빠른, 중간, 느린 세 개의 이동 평균을 사용하여 교차 상황에 따라 거래 결정을 내립니다. 이러한 다단계 이동 평균 교차 전략은 전통적인 두 개의 이동 평균 전략에 비해 더 많은 가짜 신호를 필터링하여 전략의 승률을 높입니다.

전략 원칙

이 전략은 3개의 이동 평균을 사용한다: 빠른 이동 평균 MAshort, 중간 이동 평균 MAmid, 그리고 느린 이동 평균 MAlong. 그 중, MAshort 파라미트는 9, 가장 빠르게 반응, 짧은 선 신호를 잡기 위해; MAmid 파라미트는 50, 속도가 적당하다, 트렌드를 확인하기 위해; MAlong 파라미트는 100, 가장 느리게 반응, 긴 선 추세 방향을 판단하기 위해.

이 전략의 구체적인 거래 논리는 다음과 같다: MMAmid 상의 MAlong을 횡단할 때, 상승 동력이 형성되고 있음을 나타냅니다. 이 때 전략은 더 많이 한다.

이 전략의 가장 큰 장점은 여러 모의 이동 평균의 조합을 통해 가짜 신호를 효과적으로 필터링 할 수 있다는 것입니다. 중장선 상향 추세에서 더 강력한 돌파구를 선택하여 더 많은 상장을 할 수 있습니다.

우위 분석

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 전략 매개 변수가 최적화되어 중장기 트렌드에 효과적으로 대응할 수 있으며, 승률이 높습니다.
  2. 다단계 이동 평균 디자인은 잡음과 가짜 신호를 필터링 할 수 있습니다.
  3. 다양한 주식과 디지털 화폐에 적용되며, 역사적인 재검토 효과도 좋다.
  4. 운용 빈도가 낮고 매 매장마다 자본의 30%를 차지하고, 위험도 조절할 수 있다.
  5. 구성 시간 주기, 하드 디스크의 유연성

위험 분석

이 전략에는 다음과 같은 위험도 있습니다.

  1. 긴 선 트렌드는 갑자기 변할 확률이 낮지만, 일단 발생하면 막는 손실이 더 커질 수 있습니다.
  2. 거래 빈도가 낮고, 자금 사용률이 낮다.
  3. 전략 파라미터는 다양한 거래 유형에 따라 최적화되어야하며 적용 가능성은 제한적입니다.

위와 같은 위험에 대해, 우리는 전략의 적용 범위를 더욱 넓히고, 손해 방지 기술 제어와 결합하여 최대한의 회수를 할 것입니다. 중장기 추세가 전환되면, 우리는 포지션을 줄이는 방법을 적용할 것입니다.

최적화 방향

이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.

  1. 이동 평균의 일 수 변수를 최적화하여 더 나은 변수 조합을 찾습니다.
  2. 거래량 증가 지표 확인, 곡선 적합 문제를 피하기
  3. 전략의 최대 손실값을 설정합니다. 예를 들어, 최대 인출 20%와 강제적인 중지 손실
  4. 트렌드를 판단하는 기계학습 모형을 늘리고, 전략의 적응력을 높이는 것

요약하다

이 전략은 전형적인 중장기 트렌드 전략에 속하며, 다단계 이동 평균을 매칭하여 WebDriverWait==long term trend를 사용하여 거래 위험을 제어하는 전제 하에서 지속적인 수익을 얻습니다. 단일 지표에 비해 여러 개의 매개 변수를 결합하여 강력한 중장기 트렌드 신호를 효과적으로 식별 할 수 있습니다. 이 전략은 더 많은 품종에 적용 할 수 있으며, 더 많은 종류의 양적 거래 분야에서 중요한 역할을 할 수 있습니다.

전략 소스 코드
/*backtest
start: 2023-12-12 00:00:00
end: 2024-01-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=4
strategy(shorttitle='Multi Moving Average Crossing',title='Multi Moving Average Crossing (by Coinrule)', overlay=true, initial_capital=1000,  default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)

//Backtest dates
fromMonth = input(defval = 1,    title = "From Month",      type = input.integer, minval = 1, maxval = 12)
fromDay   = input(defval = 1,    title = "From Day",        type = input.integer, minval = 1, maxval = 31)
fromYear  = input(defval = 2020, title = "From Year",       type = input.integer, minval = 1970)
thruMonth = input(defval = 1,    title = "Thru Month",      type = input.integer, minval = 1, maxval = 12)
thruDay   = input(defval = 1,    title = "Thru Day",        type = input.integer, minval = 1, maxval = 31)
thruYear  = input(defval = 2112, title = "Thru Year",       type = input.integer, minval = 1970)

showDate  = input(defval = true, title = "Show Date Range", type = input.bool)

start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)        // backtest start window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)        // backtest finish window
window()  => true       // create function "within window of time"

//MA inputs and calculations
inlong=input(100, title='MAlong')
inmid=input(50, title='MAmid')
inshort=input(9, title='MAfast')

MAlong = sma(close, inlong)
MAshort= sma(close, inshort)
MAmid= sma(close, inmid)


//Entry 
bullish = crossover(MAmid, MAlong)

strategy.entry(id="long", long = true, when = bullish and window())

//Exit
bearish = crossunder(MAshort, MAmid)

strategy.close("long", when = bearish and window())

plot(MAshort, color=color.orange, linewidth=2)
plot(MAmid, color=color.red, linewidth=2)
plot(MAlong, color=color.blue, linewidth=2)