指数式スムーズストコスタスティックオシレーター戦略は,指数式の敏感性を調整し,取引信号を生成するために指数式重量パラメータを追加することによって,伝統的なストコスタスティック指標の修正バージョンである.指数が過剰購入レベルから横切ったとき長くなって,指数が過剰販売レベルから下を通ったとき短くなってしまいます.最適化された戦略は,トレンドに従う非常に安定した戦略になり得ます.
指数式スムーズストカスティック戦略の核心は指数式重量パラメータである.従来のストカスティックは以下のように計算される:
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
exp を調整することで,s が k に及ぼす影響は変更できる.exp を増加させるとインジケーターがより敏感になり,exp を減少させるとより敏感になる.
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))