
이 전략은 쌍평선 교차를 기반으로 한 트렌드 추적 거래 시스템이다. 9일과 21일) 의 상대적 위치 관계를 비교하여 시장 추세의 전환 시점을 포착한다. 전략은 고전적인 기술 분석 이론을 적용하고, 현대적인 양적 거래 방법과 결합하여 완전히 자동화된 거래 의사 결정 과정을 구현한다.
전략의 핵심 논리는 두 개의 다른 주기 이동 평균의 교차 신호를 기반으로 합니다. 단기 평균 (일) 9일 상향이 장기 평균 (일) 21일 상향을 통과하면, 시스템은 시장 동력이 상향으로 전환되어 여러 신호를 유발한다고 생각합니다. 단기 평균 (일) 9일 상향이 장기 평균 (일) 21일 상향을 통과하면, 시스템은 시장 동력이 하향으로 전환되어 거래가 종료됩니다. 또한, 전략에는 거래 통계를 포함하고 있으며, 총 거래 수, 수익 수 및 손실 수를 실시간으로 추적하여 거래자의 전략 수행을 평가하는 데 도움이됩니다.
이것은 양평선 교차를 통해 시장 동력의 변화를 포착하는 고전적이고 실용적인 트렌드 추적 전략이다. 약간의 지연과 잘못된 신호의 위험이 있지만, 그것의 단순하고 안정적인 특성은 양적 거래의 중요한 도구로 만든다. 제안된 최적화 방향에 의해 전략의 안정성과 수익성이 더욱 향상될 것으로 보인다.
/*backtest
start: 2024-05-20 00:00:00
end: 2024-12-13 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Simple MA Crossover Strategy", overlay=true)
// Input parameters
shortMA = ta.sma(close, 9)
longMA = ta.sma(close, 21)
// Buy/Sell conditions
buyCondition = ta.crossover(shortMA, longMA)
sellCondition = ta.crossunder(shortMA, longMA)
// Plot moving averages
plot(shortMA, color=color.blue, title="Short MA")
plot(longMA, color=color.red, title="Long MA")
// Execute trades
if (buyCondition)
strategy.entry("Buy", strategy.long)
if (sellCondition)
strategy.close("Buy")
// Track trades, wins, and losses
var int totalTrades = 0
var int totalWins = 0
var int totalLosses = 0
if (strategy.opentrades > 0)
totalTrades := totalTrades + 1
if (strategy.opentrades == 0 and strategy.opentrades[1] > 0)
if (strategy.netprofit > 0)
totalWins := totalWins + 1
else
totalLosses := totalLosses + 1
// Plot trade statistics
var label tradeStats = na
if (not na(tradeStats))
label.delete(tradeStats)
tradeStats := label.new(bar_index, high, text="Trades: " + str.tostring(totalTrades) + "\nWins: " + str.tostring(totalWins) + "\nLosses: " + str.tostring(totalLosses), style=label.style_label_down, color=color.white, textcolor=color.black)