골든크로스 매수 및 매도 전략


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

골든크로스 매수 및 매도 전략

개요

이 전략은 단기 이동 평균과 장기 이동 평균의 골드 크로스커스를 계산하여 입문 시기를 판단하고, 스톱로스를 설정하여 포지션을 종료하는 전형적인 트렌드 추적 전략에 속한다. 이 전략은 명백한 상승 추세가있는 시장에 적용되며, 상향 추세에서 승승장구하여, 트렌드 역전시 적시에 손실을 중지할 수 있다.

전략 원칙

이 전략은 주로 단기 이동 평균과 장기 이동 평균을 계산하고 그들의 교차 상황을 관찰함으로써 시장 추세를 판단합니다. 구체적인 논리는 다음과 같습니다:

  1. 3일 간소 이동 평균을 단기 이동 평균으로 계산합니다

  2. 19일 간소 이동 평균 long_ma를 장기 이동 평균으로 계산합니다.

  3. 단기 이동 평균에서 장기 이동 평균을 뚫을 때, 더 많은 신호를 내보내고, 더 긴 포지션으로 들어갑니다.

  4. 가격 상승이 시입 가격을 넘어섰을 때*(1+스트로퍼스%) 이 되면, 모든 포지션을 평평하게 합니다.

  5. 단기 이동 평균 아래에서 장기 이동 평균을 뚫을 때, 공백 신호를 발산하여 공백 포지션에 들어갑니다.

  6. 특정 날짜 범위에서 재검토하여 전략의 실행 시간 범위를 제한합니다.

  7. 100일 간단한 이동 평균을 대동향 지표로 계산하여 대동향이 상승할 때만 거래합니다.

이 전략은 이동 평균의 골든 크로스 원칙을 최대한 활용하여, 지수가 지속적으로 상승하는 추세에서, 단기 이동 평균의 단기 이동 평균을 가로질러 다중 포지션에 진입하면, 추세에 대한 기회를 효과적으로 포착할 수 있습니다. 단기 이동 평균의 아래에서 장기 이동 평균을 가로질러 다중 포지션을 종료하고 공백 포지션에 진입하면, 위험을 효과적으로 제어 할 수 있습니다.

우위 분석

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

  1. 전략적 사고는 명확하고 이해하기 쉽고, 이동 평균을 교차하여 트렌드 방향을 판단하여 쉽게 파악할 수 있습니다.

  2. 입시 판단 규칙은 간단하고 효과적이며, 순차적으로, 효과적으로 위험을 통제할 수 있다.

  3. 수익을 고정하기 위해 스톱포인트를 설정하고, 시장이 역전될 때 적시에 손실을 멈출 수 있다.

  4. 하지만, 위기상황의 대부분을 필터링할 수 있는 유일한 방법은, 큰 상승세를 통해서만 거래하는 것이다.

  5. 각 시장의 특성에 맞게 사용자 정의 가능한 이동 평균 변수

  6. 특정 기간에 대한 검증을 위해 재검토 시간 범위를 설정할 수 있습니다.

위험 분석

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

  1. 이동 평균 전략은 매개 변수에 민감하며, 다른 매개 변수 설정은 전략의 성능에 영향을 미칩니다.

  2. 역사적인 데이터에 기초하여 곡선을 맞추는 것만이 비정상적인 경우를 처리할 수 없습니다.

  3. 가격 상승을 효과적으로 처리하지 못하면 스톱로스를 초과할 수 있습니다.

  4. 진동상태에 걸리기 쉽기 때문에 합리적인 스톱피드를 설정해야 한다.

  5. 트렌드가 뚜렷한 시장 환경에만 적용되며, 수평판 흔들림 시장에는 적합하지 않다.

  6. 응답 시간 범위의 선택은 전략 검증 결과에 영향을 미칩니다.

최적화 방향

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

  1. 다른 변수 조합을 시도하여 최적의 변수를 찾습니다.

  2. MACD, Bollinger Bands 등과 같은 다른 기술 지표를 추가하여 통합 판단을 통해 의사 결정의 효과를 향상시킵니다.

  3. 다이내믹 트래킹 스톱을 설정하여 위험을 더 잘 제어하십시오.

  4. 진입을 최적화하고, 진입을 막는 논리, 예를 들어, 진입을 막기 위한 초고점을 고려하는 등.

  5. 다양한 시장 환경 데이터를 테스트하여 전략의 안정성을 평가한다.

  6. 매개 변수 최적화 또는 신호 판단을 위해 기계 학습과 같은 모델을 포함하는 것을 고려하십시오.

  7. 가격 폭등, 손해가 발생했을 경우의 특이한 처리를 추가한다.

요약하다

이 전략은 간단하고 효과적인 이동 평균의 교차 원리를 통해 상승 추세를 포착하고, 스톱 스포트점을 설정하여 위험을 제어하여 추세가 뚜렷한 시장에서 더 나은 수익을 얻을 수 있습니다. 그러나이 전략에는 특정 한계가 있으며, 전략을 더 안정적이고 효율적으로 만들기 위해 계속 최적화 테스트가 필요합니다.

전략 소스 코드
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 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/
// © Ta3MooChi
//@version=5
strategy("전략", overlay=true,process_orders_on_close = true, pyramiding = 100)

short_ma = ta.sma(close,input.int(3, "단기 이평", minval = 1))
long_ma = ta.sma(close, input.int(19,"장기 이평", minval = 1))

trend_ma = ta.sma(close, input.int(100," 추세 이평", minval = 20, group = "추세 이평"))
up_trend = (trend_ma > trend_ma[1])
use_trend_ma = input.bool(true, title = "추세용 이평 사용", group = "추세 이평" )
inTrendMa = not use_trend_ma or up_trend

useDateFilter = input.bool(true, title = "특정 기간 백테스트", group = "기간 백테스트")
backtestStartDate = input(timestamp("1 Jan 2021"), title = "시작날짜", group = "기간 백테스트")
backtestEndDate = input(timestamp("1 Jan 2022"), title = "종료날짜", group = "기간 백테스트")
inTradeWindow = true

longStopPerc = 1 + input.float(3, "최소수익률%", minval = 1)*0.01

longcondition = ta.crossover(short_ma, long_ma)
shortcondition = ta.crossunder(short_ma, long_ma)

if (longcondition) and inTradeWindow and inTrendMa
    strategy.entry("long", strategy.long)

if (shortcondition) and (close > strategy.position_avg_price*longStopPerc) and inTradeWindow
    strategy.close_all()

if not inTradeWindow and inTradeWindow[1]
    strategy.cancel_all()
    strategy.close_all(comment = "매매 종료")

plot(short_ma,color = color.yellow)
plot(long_ma,color = color.blue)
plot(trend_ma,color = color.gray)