Chiến lược số lượng đa yếu tố của Great Delight

Tác giả:ChaoZhang, Ngày: 2023-12-04 13:04:03
Tags:

img

Tổng quan

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.

Nguyên tắc chiến lược

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.

Phân tích lợi thế

Ư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.

  1. MA 200 ngày xác định xu hướng tổng thể để tránh giao dịch ngược xu hướng.
  2. MA 20 ngày tập trung vào động lực ngắn hạn để nắm bắt sự đảo ngược.
  3. MACD xác minh sự thay đổi xu hướng.
  4. Mây Ichimoku kiểm tra hai lần để ngăn chặn 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ể.

Phân tích rủi ro

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à:

  1. Điều chỉnh các thông số phù hợp để tìm ra sự kết hợp tối ưu.
  2. Dừng lỗ nghiêm ngặt để nhanh chóng đảo ngược hướng sau khi tín hiệu sai. Có thể xem xét thêm dừng trong giao dịch trực tiếp.
  3. Sử dụng các phương pháp bảo hiểm tương lai để giữ lợi nhuận.
  4. Điều chỉnh kích thước vị trí theo các khu vực hỗ trợ chính.

Hướng dẫn tối ưu hóa

Chiến lược có thể được tối ưu hóa từ các khía cạnh sau:

  1. Kiểm tra các kết hợp tham số khác nhau để tìm ra tối ưu.
  2. Thêm một mô-đun dừng lỗ để kiểm soát rủi ro tốt hơn.
  3. Bao gồm các chỉ số tương quan như tỷ lệ thay đổi để tránh theo đuổi đỉnh và đáy.
  4. Giới thiệu các phương pháp học máy như mạng thần kinh để đào tạo cân nặng chỉ số.
  5. Kiểm tra độ bền trên các thị trường khác nhau.

Kết luận

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 )

Thêm nữa