기하급수 평형 스토카스틱 오시레이터 전략은 스토카스틱의 감수성을 조정하고 거래 신호를 생성하기 위해 기하급수 무게 매개 변수를 추가하여 전통적인 스토카스틱 지표의 수정 버전입니다. 지표가 과소매 수준에서 넘어가면 길고, 지표가 과소매 수준에서 넘어가면 짧습니다. 최적화된 전략은 트렌드를 따르는 매우 안정적인 전략이 될 수 있습니다.
기하급수적으로 매끄러운 스토카스틱 전략의 핵심은 기하급수적 무게 매개 변수 (ex) 에 있습니다. 전통적인 스토카스틱은 다음과 같이 계산됩니다.
s = 100 * (close - lowest low) / (highest high - lowest low)
기하급수적 매개 변수로, 공식은 다음과 같습니다.
exp = ex<10? (ex)/(10-ex) : 99
s = 100 * (close - lowest low) / (highest high - lowest low)
ks = s>50? math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50
:-math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50
엑스퍼를 조정하면 k에 s의 영향을 바꿀 수 있습니다. 엑스퍼를 증가하면 지표가 덜 민감해지고 엑스퍼를 감소하면 더 민감합니다.
구매 신호는 ks가 과소매 수준에서 넘어가면 생성됩니다. 판매 신호는 ks가 과소매 수준에서 넘어가면 생성됩니다.
전통적인 스토카스틱 전략에 비해, 지수 평형 스토카스틱 오시레이터 전략은 다음과 같은 장점을 가지고 있습니다.
계수 평형 스토카스틱 오시레이터 전략은 또한 다음과 같은 위험을 가지고 있습니다.
계수 평형 스토카스틱 오시레이터 전략은 다음 측면에서 최적화 될 수 있습니다:
기하급수적으로 매끄러운 스토카스틱 오시레이터 전략은 스토카스틱 지표의 민감도를 조정함으로써 더 신뢰할 수있는 거래 신호를 생성합니다. 중장기 트렌드를 효과적으로 추적 할 수 있으며 단기 전략으로 최적화 할 수도 있습니다. 추가 구성성과 매개 변수 최적화로 더 일관된 수익성 수익을 얻을 수 있습니다.
/*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"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © faytterro //@version=5 strategy("Exponential Stochastic Strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100) len=input.int(14, "length") ex=input.int(2, title="exp", minval=1, maxval=10) exp= ex<10? (ex)/(10-ex) : 99 s=100 * (close - ta.lowest(low, len)) / (ta.highest(high, len) - ta.lowest(low, len)) ks=s>50? math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50 : -math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50 plot(ks, color= color.white) bot=input.int(20) top=input.int(80) longCondition = ta.crossover(ks, bot) and bar_index>0 if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = ta.crossunder(ks, top) and bar_index>0 if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) // strategy.close("My Long Entry Id") alertcondition(longCondition, title = "buy") alertcondition(shortCondition, title = "sell") h1=hline(top) h2=hline(bot) h3=hline(100) h4=hline(0) fill(h1,h3, color= color.rgb(255,0,0,200-top*2)) fill(h2,h4, color= color.rgb(0,255,0,bot*2))