
이 전략은 5일, 10일, 20일 지수 이동 평균 ((EMA) 를 계산하여 초 트렌드 지표와 결합하여 구매 및 판매 신호를 생성합니다. 5일 라인이 10일 라인을 통과하고 5일 라인이 10일 라인이 20일 라인을 통과하면 구매 신호를 생성합니다. 10일 라인이 5일 라인을 통과하고 5일 라인이 10일 라인이 20일 라인을 통과하면 판매 신호를 생성합니다.
주요 위험들에 대한 해결책:
이 전략은 5일, 10일, 20일 세 개의 평균선과 초 트렌드 지표를 사용하여 거래 전략을 구축한다. 전략은 간단하고 효율적이며, 추세를 판단하고 기회를 발견하는 데 탁월하다. 동시에 강력한 사용자 정의 및 확장성을 갖추고 있다. 최적화 공간이 넓고, 매개 변수를 조정하고, 기술 지표를 추가하고, 기계 학습을 추가함으로써 전략 성능을 지속적으로 개선하여 더 복잡한 시장 환경에 적응할 수 있다.
/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
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/
// © aadilpatel07
//@version=4
strategy("5-10-20 Cross", overlay=true)
src = close,
len1 = input(5, minval=1, title="EMA 1")
len2 = input(10, minval=1, title="EMA 2")
len3 = input(20, minval=1, title="EMA 3")
mult = input(type=input.float, defval=2)
len = input(type=input.integer, defval=14)
[superTrend, dir] = supertrend(mult, len)
ema1 = ema(src, len1)
ema2 = ema(src, len2)
ema3 = ema(src, len3)
//EMA Color
col1 = color.lime
col2 = color.blue
col3 = color.red
//EMA Plots
plot(series=ema1,color=col1, title="EMA1")
plot(series=ema2,color=col2, title="EMA2")
plot(series=ema3,color=col3, title="EMA3")
//plot SuperTrend
colResistance = dir == 1 and dir == dir[1] ? color.new(color.red, 100) : color.new(color.green, 100)
colSupport = dir == -1 and dir == dir[1] ? color.new(color.green, 0) : color.new(color.green, 10)
plot(superTrend, color = colResistance, linewidth=1)
plot(superTrend, color = colSupport, linewidth=1)
//longCondition = crossover(ema1, ema2) and crossover(ema1,ema3) and crossover(ema2,ema3)
longCondition = ema1 > ema2 and ema1 > ema3 and ema2 > ema3 and ema2 < ema1 and dir == -1
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long)
//shortCondition = crossover(ema2, ema1) and crossover(ema3,ema1) and crossover(ema3,ema2)
shortCondition = ema1 < ema2 and ema1 < ema3 and ema2 < ema3 and ema2 > ema1 and dir == 1
if (shortCondition)
strategy.entry("My Short Entry Id", strategy.short)