
이 전략은 9주기 및 21주기의 지수 이동 평균 ((EMA) 을 주요 동향 판단 지표로 사용하며, 상대적으로 강한 지수 ((RSI) 를 필터링 조건으로 사용하여, 동적인 스톱 손실을 설정하여 위험과 수익을 관리합니다.
전략은 빠른 EMA ((9주기) 와 느린 EMA ((21주기) 의 교차를 사용하여 트렌드 변화를 포착한다. 빠른 선이 느린 선을 상향으로 가로질러 RSI가 70보다 낮으면 다중 상점 포지션을 열고, 빠른 선이 느린 선을 상향으로 가로질러 RSI가 30보다 높으면 공백 포지션을 열는다. 거래당 1.5%의 스톱 및 1%의 스톱 손실이 설정되어 있으며, 이러한 동적 스톱 손실 메커니즘은 입점 가격에 따라 특정 스톱 손실 위치를 자동으로 조정할 수 있습니다.
이것은 명확한 구조, 논리적으로 엄격한 양적 거래 전략이다. 동선 교차 포착 트렌드, RSI 필터링 입시, 동적 스톱 스톱 손실 관리 위험을 통해. 약간의 한계가 있지만, 제안 된 최적화 방향은 전략의 안정성과 수익성을 더욱 향상시킬 수 있습니다. 전략은 협력 기반 프레임워크에 적합하며, 특정 거래 유형과 시장 상황에 따라 타겟으로 최적화됩니다.
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-31 23:59:59
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Estrategia BTC/USDT - Ajustada", overlay=true)
// Definición de las EMAs
emaRapida = ta.ema(close, 9)
emaLenta = ta.ema(close, 21)
// Cálculo del RSI
rsi = ta.rsi(close, 14)
// Condiciones de compra y venta
longCondition = ta.crossover(emaRapida, emaLenta) and rsi < 70
shortCondition = ta.crossunder(emaRapida, emaLenta) and rsi > 30
// Ajustes de Take Profit y Stop Loss
takeProfitLong = close * 1.015 // Take Profit del 1.5% para Long
stopLossLong = close * 0.99 // Stop Loss del 1% para Long
takeProfitShort = close * 0.985 // Take Profit del 1.5% para Short
stopLossShort = close * 1.01 // Stop Loss del 1% para Short
// Ejecución de la estrategia
if (longCondition)
strategy.entry("Compra", strategy.long)
strategy.exit("Take Profit Long", "Compra", limit=takeProfitLong, stop=stopLossLong)
if (shortCondition)
strategy.entry("Venta", strategy.short)
strategy.exit("Take Profit Short", "Venta", limit=takeProfitShort, stop=stopLossShort)
// Visualización de las EMAs
plot(emaRapida, color=color.green, linewidth=2, title="EMA Rápida")
plot(emaLenta, color=color.red, linewidth=2, title="EMA Lenta")