
Đây là một chiến lược giảm giá dựa trên chỉ số sức mạnh nội bộ (Internal Bar Strength, IBS) để xác định cơ hội giao dịch chủ yếu bằng cách theo dõi vị trí của giá đóng cửa trong phạm vi giá trong ngày. Khi chỉ số IBS cho thấy tình trạng quá mua, chiến lược sẽ mở vị trí giảm giá khi đáp ứng các điều kiện cụ thể và thanh toán khi IBS đạt mức quá bán.
Cốt lõi của chiến lược là đo vị trí của giá đóng cửa trong phạm vi cao thấp của ngày thông qua chỉ số IBS. Công thức tính toán của IBS là: ((giá đóng cửa - giá thấp nhất) / ((giá cao nhất - giá thấp nhất). Khi IBS lớn hơn hoặc bằng 0,9, cho thấy giá đóng cửa gần mức cao nhất của ngày, được coi là quá mua; khi IBS nhỏ hơn hoặc bằng 0,3, cho thấy giá đóng cửa gần mức thấp nhất của ngày, được coi là quá bán.
Đây là một chiến lược giảm giá dựa trên tư tưởng quay trở lại giá trị trung bình, nắm bắt cơ hội giảm giá sau khi mua quá mức thông qua chỉ số IBS. Chiến lược được thiết kế đơn giản, hoạt động rõ ràng, nhưng vẫn cần được tối ưu hóa theo các loại giao dịch cụ thể và môi trường thị trường.
/*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