Strategi ini yang dinamakan
Strategi ini memetakan garis Stochastic %K 14 tempoh dan garis purata mudah bergerak 3 tempoh sebagai Stochastic %D. Perpindahan ke atas %K ke atas %D dianggap sebagai isyarat kenaikan. Perpindahan ke bawah %K di bawah %D menandakan pergerakan menurun. Peraturan kemasukan dan keluar khusus ditakrifkan seperti berikut:
Long Entry: %K melintasi di atas %D manakala %K di bawah 20 Long Exit: %K melintasi di bawah %D manakala %K di atas 80 Entry Pendek: %K melintasi di bawah %D manakala %K di atas 80 Short Exit: %K melintasi di atas %D manakala %K di bawah 20
Strategi ini menangkap titik perubahan yang berpotensi dengan mengenal pasti tahap overbought / oversold menggunakan Stochastic. Berbanding dengan taktik mengikuti trend, ia bertujuan untuk menangkap pergerakan yang lebih besar pada titik perubahan. Peningkatan lanjut melalui penyesuaian parameter, penapisan isyarat dapat meningkatkan kestabilan strategi. Dengan pengurusan risiko yang seimbang, pendekatan yang tertumpu pada pilihan membolehkan penggunaan modal yang cekap untuk potensi ganjaran yang lebih tinggi.
/*backtest start: 2024-01-04 00:00:00 end: 2024-02-03 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Stochastic Weekly Options Strategy", overlay=true, shorttitle="WOS") // Stochastic settings K = ta.stoch(close, high, low, 14) D = ta.sma(K, 3) // Entry and exit conditions longEntry = ta.crossover(K, 20) longExit = ta.crossunder(K, 80) shortEntry = ta.crossunder(K, 80) shortExit = ta.crossover(K, 20) // Strategy execution strategy.entry("Long", strategy.long, when=longEntry) strategy.close("Long", when=longExit) strategy.entry("Short", strategy.short, when=shortEntry) strategy.close("Short", when=shortExit) // Alert conditions alertcondition(longEntry, title="Long Entry Alert", message="Stochastic bullish crossover! Consider buying a call option.") alertcondition(longExit, title="Long Exit Alert", message="Stochastic bearish crossover! Consider selling the call option.") alertcondition(shortEntry, title="Short Entry Alert", message="Stochastic bearish crossover! Consider buying a put option.") alertcondition(shortExit, title="Short Exit Alert", message="Stochastic bullish crossover! Consider selling the put option.") // Plotting shapes for buy and sell signals plotshape(longEntry, title="Calls Entry Label", color=color.new(color.green, 25), textcolor=color.white, style=shape.triangleup, text="Calls", location=location.belowbar, size=size.small) plotshape(longExit, title="Calls Exit Label", color=color.new(color.green, 25), textcolor=color.white, style=shape.circle, text="Exit", location=location.belowbar, size=size.small) plotshape(shortEntry, title="Puts Entry Label", color=color.new(color.red, 25), textcolor=color.white, style=shape.triangledown, text="Puts", location=location.abovebar, size=size.small) plotshape(shortExit, title="Puts Exit Label", color=color.new(color.red, 25), textcolor=color.white, style=shape.circle, text="Exit", location=location.abovebar, size=size.small) // Plotting plot(K, color=color.blue, title="Stochastic %K") plot(D, color=color.red, title="Stochastic %D") hline(80, "Overbought", color=color.red) hline(20, "Oversold", color=color.green)