Chiến lược này được đặt tên là
Chiến lược này chủ yếu dựa trên các nguyên tắc sau:
Sử dụng đường SMA với các thông số khác nhau để xây dựng tín hiệu giao dịch chéo vàng và chéo chết. Một tín hiệu mua được tạo ra khi SMA ngắn hạn vượt qua SMA dài hạn, và một tín hiệu bán được tạo ra khi SMA ngắn hạn vượt qua dưới SMA dài hạn.
Sử dụng chỉ số biểu đồ đám mây Ichimoku để xác định độ sâu và xu hướng thị trường. Một tín hiệu mua chỉ được tạo ra khi giá đóng cao hơn khoảng cách dẫn đầu A và khoảng cách dẫn đầu B của biểu đồ đám mây, và một tín hiệu bán chỉ được tạo ra khi giá đóng thấp hơn khoảng cách A và khoảng cách B, lọc ra hầu hết các tín hiệu sai.
Sử dụng chỉ số khối lượng giao dịch để lọc các tín hiệu sai với khối lượng thấp.
Sử dụng hàm đồ thị để đánh dấu các vị trí của tín hiệu mua và bán trên biểu đồ.
Bằng cách này, chiến lược tính đến xu hướng ngắn hạn và dài hạn, chỉ số độ sâu thị trường và chỉ số khối lượng giao dịch để tối ưu hóa các quyết định giao dịch.
Những lợi thế của chiến lược này bao gồm:
Các rủi ro của chiến lược này cũng bao gồm:
Những rủi ro này có thể được giảm bằng cách tối ưu hóa các thông số như SMA, Ichimoku, khối lượng và chọn các sản phẩm giao dịch phù hợp.
Chiến lược có thể được tối ưu hóa theo nhiều cách:
Chiến lược này tích hợp SMA crossover, chỉ số độ sâu thị trường và chỉ số khối lượng để tạo thành một chiến lược giao dịch định lượng tương đối ổn định và đáng tin cậy. Nó có thể được tối ưu hóa hơn nữa thông qua điều chỉnh tham số, thêm các chỉ số kỹ thuật mới, v.v. Các kết quả backtest và trực tiếp rất hứa hẹn. Tóm lại, chiến lược này cung cấp một trường hợp học tập tốt cho người mới bắt đầu.
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("SMA Crossover with Ichimoku & Volume", shorttitle="SCIV", overlay=true) // Define the length of SMA shortSmaLength = input(14, title="Short SMA Length") longSmaLength = input(21, title="Long SMA Length") volumeLength = input(20, title="Volume Moving Average Length") // Calculate the SMA and Volume MA shortSma = sma(close, shortSmaLength) longSma = sma(close, longSmaLength) volumeMa = sma(volume, volumeLength) // Define the lengths of the Ichimoku Cloud components tenkanLength = input(9, title="Tenkan Length") kijunLength = input(26, title="Kijun Length") senkouBLength = input(52, title="Senkou B Length") displacement = input(26, title="Displacement") // Calculate the Ichimoku Cloud components tenkan = (highest(high, tenkanLength) + lowest(low, tenkanLength)) / 2 kijun = (highest(high, kijunLength) + lowest(low, kijunLength)) / 2 senkouA = (tenkan + kijun) / 2 senkouB = (highest(high, senkouBLength) + lowest(low, senkouBLength)) / 2 // Define the conditions for entry and exit with Ichimoku filter and Volume filter buyEntry = crossover(shortSma, longSma) and close > senkouA[displacement] and close > senkouB[displacement] and volume > volumeMa sellEntry = crossunder(shortSma, longSma) and close < senkouA[displacement] and close < senkouB[displacement] and volume > volumeMa // Plot buy/sell conditions on the chart for visual inspection plotshape(buyEntry, style=shape.labelup, location=location.belowbar, color=color.green, text="Buy", size=size.small) plotshape(sellEntry, style=shape.labeldown, location=location.abovebar, color=color.red, text="Sell", size=size.small) // Execute the strategy if (buyEntry) strategy.entry("Buy", strategy.long) if (sellEntry) strategy.entry("Sell", strategy.short)