
이 전략은 30일, 60일, 200일 간단한 이동 평균의 금포와 사각형을 기반으로 거래 신호를 형성한다. 단기 이동 평균 위에 장기 이동 평균을 가로질러 구매 신호를 형성한다. 단기 이동 평균 아래에 장기 이동 평균을 가로질러 판매 신호를 형성한다. 이 전략은 트렌드 추적과 평행선 교차의 장점을 결합하여 장기 트렌드를 잡을 수 있으며 트렌드 전환점에서 거래 신호를 형성할 수 있다.
이 전략은 3개의 다른 기간의 간단한 이동 평균을 사용한다: 30일선, 60일선 및 200일선. 이 중 30일선은 단기 경향을 나타내고, 200일선은 장기 경향을 나타내고, 60일선은 중간 참조를 한다. 단기 경향 선에서 장기 경향 선을 통과하면, 상향으로 전환하여 구매 신호를 생성한다.
이 전략은 동시에 스톱로스와 스톱스 포인트를 결합하여 위험을 제어한다. 구매 후 손실을 제어하기 위해 40 점의 스톱스 공간을 설정하고, 동시에 40 점의 스톱스 공간을 설정하여 수익을 잠금한다.
이 전략은 다음과 같은 장점을 가지고 있습니다.
트렌드 추적과 순간 신호의 장점을 결합하여 장기적인 트렌드 판단과 SETS의 단기 구매/판매 지점을 고려합니다.
평선 교차 timesteps 명확하고, 여러 번 반복된 신호를 생성하기 쉽지 않다.
단독 손실을 효율적으로 제어할 수 있는 상쇄장치 설정이 합리적입니다.
전략적 논리는 간단하고 명확하며, 이해하기 쉽고 구현하기 쉽습니다.
이동 평균 기술은 성숙하고 안정적이며, 광범위하게 사용된다.
이 전략에는 몇 가지 위험도 있습니다.
단기 스톱 손실이 뚫릴 수도 있고, 손실을 완전히 피할 수 없습니다.
황금 포크 사격 포크 신호는 가짜 돌파구가 발생할 수 있다.
대시장 흔들림이 있을 때, 스톱로스을 설정하는 것은 합리적으로 어렵다.
매개 변수 설정은 주기적 선택과 같은 주관성이 있으며, 전략 성능에 영향을 미칠 수 있다.
이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.
혁신적 손해 차단 메커니즘, 추적 손해 차단, 지수 이동 손해 차단과 같은 동적 손해 차단 방법을 사용하여 손실 위험을 줄입니다.
최적화 변수 선택, 예를 들어 더 많은 주기 변수의 장단점을 테스트하고, 최적의 변수 조합을 찾는다.
포지션 관리 메커니즘을 늘리고, 자금 관리를 통해 전체 수익을 최적화한다.
모멘텀 지표와 같은 필터링 가짜 돌파구.
더 나은 규칙을 훈련하기 위해 더 많은 기계 학습 알고리즘을 사용하여 더 많은 데이터를 사용하십시오.
이 문서에서는 평평한 리니어 금 叉 死 叉 기반의 거래 전략에 대해 자세히 설명합니다. 이 전략은 30, 60, 200 일 이동 평균을 교차로 거래 신호로 삼고, 트렌드 추적과 순간 지점을 선택하여 시점을 지정합니다.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Estrategia de Cruce de Medias Móviles", overlay=true)
// Medias móviles
ma30 = ta.sma(close, 30)
ma60 = ta.sma(close, 60)
ma200 = ta.sma(close, 200)
// Cruce de medias móviles
crossoverUp = ta.crossover(ma30, ma200)
crossoverDown = ta.crossunder(ma30, ma200)
// Señales de compra y venta
longCondition = crossoverUp
shortCondition = crossoverDown
// Ejecución de órdenes
if (longCondition)
strategy.entry("Buy", strategy.long)
strategy.exit("Cover", "Buy", stop=close - 40.000, limit=close + 40.000)
if (shortCondition)
strategy.entry("Sell", strategy.short)
strategy.exit("Cover", "Sell", stop=close + 40.000, limit=close - 40.000)
// Plot de las medias móviles
plot(ma30, color=color.blue, title="MA 30")
plot(ma60, color=color.orange, title="MA 60")
plot(ma200, color=color.green, title="MA 200")
// Condiciones para cerrar la posición contraria
if (strategy.position_size > 0)
if (crossoverDown)
strategy.close("Buy")
if (strategy.position_size < 0)
if (crossoverUp)
strategy.close("Sell")