Chiến lược đảo ngược trung bình của Bollinger Bands và Intraday Strength Index


Ngày tạo: 2024-02-20 15:07:59 sửa đổi lần cuối: 2024-02-20 15:07:59
sao chép: 0 Số nhấp chuột: 825
1
tập trung vào
1617
Người theo dõi

Chiến lược đảo ngược trung bình của Bollinger Bands và Intraday Strength Index

Tổng quan

Chiến lược này là một chiến lược quay trở lại giá trị trung bình dựa trên Brin và chỉ số cường độ trong ngày. Nó sử dụng giá phá vỡ Brin và xuống đường, kết hợp với chỉ số cường độ trong ngày của khối lượng giao dịch để xác định thời gian vào. Những lợi thế của chiến lược bao gồm: lợi nhuận bằng cách sử dụng tính năng quay trở lại trung bình của giá, kết hợp với chỉ số năng lượng của khối lượng.

Nguyên tắc chiến lược

Chiến lược này bắt đầu bằng cách tính toán đường trung ương, đường trên và đường dưới của vòng Brin. đường trung ương là đường trung bình di chuyển đơn giản hoặc đường trung bình di chuyển chỉ số của giá đóng cửa. đường trên và đường dưới được xây dựng bằng cách tính toán chênh lệch tiêu chuẩn, tăng gấp đôi chênh lệch tiêu chuẩn trên đường trung bình.

Như một chỉ số phán đoán hỗ trợ, chiến lược đã giới thiệu chỉ số cường độ trong ngày. Chỉ số này kết hợp thông tin giá cả và thông tin khối lượng giao dịch. Khi chỉ số là tích cực, nó biểu thị tăng cường sức mạnh mua, như một tín hiệu nhiều vị trí. Khi chỉ số là âm, nó biểu thị tăng cường sức mạnh bán, như một tín hiệu trống.

Trong trường hợp mở vị trí, chiến lược yêu cầu giá phá vỡ đường dây Brin và đường đi xuống cùng một lúc với chỉ số phán quyết của chỉ số cường độ trong ngày. Trong trường hợp dừng lỗ, chiến lược sẽ dừng lỗ theo thời gian và chọn dừng lỗ nếu không có lợi nhuận sau một chu kỳ nhất định.

Phân tích lợi thế

Ưu điểm lớn nhất của chiến lược này là lợi dụng tính chất quay trở trung bình của giá để kiếm lợi nhuận. Theo luật thống kê, có xác suất cao hơn cho giá quay trở về trục trung bình khi giá bị lệch lớn, điều này cung cấp cơ sở lý thuyết cho hoạt động của chiến lược.

Một lợi thế khác là chiến lược này đã thêm chỉ số cường độ giao dịch trong ngày vào chỉ số cường độ giao dịch trong ngày để lọc tín hiệu giá. Số lượng giao dịch có thể chứng minh hiệu quả của tín hiệu giá. Điều này tránh tạo ra tín hiệu sai trong trường hợp số lượng giao dịch không đủ trong một số biến động giá mạnh.

Phân tích rủi ro

Mặc dù chiến lược này phụ thuộc vào sự kiện xác suất giá quay trở lại trung bình để kiếm lợi nhuận, nhưng sự di chuyển ngẫu nhiên của giá thị trường cũng có thể dẫn đến việc dừng lỗ được kích hoạt, do đó thua lỗ. Đây là rủi ro phổ biến đối với chiến lược quay trở lại trung bình.

Một rủi ro chính khác là việc giá quay trở lại giá trị trung bình tự nó là một quá trình có chu kỳ thời gian dài. Đối với nhà đầu tư, tiền có thể bị nhốt trong một khoảng thời gian. Rủi ro thời gian này có thể khiến nhà đầu tư mất cơ hội đầu tư tốt hơn.

Hướng tối ưu hóa

Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:

  1. Tối ưu hóa các tham số và chu kỳ điều chỉnh và chỉ số chênh lệch tiêu chuẩn để thích ứng với môi trường biến động của các thị trường khác nhau

  2. Thử các loại trung bình di chuyển khác, như trung bình di chuyển cân nặng tuyến tính để cải thiện sự trơn tru

  3. Thử các loại chỉ số giao dịch khác để tìm các tín hiệu xác nhận giá tốt hơn

  4. Thêm chiến lược dừng lỗ để kiểm soát tổn thất tối đa cho mỗi đơn đặt hàng

Tóm tắt

Chiến lược này nói chung là một chiến lược quay trở lại trung bình điển hình. Dựa vào sự kiện xác suất để kiếm lợi nhuận, nhưng rủi ro cũng rõ ràng. Bằng cách điều chỉnh tham số, tối ưu hóa chỉ số có thể đạt được kết quả tốt hơn.

Mã nguồn chiến lược
/*backtest
start: 2024-01-20 00:00:00
end: 2024-02-19 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/

// Bollinger Bands Strategy with Intraday Intensity Index
// by SparkyFlary

//For Educational Purposes
//Results can differ on different markets and can fail at any time. Profit is not guaranteed.
strategy(title="Bollinger Bands Strategy with Intraday Intensity Index", shorttitle="Bollinger Bands Strategy", overlay=true)

BBlength = input(20, title="Bollinger Bands length")
BBmaType = input("SMA", title="Bollinger Bands MA type", type=input.string, options=["SMA", "EMA"])
BBprice = input(close, title="source")
timeStop = input(10, title="Time-based stop length")
BBmult = input(2.0, title="Bollinger Bands Standard Deviation")
withIII = input(true, title="with Intraday Intensity Index?")
IIIlength = input(21, title="Intraday Intensity Index length")

//function for choosing moving averages
f_ma(type, src, len) =>
    float result = 0
    if type == "SMA"
        result := sma(src, len)
    if type == "EMA"
        result := ema(src, len)
    result

//Intraday Intensity Index
k1 = (2 * close - high - low) * volume
k2 = high != low ? high - low : 1
i = k1 / k2
iSum = sum(i, IIIlength)

//Bollinger Bands
BBbasis = f_ma(BBmaType, BBprice, BBlength)
BBdev = BBmult * stdev(BBprice, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev

plot(BBupper, title="Bollinger Bands Upper Line")
plot(BBlower, title="Bollinger Bands Lower Line")
plot(BBbasis, title="Bollinger Bands Mid line", color=color.maroon)

//Strategy
buy = close[1]<BBlower[1] and close>BBlower and (withIII ? iSum>0 : 1)
sell = close>BBbasis or buy[timeStop] or (strategy.openprofit>0 and buy==0 and buy[1]==0 and buy[2]==0 and buy[3]==0)
short = close[1]>BBupper[1] and close<BBupper and (withIII ? iSum<0 : 1)
cover = close<BBbasis or short[timeStop] or (strategy.openprofit>0 and short==0 and short[1]==0 and short[2]==0 and short[3]==0)

strategy.entry(id="enter long", long=true, when=buy)
strategy.close(id="enter long", comment="exit long", when=sell)
strategy.entry(id="enter short", long=false, when=short)
strategy.close(id="enter short", comment="exit short", when=cover)