이중 이동 평균 거래 전략


생성 날짜: 2024-01-08 15:59:34 마지막으로 수정됨: 2024-01-08 15:59:34
복사: 0 클릭수: 603
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

이중 이동 평균 거래 전략

이 전략은 빠른 이동 평균과 느린 이동 평균의 교차를 구매 및 판매 신호로 사용합니다. 빠른 이동 평균이 아래에서 느린 이동 평균을 돌파 할 때 구매 신호를 생성합니다. 빠른 이동 평균이 위에서 느린 이동 평균을 넘어서는 경우 판매 신호를 생성합니다.

전략 원칙

쌍평평선 거래 전략은 두 가지 다른 변수 설정의 이동 평균을 비교하여 거래 신호를 생성합니다. 하나는 빠른 이동 평균이며, 변수 설정이 작아 가격 변화를 더 빨리 포착 할 수 있습니다. 다른 하나는 느린 이동 평균이며, 변수 설정이 더 크고, 장기적인 추세에 대한 판단 지표입니다.

구체적으로, 이 전략은 두 개의 이동 평균 변수를 입력하여 각각 빠른 이동 평균과 느린 이동 평균을 계산한다. 그리고 두 개의 이동 평균을 가격 차트에 그려, 빠른 선은 파란색, 느린 선은 빨간색이다. 빠른 파란색 선이 아래쪽에서 빨간색 선을 통과하면 구매 신호가 발생하며, 빠른 파란색 선이 위쪽에서 아래쪽에서 빨간색 선을 통과하면 판매 신호가 발생한다. 거래 후 신호가 발생하고, 해당하는 입구 또는 입구 작업을 수행한다. 마지막으로, 구매 상위 위치에 대한 중지 손실 논리를 설정합니다.

우위 분석

두 개의 일률적인 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 간단한 조작, 이해하기 쉽고 구현하기 쉽습니다.
  2. 이동 평균의 장점을 최대한 활용하여 큰 추세에서 벗어난 단기간의 기회를 잡기
  3. 전략의 매개 변수는 다양한 시장 환경에 적응할 수 있는 유연성을 갖는다.
  4. 다양한 시간대와 품종에서 사용할 수 있다.
  5. 다른 지표와 결합하여 최적화 할 수 있습니다. 거래량, 스토치 지표 등.

위험 분석

이 두 가지 전략은 다음과 같은 위험도 있습니다.

  1. 쌍평선 교차는 곡선 회전 조정에 대한 진동 경향을 효과적으로 필터링할 수 없으며, 더 많은 잘못된 신호를 생성할 수 있다.
  2. 평균선 근처에서 가격이 변동할 때, 자주 교차하여 너무 자주 거래가 발생한다.
  3. 평균선 변수 설정이 잘못되면 정책 효과에도 영향을 미칠 수 있다.

위와 같은 위험은 다음과 같은 방법으로 최적화할 수 있습니다.

  1. 평행선이 교차할 때 가격과 평행선의 거리를 판단하고, 너무 가까운 거리를 필터링하면 무효 신호를 니다.
  2. 다른 조건 필터를 추가하여 거래량 증대, STOCH 지표 등과 같이 흔들림 영역에서 유효하지 않은 거래를 피하십시오.
  3. 다양한 평균선 변수를 테스트하고 그 조합을 사용하여 최적의 변수를 찾습니다.

최적화 방향

이중 일률 전략은 다음과 같은 방법으로 더 개선될 수 있습니다.

  1. 거래량을 증가시키는 판단, 가격 교차 평균선과 동시에 거래량이 크게 증가했을 때 신호를 생성한다.
  2. 스토카스틱 오실레이터 (Stochastic oscillator) 와 같은 보조 지표와 결합하여 오버 바이 오버 셀드 영역을 판단하여 잘못된 신호를 피하십시오.
  3. 다양한 품종과 시간 주기 테스트에 대한 최적의 평균선 변수
  4. 트렌드를 판단하는 기계학습 모델을 추가하십시오.
  5. 딥러닝과 의사결정 트리 모델을 결합하여 적응형 거래 시스템을 구축한다.

요약하다

쌍평선 거래 전략은 전체적으로 매우 실용적입니다. 그것은 트렌드 추적과 단기 가격 반전의 두 차원을 결합하여 큰 트렌드를 추적하면서 반전 기회를 놓치지 않도록합니다. 모델과 매개 변수를 최적화함으로써 간단한 직관적 장점을 유지하면서 더 신뢰할 수있는 거래 신호를 얻을 수 있습니다.

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

//@version=5
strategy("Moving Average Crossover Strategy", overlay=true)

// Input parameters
fastLength = input(10, title="Fast MA Length")
slowLength = input(21, title="Slow MA Length")
stopLossPercent = input(1, title="Stop Loss Percentage")

// Calculate moving averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)

// Plot the moving averages on the chart
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")

// Define trading signals
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)

// Execute trades
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

// Implement stop loss
strategy.exit("Stop Loss/Profit", from_entry="Long", loss=close * stopLossPercent / 100, profit=close * 2)

// Plot buy and sell signals on the chart
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)