Các đám mây Ichimoku và MACD Momentum Riding là một chiến lược theo xu hướng kết hợp các chỉ số đám mây Ichimoku và chỉ số động lực MACD. Chiến lược sử dụng các đám mây Ichimoku để xác định hướng xu hướng và mức hỗ trợ / kháng cự, cũng như các chỉ số MACD để phát hiện sự đảo ngược động lực, và đi vào thị trường theo thời gian trong một xu hướng. Trong khi đó, chiến lược áp dụng một dừng lỗ để khóa trong lợi nhuận và giảm rút.
Mây Ichimoku bao gồm Đường quay (Tenkan-Sen), Đường cơ sở (Kijun-Sen), Đường dẫn A (Senkou-Span A), Đường dẫn B (Senkou-Span B) và Đường xác nhận (Chikou-Span).
Sự khác biệt hội tụ trung bình động, hoặc MACD, là một chỉ số động lực. Trong chiến lược này, khi đường nhanh của MACD vượt qua đường chậm, đó là tín hiệu mua, và khi đường nhanh vượt qua đường chậm, đó là tín hiệu bán.
Khi đường quay vượt qua trên đường cơ sở, đường xác nhận vượt qua trên giá đóng 26 thanh trước, giá đóng phá vỡ trên dải trên của Cloud, và đường nhanh của MACD có đường chéo tăng so với đường chậm, đi dài.
Khi giá tăng 3%, chiến lược sẽ di chuyển dừng lỗ đến 97% giá hiện tại để khóa lợi nhuận và theo dõi chuyển động tăng.
Khi đường quay vượt qua dưới đường cơ sở, đường xác nhận vượt qua dưới giá đóng 26 thanh trước, giá đóng phá vỡ dưới dải dưới cùng của Cloud, và đường nhanh của MACD có đường chéo giảm dưới đường chậm, đi ngắn.
Khi giá giảm 3%, chiến lược sẽ di chuyển dừng lỗ lên 103% giá hiện tại để khóa lợi nhuận và theo dõi chuyển động giảm. Nếu tăng vượt quá 3%, dừng lại với lỗ.
Chiến lược này kết hợp xác định xu hướng và thời gian nhập cảnh, có thể đạt được lợi nhuận tốt trong các thị trường xu hướng.
Ichimoku Cloud có thể xác định rõ hướng xu hướng.
MACD có hiệu quả trong việc phát hiện sự đảo ngược động lượng ngắn hạn.
Chế độ dừng lỗ cho phép chiến lược tiếp tục chạy trong thời gian xu hướng.
Ngoài ra còn có một số rủi ro với chiến lược này:
Mây cần thời gian xem lại tương đối dài và có thể cung cấp các tín hiệu không chính xác trong ngắn hạn.
MACD dao động với giá và có thể tạo ra các tín hiệu sai.
Stop loss theo dõi chỉ phù hợp với thị trường xu hướng. Tỷ lệ stop loss cần phải được điều chỉnh phù hợp, nếu không whipsaws có thể dừng lại quá thường xuyên trong các thị trường dao động.
Chính chiến lược không quản lý rủi ro. Người dùng cần thực hiện các kỹ thuật quản lý rủi ro bên ngoài để kiểm soát tổn thất.
Chiến lược Ichimoku Cloud và MACD Momentum Riding có thể được tối ưu hóa theo các cách sau:
Chế độ điều chỉnh tham số - Điều chỉnh đường quay, thời gian xem lại đường cơ sở, tối ưu hóa các tham số MACD để có tín hiệu rõ ràng hơn.
Thêm lọc - Sử dụng các chỉ số khác như RSI, Bollinger Bands để lọc ra các tín hiệu xấu, giảm các tín hiệu sai.
Số liệu được tính theo mục 060 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 080 của mục 0
Bao gồm kích thước vị trí - Giới hạn lỗ tối đa cho mỗi giao dịch để kiểm soát tổng số rút tiền.
Chọn hợp đồng tự động và cân bằng lại - Mở rộng khả năng thích nghi với nhiều thị trường hơn.
Chiến lược Ichimoku Cloud và MACD Momentum Riding xem xét cả xu hướng và thời gian, có thể đạt được lợi nhuận tốt khi các tham số được điều chỉnh đúng cách và kiểm soát rủi ro được thực hiện. Nó phù hợp với các nhà đầu tư có một số kỹ năng lập trình như một chiến lược theo xu hướng, và phục vụ như một tài liệu tham khảo cho những người mới bắt đầu giao dịch lượng để học các chỉ số kỹ thuật và phát triển chiến lược.
/*backtest start: 2022-11-21 00:00:00 end: 2023-11-03 05:20:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Ichimoku Cloud with MACD and Trailing Stop Loss', 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 = time >= timestamp(syminfo.timezone, 2022, 6, 1, 0, 0) // 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)) // Ichimoku Components tenkan = middle(ts_bars) kijun = middle(ks_bars) senkouA = math.avg(tenkan, kijun) senkouB = middle(ssb_bars) // Plot Ichimoku Kinko Hyo plot(tenkan, color=color.new(#0496ff, 0), title='Tenkan-Sen') plot(kijun, color=color.new(#991515, 0), title='Kijun-Sen') plot(close, offset=-cs_offset + 1, color=color.new(#459915, 0), title='Chikou-Span') sa = plot(senkouA, offset=ss_offset - 1, color=color.new(color.green, 0), title='Senkou-Span A') sb = plot(senkouB, offset=ss_offset - 1, color=color.new(color.red, 0), title='Senkou-Span B') fill(sa, sb, color=senkouA > senkouB ? color.green : color.red, title='Cloud color', transp=90) ss_high = math.max(senkouA[ss_offset - 1], senkouB[ss_offset - 1]) ss_low = math.min(senkouA[ss_offset - 1], senkouB[ss_offset - 1]) // MACD [macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9) // Entry/Exit Signals 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 bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(macd, macd_signal) bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossunder(macd, macd_signal) // Configure trail stop level with input options longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01 shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01 // Determine trail stop loss prices longStopPrice = 0.0 shortStopPrice = 0.0 longStopPrice := if strategy.position_size > 0 stopValue = close * (1 - longTrailPerc) math.max(stopValue, longStopPrice[1]) else 0 shortStopPrice := if strategy.position_size < 0 stopValue = close * (1 + shortTrailPerc) math.min(stopValue, shortStopPrice[1]) else 999999 strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod) strategy.exit('Exit', stop = longStopPrice, limit = shortStopPrice) //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)