Chiến lược giao dịch kết hợp Ichimoku Cloud và Bollinger Bands

Tác giả:ChaoZhang, Ngày: 2023-12-27 16:21:28
Tags:

img

Tổng quan

Chiến lược này kết hợp chỉ số Ichimoku Cloud của Nhật Bản với chỉ số Bollinger Bands để tạo ra tín hiệu giao dịch cho các vị trí dài và ngắn. Chiến lược có thể xác định hiệu quả xu hướng thị trường và đưa ra phán đoán khi chỉ số Bollinger Bands phát ra tín hiệu dài và ngắn để tránh giao dịch sai.

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

  1. Mây Ichimoku bao gồm đường chuyển đổi, đường cơ sở, đường trễ và đường dẫn. Đường chuyển đổi là đường trung bình động 9 ngày và đường cơ sở là đường trung bình động 26 ngày. Khi đường chuyển đổi nằm trên đường cơ sở, đó là tín hiệu tăng và ngược lại là tín hiệu giảm.

  2. Đường chậm là sự chuyển động chậm của giá. Khi đường chậm ở trên, nó chỉ ra xu hướng tăng. Dưới đây chỉ ra xu hướng giảm.

  3. Các dải mây bao gồm hai đường dẫn đầu, đó là đường trung bình động 52 ngày và trung bình của đường trung bình động 26 ngày. Giá trên dải mây được coi là tăng, trong khi dưới đó là giảm.

  4. Các dải Bollinger bao gồm các đường trung bình động và độ lệch chuẩn n ngày, đại diện cho các dải biến động cho giá. Một sự phá vỡ trên dải trên cho thấy những con bò đang kiểm soát trong khi một sự phá vỡ dưới dải dưới cho thấy những con gấu đang kiểm soát.

  5. Chiến lược này hình thành các quy tắc giao dịch dựa trên các tín hiệu được tạo ra từ đám mây Ichimoku và sự đột phá của các dải Bollinger. Ví dụ, khi đường chuyển đổi có đường chéo lên trên đường cơ sở, đường tụt lại phía trên, giá phá vỡ các dải mây và cũng phá vỡ dải trên của dải Bollinger, nó kích hoạt tín hiệu nhập cảnh dài.

Ưu điểm của Chiến lược

  1. Mây Ichimoku đánh giá rõ hướng xu hướng, với các đường chuyển đổi và chậm trễ cho thấy xu hướng ngắn hạn và các dải mây cho thấy hướng xu hướng trung bình đến dài hạn.

  2. Các dải Bollinger xác định liệu giá có quá mở rộng không, có thể lọc hiệu quả một số giao dịch không cần thiết.

  3. Sự kết hợp của các chỉ số làm cho các tín hiệu giao dịch rõ ràng và đáng tin cậy hơn, tránh rủi ro giao dịch.

Rủi ro và tối ưu hóa

  1. Cài đặt tham số không chính xác cho Bollinger Bands có thể dẫn đến các tín hiệu giao dịch không chính xác.

  2. Kích thước vị trí nên được điều chỉnh thích hợp để kiểm soát rủi ro.

  3. Xem xét việc kết hợp một chiến lược dừng lỗ để dừng lỗ khi giá vượt quá một phạm vi nhất định theo hướng không thuận lợi.

  4. Xem xét thử nghiệm nhiều chỉ số kết hợp với đám mây Ichimoku để hình thành các chiến lược giao dịch đáng tin cậy hơn.

Kết luận

Chiến lược này có hiệu quả tận dụng lợi thế của đám mây Ichimoku để xác định hướng xu hướng và chỉ số Bollinger Bands để lọc tín hiệu.


/*backtest
start: 2023-12-19 00:00:00
end: 2023-12-26 00:00:00
period: 10m
basePeriod: 1m
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/
// © Coinrule

//@version=5
strategy("Ichimoku Cloud and Bollinger Bands",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = true
notInTrade = strategy.position_size <= 0


//Ichimoku Cloud
//Inputs
ts_bars = input.int(9, minval=1, title="Tenkan-Sen Bars")
ks_bars = input.int(26, minval=1, title="Kijun-Sen Bars")
ssb_bars = input.int(52, minval=1, title="Senkou-Span B Bars")
cs_offset = input.int(26, minval=1, title="Chikou-Span Offset")
ss_offset = input.int(26, minval=1, title="Senkou-Span Offset")
long_entry = input(true, title="Long Entry")
short_entry = input(true, title="Short Entry")

middle(len) => math.avg(ta.lowest(len), ta.highest(len))

// Components of Ichimoku Cloud
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_bars)

// Plot Ichimoku Cloud
plot(tenkan, color=#0496ff, title="Tenkan-Sen")
plot(kijun, color=#991515, title="Kijun-Sen")
plot(close, offset=-cs_offset+1, color=#459915, title="Chikou-Span")
sa=plot(senkouA, offset=ss_offset-1, color=color.green, title="Senkou-Span A")
sb=plot(senkouB, offset=ss_offset-1, color=color.red, title="Senkou-Span B")
fill(sa, sb, color = senkouA > senkouB ? color.green : color.red, title="Cloud color")

ss_high = math.max(senkouA[ss_offset-1], senkouB[ss_offset-1])
ss_low = math.min(senkouA[ss_offset-1], senkouB[ss_offset-1])

// Entry/Exit Conditions
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = ta.mom(close, cs_offset-1) > 0
cs_cross_bear = ta.mom(close, cs_offset-1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low


//Bollinger Bands Indicator
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))

bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(lower, close)
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossover(close, lower)

strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod)
strategy.close('Long', when=bearish and not short_entry)

strategy.entry('Short', strategy.short, when=bearish and short_entry and timePeriod)
strategy.close('Short', when=bullish and not long_entry)


//Works well on BTC 30m/1h (11.29%), ETH 2h (29.05%), MATIC 2h/30m (37.12%), AVAX 1h/2h (49.2%), SOL 45m (45.43%)


Thêm nữa