
이 전략은 스토카스틱 인덱스 ((SMI) 지표에 기반한 단선 거래 전략을 설계했으며 주식과 디지털 화폐의 단선 거래에 주로 사용된다. 이 전략은 스토카스틱 인덱스 지표의 오버 바이 오버 셀 신호와 이동 평균의 확인을 결합하여 트렌드 시장에서 중간 회전을 포착하여 더 나은 입시 지점을 제공합니다.
이 전략은 주로 스토카스틱 인덱스 지표를 사용하여 시장의 과매매 지역을 판단합니다. 스토카스틱 인덱스 지표의 계산 공식은 다음과 같습니다.
SMI = (MA(Close - LL)/(HH - LL)) * 100
그 중, LL은 N일간의 최저 가격,HH는 N일간의 최고 가격이다. 이 지표의 설계 사상은, 종결 가격이 N일간의 최고 가격에 가까워지면, 시장은 초매 상태에 있다. 종결 가격이 N일간의 최저 가격에 가까워지면, 시장은 초매 상태에 있다.
이 전략에서는, SMA 지표 변수 N를 5와 3로, 5일과 3일의 Stochastic Index을 나타냅니다. 일반적으로 단 하나의 변수를 사용하면 잘못된 신호가 발생하기 쉽기 때문에 이 전략은 쌍 SMA 이중 확인을 사용하여 약간의 잡음을 필터링 할 수 있습니다.
또한, 전략에는 이동 평균 EMA 지표가 중첩되어 있으며, 매개 변수가 SMI 지표와 일치하도록 설정되어 SMI 지표의 신호를 추가로 확인하고, 잘못된 판단을 방지합니다.
위험 회피:
이 전략은 전반적으로 짧은 라인 거래에 적합한 전략이다. 이 전략은 Stochastic Index 지표의 과매매 과매매 특성을 결합하여 이동 평균과 함께 신호 필터링 및 확인을 수행하여 일부 단선 거래 기회를 식별 할 수 있다. 그러나 이 전략은 추세 상황에서 잘못된 신호를 발생시키는 경향이 있으므로 사용 할 때 특별한 주의가 필요합니다. 이러한 상황을 피하기 위해 추세 판단 지표와 함께 사용하는 것이 좋습니다.
/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title="SMIndex Strategy", shorttitle="SMIndex Strategy", overlay=false, pyramiding=0, initial_capital=1000, currency=currency.USD)
//
sm1 = input(5, 'sm1')
sm2 = input(3, 'sm2')
//
Lower = lowest (low, sm1)
Hight = highest (high, sm1)
Downsideup = Hight - Lower
Upsidedown = close - (Hight+Lower)/2
//
ema1 = ema(ema(Upsidedown,sm2),sm2)
ema2 = ema(ema(Downsideup,sm2),sm2)
smi = ema2 != 0 ? (ema1/(ema2/2)*100) : 0
//
obLevel1 = input(55, "Over Bought Level 1")
obLevel2 = input(35, "Over Bought Level 2")
osLevel1 = input(-55, "Over Sold Level 1")
osLevel2 = input(-35, "Over Sold Level 2")
//
// h1=plot(obLevel1, color=red, title='Sell 1s 55 do', style=dashed, linewidth=2)
// h2=plot(obLevel2, color=maroon, title='Sell 2s 35 do', style=circles, linewidth=2)
// h3=plot(osLevel1, color=red, title='Buy 1s -55 up', style=dashed, linewidth=2)
// h4=plot(osLevel2, color=maroon, title='Buy 2s -35 up', style=circles, linewidth=2)
plot(smi, color=gray, style=line, linewidth=0, transp=5)
plot(ema1, color=orange, style=line, linewidth=0, transp=5)
plot(0, color=gray, style=circles, linewidth=1, title='Base Line')
//
// fill(h1, h2, color=red, transp=55)
// fill(h3, h4, color=green, transp=55)
//Strategy Long Short Entry
longEntry = (smi) < -75 or (smi) < -65 or (smi) < -55 or (smi) < -45
shortEntry = (smi) > 75 or (smi) > 65 or (smi) > 55 or (smi) > 45
longCondition = longEntry
if(longCondition)
strategy.entry("long", strategy.long)
shortCondition = shortEntry
if(shortCondition)
strategy.entry("short", strategy.short)