Chiến lược định lượng đa yếu tố Great Delight kết hợp nhiều chỉ số kỹ thuật, bao gồm trung bình động, MACD và đám mây Ichimoku, như một chiến lược theo xu hướng dài hạn. Nó chủ yếu sử dụng trung bình động đơn giản 200 ngày để xác định xu hướng tổng thể, và các chi tiết bổ sung từ trung bình di động theo cấp số 20 ngày, chỉ số MACD và đám mây Ichimoku để xác định các điểm vào và ra cụ thể.
Bằng cách xem xét cả xu hướng dài hạn và ngắn hạn, cũng như xác minh nhiều yếu tố, chiến lược này có thể lọc hiệu quả các giao dịch tiếng ồn gây ra bởi các vụ phá vỡ sai. Trong khi theo đuổi các cơ hội chất lượng cao, nó cũng kiểm soát rủi ro, làm cho nó phù hợp với các nhà đầu tư có kinh nghiệm cho cổ phần trung bình đến dài hạn.
Khi giá vượt quá đường MA 200 ngày, chiến lược tin rằng thị trường đang trong xu hướng tăng. Miễn là các chỉ số MA và MACD 20 ngày tạo ra tín hiệu mua cùng một lúc, và giá cao hơn mức giá cao nhất của đám mây Ichimoku hoặc bên trong đám mây, một tín hiệu mua được tạo ra.
Khi giá phá vỡ dưới mức MA 200 ngày, chiến lược xác định xu hướng giảm đã bắt đầu. Các yêu cầu tín hiệu trở nên nghiêm ngặt hơn bây giờ: ngoài các tín hiệu mua MA và MACD 20 ngày, đám mây Ichimoku cũng phải cung cấp tín hiệu mua (đám mây xanh hoặc giá trên đỉnh mây) trước khi kích hoạt mua.
Logic tín hiệu bán là tương tự nhưng ngược lại: trong thị trường bò, một ngọn nến đóng dưới đáy mây hoặc các tín hiệu chuyển đổi mây sẽ bán; trong thị trường gấu, vào đám mây đỏ hoặc 20 ngày MA và MACD tín hiệu bán sẽ bán.
Ưu điểm lớn nhất của chiến lược này nằm trong việc kết hợp nhiều chỉ số dài hạn và ngắn hạn để xác định tình hình thị trường, có thể lọc hiệu quả các tín hiệu sai.
Thông qua việc xác minh nhiều lớp, tỷ lệ lợi nhuận có thể được cải thiện đáng kể.
Rủi ro chính của chiến lược này là khả năng nhiều chỉ số đưa ra tín hiệu sai cùng một lúc. Mặc dù rất khó xảy ra trong điều kiện cực đoan, nhưng nó vẫn có thể xảy ra khi sử dụng kéo dài. Các biện pháp chống chủ yếu là:
Chiến lược có thể được tối ưu hóa từ các khía cạnh sau:
Chiến lược Great Delight lọc ra tiếng ồn thông qua sự kết hợp khoa học của các chỉ số, cho phép lợi nhuận bền vững trong khi kiểm soát rủi ro. Bằng cách xem xét cả xu hướng dài hạn và cơ hội ngắn hạn, nó được áp dụng rộng rãi trong đầu tư trung dài hạn.
/*backtest start: 2023-11-03 00:00:00 end: 2023-12-03 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy(title="MACD/EMA/SMA/Ichimoku Long Strategy",overlay=true) // Ichimoku conversionPeriods = input(9, minval=1, title="Conversion Line Periods"), basePeriods = input(26, minval=1, title="Base Line Periods") laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"), displacement = input(26, minval=1, title="Displacement") donchian(len) => avg(lowest(len), highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = avg(conversionLine, baseLine) leadLine2 = donchian(laggingSpan2Periods) p1 = plot(leadLine1, offset = displacement, color=green, title="Lead 1") p2 = plot(leadLine2, offset = displacement, color=red, title="Lead 2") fill(p1, p2, color = leadLine1 > leadLine2 ? color(green,50) : color(red,50)) bottomcloud=leadLine2[displacement-1] uppercloud=leadLine1[displacement-1] // SMA Indicator - Are we in a Bull or Bear market according to 200 SMA? SMA200 = sma(close, input(200)) EMA = ema(close,input(20)) //MACD Indicator - Is the MACD bullish or bearish? fastLength = input(12) slowlength = input(26) MACDLength = input(9) MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD // Set Buy/Sell conditions [main,signal,histo]=macd(close,fastLength,slowlength,MACDLength) buy_entry = if ((uppercloud>bottomcloud or close>max(uppercloud,bottomcloud)) and close>EMA and (delta>0 and close>min(uppercloud,bottomcloud))) or (close<SMA200 and delta>0 and close>EMA and (uppercloud>bottomcloud or close>max(uppercloud,bottomcloud))) true if close<EMA and ((delta<0 and close<min(uppercloud,bottomcloud)) or (uppercloud<bottomcloud and close>max(uppercloud,bottomcloud))) buy_entry = false strategy.entry("Buy",true , when=buy_entry) alertcondition(buy_entry, title='Long', message='Chart Bullish') sell_entry = if ((uppercloud<bottomcloud or close<min(uppercloud,bottomcloud)) and close<EMA and (delta<0 and close<max(uppercloud,bottomcloud))) or (close>SMA200 and delta<0 and close<EMA and (uppercloud<bottomcloud or close<min(uppercloud,bottomcloud))) true if close>EMA and ((delta>0 and close>max(uppercloud,bottomcloud)) or (uppercloud>bottomcloud and close<min(uppercloud,bottomcloud))) sell_entry = false strategy.close("Buy",when= sell_entry) alertcondition(sell_entry, title='Short', message='Chart Bearish') //plot(delta, title="Delta", style=cross, color=delta>=0 ? green : red )