Chiến lược này được đặt tên là Chiến lược Chữ thập vàng và Chữ thập chết. Ý tưởng cốt lõi của nó là tận dụng các tín hiệu mạnh mẽ được tạo ra bởi chữ thập vàng và chữ thập chết của hai đường trung bình động của các khung thời gian khác nhau để nắm bắt sự đảo ngược xu hướng trên thị trường và kiếm lợi từ việc mua thấp / bán cao.
Trong chiến lược này, chúng tôi tính toán đường SMA đơn giản 50 và 200 ngày. Theo truyền thống, khi SMA 50 ngày vượt dưới SMA 200 ngày, nó được gọi là
Lý thuyết giao dịch đơn giản là để có vị trí dựa trên các tín hiệu này - bán ngắn ở death cross và đi dài ở golden cross.
Ngoài ra, chiến lược cung cấp phạm vi ngày có thể tùy chỉnh cho backtests. vì vậy chúng ta có thể kiểm tra hiệu quả thực tế của các tín hiệu chéo trên các khoảng thời gian khác nhau.
Để giải quyết rủi ro, chúng ta có thể tối ưu hóa các tham số, thêm các bộ lọc, quản lý rủi ro, giao dịch bằng giấy chiến lược vv để giảm thiểu rủi ro.
Các cách chính để tối ưu hóa chiến lược này bao gồm:
Bằng cách kiểm tra các tác động của các tham số, chúng ta có thể khám phá ra các hệ thống chéo trung bình động tốt hơn.
Chiến lược này tận dụng chỉ số kỹ thuật cổ điển của đường chéo trung bình chuyển động để nắm bắt các điểm uốn nắn chính trong thị trường. Với logic đơn giản và các tính năng backtest thuận tiện, nó có thể giúp theo dõi xu hướng như một phần của một hệ thống rộng hơn.
/*backtest start: 2024-01-14 00:00:00 end: 2024-01-21 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("[S_R__9] - Death and Golden Cross", overlay=true) // Specific Time Date Range For Backtest startDate = input.int(title='Start Date', defval=1, minval=1, maxval=31, group='DATE CONFIG') startMonth = input.int(title='Start Month', defval=1, minval=1, maxval=12, group='DATE CONFIG') startYear = input.int(title='Start Year', defval=2023, minval=1800, maxval=2100, group='DATE CONFIG') endDate = input.int(title='End Date', defval=31, minval=1, maxval=31, group='DATE CONFIG') endMonth = input.int(title='End Month', defval=12, minval=1, maxval=12, group='DATE CONFIG') endYear = input.int(title='End Year', defval=2023, minval=1800, maxval=2100, group='DATE CONFIG') SPECIFIC_DATE = input.bool(title='USE SPECIFIC DATE ?', defval=false, group='DATE CONFIG') inDateRange = SPECIFIC_DATE ? time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0) and time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0) : true // Calculate 50 SMA and 200 SMA sma50 = ta.sma(close, 50) sma200 = ta.sma(close, 200) // Detect a Death Cross (50 SMA crossing below 200 SMA) deathCross = ta.crossunder(sma50, sma200) // Detect a Golden Cross (50 SMA crossing above 200 SMA) goldenCross = ta.crossover(sma50, sma200) // Strategy Execution if (inDateRange) if (deathCross) strategy.entry("Death Cross long", strategy.short) if (goldenCross) strategy.entry("Golden Cross short", strategy.long) // Plot SMAs plot(sma50, color=color.red, title="50 SMA") plot(sma200, color=color.blue, title="200 SMA") // Plotting Death Cross signal plotshape(series=deathCross and inDateRange, title="Death Cross Signal", location=location.belowbar, color=color.red, style=shape.labeldown, text="DEATH CROSS") // Plotting Golden Cross signal plotshape(series=goldenCross and inDateRange, title="Golden Cross Signal", location=location.abovebar, color=color.green, style=shape.labelup, text="GOLDEN CROSS")