
이 전략은 EMA 평균선, MACD 지표 및 일일 상승을 계산하여 시장의 돌파 신호를 종합적으로 판단하여 낮은 가격과 높은 가격의 동력 거래 전략을 구현합니다.
빠른 EMA 라인이 느린 EMA 라인을 통과할 때, 시장이 상승 추세로 간주되어 구매 신호를 생성합니다. MACD 지표의 이차 값이 0 축을 통과할 때, 구매 신호를 생성하여 전략을 실현합니다.
또한, 만약 하루의 종식 가격이 개시 가격보다 10% 이상 상승한다면, 구매 신호가 발생하여 시장의 돌파구를 추구하고 있다.
포지션을 개시한 후, 가격이 10% 이상 떨어지면 상쇄; 수익이 45%에 달하면 상쇄.
이것은 전형적인 트렌드 추적 전략으로, 시장의 중간에 파격적인 상승세를 포착할 수 있으며, 수익 잠재력이 크다. 구체적인 장점은 다음과 같다:
이 전략은 합리적으로 설계되었지만, 위험 요소가 있습니다.
위와 같은 위험을 줄이기 위해, 이동 중지 전략을 최적화하거나, 거래량과 같은 다른 지표와 함께 신호 필터링을 고려할 수 있습니다.
이 전략에는 더 많은 최적화 가능성이 있습니다:
매개 변수 조정, 지표 조합과 같은 방법을 더 개선하면 전략의 안정성과 수익성을 크게 향상시킬 수 있습니다.
이 전략은 전체적으로, 간단한 실용, 수익 잠재력이 큰 특징을 가지고 있다. 시장의 돌파점을 판단하여, 시장의 상승 추세를 효과적으로 잡을 수 있으며, 회수 제어도 상대적으로 합리적이다. 후속 전략 최적화에서, 파라미터 조정, 손해 차단 설계의 개선을 계속 추진하여, 장기적으로 적용할 가치가 있는 정량 거래 전략으로 만든다.
/*backtest
start: 2023-01-11 00:00:00
end: 2024-01-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Alt Coins", overlay=true)
//Simple Alt Coin Trading Strategy//
// by @ShanghaiCrypto //
////EMA////
fastLength = input(5)
slowLength = input(12)
baseLength = input(50)
price = close
emafast = ema(price, fastLength)
emaslow = ema(price, slowLength)
emabase = ema(price, baseLength)
///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD
////PUMP////
OneCandleIncrease = input(10, title='Gain %')
pump = OneCandleIncrease/100
////Profit Capture and Stop Loss//////
stop = input(10.0, title='Stop Loss %', type=float)/100
profit = input(45.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)
////Entries/////
if crossover(emafast, emaslow)
strategy.entry("Cross", strategy.long, comment="BUY")
if (crossover(delta, 0))
strategy.entry("MACD", strategy.long, comment="BUY")
if close > (open + open*pump)
strategy.entry("Pump", strategy.long, comment="BUY")
/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)
////Plots////
plot(emafast, color=green)
plot(emaslow, color=red)
plot(emabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)