단순 이동 평균 골든 크로스와 데스 크로스 전략


생성 날짜: 2023-11-14 16:17:16 마지막으로 수정됨: 2023-11-14 16:17:16
복사: 0 클릭수: 716
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

단순 이동 평균 골든 크로스와 데스 크로스 전략

개요

이 전략은 여러 개의 다른 시간 주기의 간단한 이동 평균 (SMA) 의 금 叉死 叉을 기반으로 시장 추세를 판단하고 매매 신호를 발송한다. 전략은 20 일선, 50 일선, 100 일선 및 200 일선 라인 네 개의 SMA를 사용합니다. 단기 SMA 상에서 장기 SMA를 통과 할 때 금 叉 신호로, 더 많은 것을하십시오. 단기 SMA 아래에서 장기 SMA를 통과 할 때 사망 叉 신호로, 공백을하십시오.

전략 원칙

이 전략의 핵심 논리는 다음과 같습니다.

  1. 20일선, 50일선, 100일선, 200일선 등 여러 시간 주기 SMA를 계산한다.

  2. 단기 SMA ((20일선) 과 장기 SMA ((50일선, 100일선, 200일선) 의 교차 상황을 판단한다.

  3. 20일선에서 50일선을 통과할 때 황금포크 신호로 판단하여, 더 많은 일을 한다. 20일선 아래 50일선을 통과할 때 사형포크 신호로 판단하여, 공백을 한다.

  4. 동시에, 50 일선, 100 일선, 200 일선은 큰 트렌드 판단 논리를 충족시켜야 한다. 즉, 더 긴 주기 SMA는 더 짧은 주기 SMA 위에 있어야 한다.

  5. 입구 신호 우선 순위: 20일선과 50일선>20일선과 100일선>20일선과 200일선

  6. 출구 신호는 20일 라인에서 50일 라인을 다시 넘었다.

이 전략은 주로 SMA 선의 교차를 통해 트렌드 방향을 판단한다. 황소 시장에서, 단기 SMA 상에서 장기 SMA를 착용하는 것은 금포 신호이며, 시장이 트렌드에 들어갈 수 있음을 나타냅니다. 곰 시장에서, 단기 SMA 아래에서 장기 SMA를 착용하는 것은 사다리 신호이며, 시장이 조정에 들어갈 수 있음을 나타냅니다. 또한, 더 긴 주기 SMA가 더 짧은 SMA보다 높다는 것은 큰 트렌드를 확인하는 판단 근거이기도 하다.

전략적 이점

이 전략에는 다음과 같은 장점이 있습니다.

  1. 전략은 간단하고 명확하며 이해하기 쉽고 실행이 가능합니다.

  2. SMA 지수 이동 평균을 사용하면 EMA에 비해 시장 소음을 더 효과적으로 필터링하여 트렌드를 식별할 수 있다.

  3. 다중 집합 시간 주기 SMA와 결합하여 신호의 신뢰성을 향상시킬 수 있다.

  4. 진입 신호 우선 순위를 합리적으로 설정하여 조기 진입을 피하십시오.

  5. 사용자 정의 SMA 주기 및 색상, 최적화 전략

  6. 여러 시간 주기에 사용할 수 있으며, 다른 거래 스타일에 적합하다.

  7. SMA 크로스 시스템은 메이저 시장의 추세를 매우 정확하게 판단합니다.

전략적 위험

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

  1. 진동상태에서 SMA 교차신호가 빈번하게 발생하여 많은 잘못된 신호를 생성할 수 있다.

  2. 고정 SMA 주기는 시장의 변화에 적응할 수 없으며, 추세와 변동률 최적화 SMA 파라미터를 결합해야 한다.

  3. SMA 교차만으로 진입 시기를 결정할 수 없으므로 MACD와 같은 다른 지표와 결합하여 판단해야합니다.

  4. SMA의 본질은 지연성이 있으며, 사전적으로 진입 시점을 최적화하거나 제한 가격표를 사용해야 한다.

  5. 이 전략은 거래 자금 관리에 대한 요구가 높으며, 스톱 로직을 엄격히 준수해야 한다.

  6. 전략적 수익성에 대한 거래 비용의 영향을 충분히 고려해야 합니다.

전략 최적화

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

  1. 최적화 SMA 주기 변수, 다른 주기 변수는 다른 시장 조건에 적용되며, ATR 동적 최적화와 결합될 수 있다.

  2. MACD, RSI 등과 같은 다른 지표 조합을 추가하여 진입 시기를 필터링하는 데 도움을 줍니다.

  3. 트렌드 판단 논리를 추가하여 ADX와 같은 트렌드 판단 논리를 추가하여 흔들리는 시장의 잘못된 거래를 방지합니다.

  4. 최적화된 중지 방식, ATR 중지 또는 추적 중지.

  5. 포지션 관리를 최적화하고, 자본 규모에 따라 각각의 포지션을 동적으로 조정한다.

  6. 다양한 품종의 변수 효과를 테스트하고, 특성에 따라 SMA 주기를 조정한다.

  7. 여러 시간 프레임이 결합되어 대주기 추세가 일관되게 유지됩니다.

요약하다

전체적으로 볼 때, 이 SMA 골드 포크 데드 포크 전략은 간단한 이동 평균 교차 시스템을 통해 트렌드 방향을 판단하여 신뢰성이 높으며 대부분의 거래자에게 적합합니다. 그러나 그 자체에는 지연 및 잘못된 신호 문제가 있습니다. 우리는 입시 시점, 손실 방지 방법, 위치 관리 및 기타 측면을 최적화하여이 전략을 계속 개선해야 합니다. 다양한 시장 환경에서 안정적인 수익성을 가질 수 있도록합니다. 여러 가지 기술 지표와 트렌드 판단의 통합 사용은 트렌드 추적 전략을 진정으로 안정적이고 효율적이며 신뢰할 수있게 만듭니다.

전략 소스 코드
/*backtest
start: 2023-10-14 00:00:00
end: 2023-11-13 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/
// © xyzdesign1989
//@version=5
strategy("SMA crossover buy/sell [SCSM_Algo]", overlay=true, margin_long=3000, margin_short=3000)


BuyCond = ta.crossover(ta.sma(close, 20), ta.sma(close, 50)) and ta.sma(close, 20) > ta.sma(close, 50) and  ta.sma(close, 50) > ta.sma(close, 100) and  ta.sma(close, 100) > ta.sma(close, 200) or (ta.crossover(ta.sma(close, 20), ta.sma(close, 100)) and ta.sma(close, 20) > ta.sma(close, 50))
if (BuyCond)
    strategy.entry("SCSM 🤲 Buy", strategy.long)

SellCond = ta.crossunder(ta.sma(close, 20), ta.sma(close, 50))
if (SellCond)
    strategy.entry("الحمد للہ،Sell", strategy.short)

ma(source, length, type) =>
    type == "SMA" ? ta.sma(source, length) :
     type == "EMA" ? ta.ema(source, length) :
     type == "SMMA (RMA)" ? ta.rma(source, length) :
     type == "WMA" ? ta.wma(source, length) :
     type == "VWMA" ? ta.vwma(source, length) :
     na

show_ma1   = input(true   , "MA №1", inline="MA #1")
ma1_type   = input.string("SMA"  , ""     , inline="MA #1", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma1_source = input(close  , ""     , inline="MA #1")
ma1_length = input.int(20     , ""     , inline="MA #1", minval=1)
ma1_color  = input(#0929f6, ""     , inline="MA #1")
ma1 = ma(ma1_source, ma1_length, ma1_type)
plot(show_ma1 ? ma1 : na, color = ma1_color, title="MA №1")

show_ma2   = input(true   , "MA №2", inline="MA #2")
ma2_type   = input.string("SMA"  , ""     , inline="MA #2", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma2_source = input(close  , ""     , inline="MA #2")
ma2_length = input.int(50     , ""     , inline="MA #2", minval=1)
ma2_color  = input(#00fb04, ""     , inline="MA #2")
ma2 = ma(ma2_source, ma2_length, ma2_type)
plot(show_ma2 ? ma2 : na, color = ma2_color, title="MA №2")

show_ma3   = input(true   , "MA №3", inline="MA #3")
ma3_type   = input.string("SMA"  , ""     , inline="MA #3", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma3_source = input(close  , ""     , inline="MA #3")
ma3_length = input.int(100    , ""     , inline="MA #3", minval=1)
ma3_color  = input(#131313, ""     , inline="MA #3")
ma3 = ma(ma3_source, ma3_length, ma3_type)
plot(show_ma3 ? ma3 : na, color = ma3_color, title="MA №3")

show_ma4   = input(true   , "MA №4", inline="MA #4")
ma4_type   = input.string("SMA"  , ""     , inline="MA #4", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
ma4_source = input(close  , ""     , inline="MA #4")
ma4_length = input.int(200    , ""     , inline="MA #4", minval=1)
ma4_color  = input(#f60c0c, ""     , inline="MA #4")
ma4 = ma(ma4_source, ma4_length, ma4_type)
plot(show_ma4 ? ma4 : na, color = ma4_color, title="MA №4")