
Ini adalah strategi shorting yang didasarkan pada indikator kekuatan dalaman (Internal Bar Strength, IBS) dan digunakan untuk mengenal pasti peluang perdagangan, terutamanya dengan memantau kedudukan harga penutupan dalam julat harga harian. Apabila indikator IBS menunjukkan keadaan overbought, strategi ini akan membuka posisi shorting jika syarat tertentu dipenuhi, dan keluar dari posisi kosong apabila IBS mencapai tahap oversold.
Strategi ini berpusat pada pengukuran kedudukan harga penutupan dalam julat harga tinggi dan rendah hari itu melalui indikator IBS. Formula pengiraan IBS adalah: ((Harga penutupan - harga terendah) / ((Harga tertinggi - harga terendah)). Apabila nilai IBS lebih besar daripada sama dengan 0.9, menunjukkan bahawa harga penutupan hampir mencapai titik tertinggi hari itu, dianggap sebagai keadaan overbuy; apabila nilai IBS kurang daripada sama dengan 0.3, menunjukkan bahawa harga penutupan hampir mencapai titik terendah hari itu, dianggap sebagai keadaan oversell.
Ini adalah strategi shorting berdasarkan idea pulangan nilai rata-rata, menangkap peluang pulangan selepas harga overbought melalui penunjuk IBS. Strategi ini direka dengan ringkas, operasi jelas, tetapi masih perlu dioptimumkan mengikut varieti perdagangan dan keadaan pasaran tertentu.
/*backtest
start: 2024-06-01 00:00:00
end: 2025-02-18 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Botnet101
//@version=6
strategy('[SHORT ONLY] Internal Bar Strength (IBS) Mean Reversion Strategy', overlay = false, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, margin_long = 5, margin_short = 5, process_orders_on_close = true, precision = 4)
//#region INPUTS SECTION
// ============================================
//#region IBS Thresholds
upperThresholdInput = input.float(defval = 0.9, title = 'Upper Threshold', step = 0.1, maxval=1, group = 'IBS Settings')
lowerThresholdInput = input.float(defval = 0.3, title = 'Lower Threshold', step = 0.1, minval=0, group = 'IBS Settings')
//#endregion
//#endregion
//#region IBS CALCULATION
// ============================================
// IBS Value Calculation
// ============================================
internalBarStrength = (close - low) / (high - low)
//#endregion
//#region TRADING CONDITIONS
// ============================================
// Entry/Exit Logic
// ============================================
shortCondition = internalBarStrength >= upperThresholdInput and close>high[1]
exitCondition = internalBarStrength <= lowerThresholdInput
//#endregion
//#region STRATEGY EXECUTION
// ============================================
// Order Management
// ============================================
if shortCondition
strategy.entry('short', strategy.short)
if exitCondition
strategy.close_all()
//#endregion
//#region PLOTTING
// ============================================
// Visual Components
// ============================================
plot(internalBarStrength, color = color.white, title = "IBS Value")
plot(upperThresholdInput, color = color.yellow, title = "Upper Threshold")
plot(lowerThresholdInput, color = color.yellow, title = "Lower Threshold")
//#endregion