SMA 이동평균선 교차와 시장심도 지표를 기반으로 한 양적 거래 전략


생성 날짜: 2024-01-24 14:21:42 마지막으로 수정됨: 2024-01-24 14:21:42
복사: 0 클릭수: 657
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

SMA 이동평균선 교차와 시장심도 지표를 기반으로 한 양적 거래 전략

개요

이 전략의 이름은 SMA 평균선 교차와 시장 깊이 지표가 결합된 양적 거래 전략이다. 이 전략은 주로 SMA 평균선의 금叉死叉 신호를 사용하여, 이치모쿠 시장 깊이 클라우드 그래프 지표의 전환선, 기준선 및 전방선 및 거래량 다공지표를 결합하여 비트코인에 대한 정반대의 자동 거래를 구현한다.

전략 원칙

이 전략은 다음과 같은 원칙에 기초하고 있습니다.

  1. 서로 다른 파라미터를 사용하는 SMA 평행선을 사용하여 포크스오프포크 거래 신호를 구성한다. 단기 SMA 상에서 긴 SMA를 통과하면 구매 신호가 생성되고 단기 SMA 아래에서 긴 SMA를 통과하면 판매 신호가 생성된다.

  2. 이치모쿠 클라우드 차트 지표에 기반하여 시장의 깊이와 흐름을 판단한다. 클라우드 차트의 앞선과 기준선보다 상반된 가격으로 구매 신호가 발생하면 구매 신호가 발생하고, 클라우드 차트의 앞선과 기준선보다 낮은 가격으로 판매 신호가 발생하면 판매 신호가 발생하여 대부분의 가짜 신호를 필터링한다.

  3. 거래량에 기반한 빈도 지표가 낮은 양의 가짜 신호를 필터링하여 거래량이 일정 기간 동안의 평균보다 크면 구매/판매 신호를 생성한다.

  4. 플롯셰이프 함수를 사용하여 차트 상에서 구매/판매 신호의 위치를 표시한다.

이 전략은 단기 및 장기 동향, 시장 깊이 지표 및 거래량 지표를 종합적으로 고려하여 거래 결정을 최적화합니다.

우위 분석

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

  1. SMA 평행선의 황금 포크 도매 포크를 사용하여 기본적인 매매 신호를 생성하여 너무 복잡한 것을 피하십시오.
  2. 이치모쿠 (Ichimoku) 클라우드 그래프는 시장의 깊이와 중·장기적 추세를 판단하는 데 도움을 주며, 잡음을 효과적으로 필터링할 수 있다.
  3. 거래량 지표와 함께 낮은 양의 가짜 브레이크를 피할 수 있다.
  4. 매개 변수 조정 공간이 넓고, 다양한 시장에 맞게 최적화할 수 있다.
  5. 전략의 논리는 명확하고, 이해하기 쉽고, 수정하기 쉽다.
  6. 구매 및 판매 신호를 직관적으로 표시하여 전략 테스트 및 최적화를 용이하게 합니다.

위험 분석

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

  1. SMA 평균선은 잘못된 신호를 발생시키는데 필터가 필요하다.
  2. 이치모쿠 클라우드 그래프 지표는 시장 구조의 효과를 판단하는 것은 매개 변수 설정에 달려 있다.
  3. 거래량 증폭 효과는 거래량 지표의 판단을 방해할 수 있다.
  4. 트렌드 시장과 흔들림 시장은 다른 파라미터 설정을 필요로 한다.
  5. 하지만, 이 모든 것은 시간이 지남에 따라 진행됩니다.

이러한 위험에 대해, 평균선 변수, 클라우드 그래프 변수, 거래량 변수 등을 조정하여 최적화 할 수 있으며, 적절한 거래 품종을 선택하여 위험을 줄일 수 있습니다.

최적화 방향

이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.

  1. EMA,VIDYA 등과 같은 더 많은 평균 지표를 테스트하십시오.
  2. 다른 클라우드 그래프 파라미터 설정을 시도해 보세요.
  3. 동력 지표에 기초하여 보조 판단을 한다.
  4. 손해배상 제도에 가입하세요.
  5. 다른 거래 시장과 품종에 대한 파라미터 최적화.
  6. 기계학습과 같은 방법을 시도해 보세요.

요약하다

이 전략은 평평선 교차, 시장 깊이 지표 및 거래량 지표를 통합하여 안정적이고 신뢰할 수있는 정량화 거래 전략을 형성합니다. 이 전략은 파라미터 조정, 새로운 기술 지표 등을 추가하여 더욱 최적화 할 수 있습니다.

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

//@version=4
strategy("SMA Crossover with Ichimoku & Volume", shorttitle="SCIV", overlay=true)

// Define the length of SMA
shortSmaLength = input(14, title="Short SMA Length")
longSmaLength = input(21, title="Long SMA Length")
volumeLength = input(20, title="Volume Moving Average Length")

// Calculate the SMA and Volume MA
shortSma = sma(close, shortSmaLength)
longSma = sma(close, longSmaLength)
volumeMa = sma(volume, volumeLength)

// Define the lengths of the Ichimoku Cloud components
tenkanLength = input(9, title="Tenkan Length")
kijunLength = input(26, title="Kijun Length")
senkouBLength = input(52, title="Senkou B Length")
displacement = input(26, title="Displacement")

// Calculate the Ichimoku Cloud components
tenkan = (highest(high, tenkanLength) + lowest(low, tenkanLength)) / 2
kijun = (highest(high, kijunLength) + lowest(low, kijunLength)) / 2
senkouA = (tenkan + kijun) / 2
senkouB = (highest(high, senkouBLength) + lowest(low, senkouBLength)) / 2

// Define the conditions for entry and exit with Ichimoku filter and Volume filter
buyEntry = crossover(shortSma, longSma) and close > senkouA[displacement] and close > senkouB[displacement] and volume > volumeMa
sellEntry = crossunder(shortSma, longSma) and close < senkouA[displacement] and close < senkouB[displacement] and volume > volumeMa

// Plot buy/sell conditions on the chart for visual inspection
plotshape(buyEntry, style=shape.labelup, location=location.belowbar, color=color.green, text="Buy", size=size.small)
plotshape(sellEntry, style=shape.labeldown, location=location.abovebar, color=color.red, text="Sell", size=size.small)

// Execute the strategy
if (buyEntry)
    strategy.entry("Buy", strategy.long)
if (sellEntry)
    strategy.entry("Sell", strategy.short)