Chiến lược này là một hệ thống giao dịch theo xu hướng dựa trên chỉ số đám mây Ichimoku. Nó tạo ra các tín hiệu giao dịch thông qua sự chéo chéo của đường chuyển đổi và đường cơ sở, trong khi sử dụng các vùng hỗ trợ và kháng cự của đám mây để xác nhận hướng xu hướng. Khái niệm cốt lõi là xác định các điểm đảo ngược xu hướng thông qua các chéo chéo động động của các đường trung bình động nhiều giai đoạn và thực hiện giao dịch khi xu hướng được thiết lập.
Chiến lược dựa trên một số thành phần chính:
Dùng tín hiệu giao dịch:
Chiến lược cung cấp một khuôn khổ có hệ thống cho các quyết định giao dịch thông qua phân tích đám mây Ichimoku đa chiều. Sức mạnh của nó nằm trong việc nắm bắt xu hướng toàn diện, mặc dù nó phải đối mặt với một số hạn chế nhất định về sự chậm trễ và sự phụ thuộc vào môi trường thị trường. Khả năng thực tế và độ tin cậy của chiến lược có thể được tăng thêm bằng cách giới thiệu các chỉ số bổ sung và tối ưu hóa các cơ chế xác nhận tín hiệu. Trong ứng dụng thực tế, khuyến cáo tối ưu hóa các tham số dựa trên các đặc điểm thị trường cụ thể và kết hợp với các chỉ số kỹ thuật khác để tăng cường tính ổn định của chiến lược.
/*backtest start: 2019-12-23 08:00:00 end: 2025-01-04 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Ichimoku Cloud Strategy", overlay=true) // Ichimoku Settings conversionPeriods = input(9, title="Conversion Line Period") basePeriods = input(26, title="Base Line Period") laggingSpan2Periods = input(52, title="Lagging Span 2 Period") displacement = input(26, title="Displacement") // Ichimoku Calculation conversionLine = (ta.highest(high, conversionPeriods) + ta.lowest(low, conversionPeriods)) / 2 baseLine = (ta.highest(high, basePeriods) + ta.lowest(low, basePeriods)) / 2 leadLine1 = (conversionLine + baseLine) / 2 leadLine2 = (ta.highest(high, laggingSpan2Periods) + ta.lowest(low, laggingSpan2Periods)) / 2 laggingSpan = ta.valuewhen(close, close, 0)[displacement] // Plot Ichimoku Cloud plot(conversionLine, title="Conversion Line", color=color.blue) plot(baseLine, title="Base Line", color=color.red) plot(leadLine1, title="Lead Line 1", color=color.green) plot(leadLine2, title="Lead Line 2", color=color.orange) plot(laggingSpan, title="Lagging Span", color=color.purple) // Cloud Fill plot(leadLine1, color=color.new(color.green, 90)) plot(leadLine2, color=color.new(color.red, 90)) // Signals buySignal = ta.crossover(conversionLine, baseLine) sellSignal = ta.crossunder(conversionLine, baseLine) // Execute Trades if buySignal strategy.entry("Long", strategy.long) if sellSignal strategy.entry("Short", strategy.short) // Debugging Plots plotshape(buySignal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small) plotshape(sellSignal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)