Chiến lược đảo ngược đà tăng trưởng 8 ngày

Tác giả:ChaoZhang, Ngày: 2023-12-05 10:56:37
Tags:

img

Tổng quan

Chiến lược này chủ yếu sử dụng tính năng đảo ngược giá sau khi liên tục đóng trên hoặc dưới đường trung bình di chuyển đơn giản 5 ngày trong 8 ngày để nắm bắt hiệu ứng đà tăng trong trung hạn và ngắn hạn. Nó đi dài khi giá đóng vượt qua đường 5 ngày một lần nữa sau khi liên tục đóng dưới đường 5 ngày trong 8 ngày; nó đi ngắn khi giá đóng vượt qua đường 5 ngày một lần nữa sau khi liên tục đóng trên đường 5 ngày trong 8 ngày.

Chiến lược logic

  1. Tính toán SMA di chuyển đơn giản 5 ngày.
  2. Định nghĩa xu hướng tăng là gần lớn hơn hoặc bằng SMA, xu hướng giảm là gần nhỏ hơn hoặc bằng SMA.
  3. Xác nhận điều kiện đảo ngược xu hướng: kích hoạt tín hiệu mua khi giá đóng đóng dưới SMA trong 8 ngày liên tiếp và chuyển sang xu hướng tăng (đọc qua SMA) vào ngày hôm sau; kích hoạt tín hiệu bán khi giá đóng đóng trên SMA trong 8 ngày liên tiếp và chuyển sang xu hướng giảm (đọc qua SMA) vào ngày hôm sau.
  4. Nhập: dài khi điều kiện mua mua được kích hoạt hôm qua và xu hướng hiện tại là xu hướng giảm; ngắn khi điều kiện bán bán được kích hoạt hôm qua và xu hướng hiện tại là xu hướng tăng.
  5. Exit: đóng vị trí dài khi giá đóng vượt dưới SMA; đóng vị trí ngắn khi giá đóng vượt trên SMA.

Phân tích lợi thế

  1. Bắt được động lực bằng cách sử dụng các tính năng đảo ngược giá, phù hợp với giao dịch trung bình và ngắn hạn.
  2. Cơ hội giao dịch cao khi đột phá SMA liên tục trong 8 ngày xảy ra thường xuyên.
  3. Chỉ số SMA 5 ngày hoạt động tốt, tránh quá nhiều sự đột phá sai.
  4. Rủi ro có thể kiểm soát được với điểm dừng lỗ rõ ràng.

Phân tích rủi ro

  1. Stop loss có thể được kích hoạt thường xuyên trong quá trình củng cố thị trường.
  2. Có thể bỏ lỡ điểm xuất phát tốt nhất nếu thời gian vượt ngục quá dài.
  3. Khó kiếm được lợi nhuận nếu có xu hướng kéo dài.

Có thể tối ưu hóa các thông số SMA, cải thiện các tiêu chí nhập cảnh để ngăn chặn sự đột phá sai, kết hợp với các chỉ số xu hướng để tăng cường chiến lược.

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

  1. Tối ưu hóa tham số: kiểm tra các giai đoạn khác nhau của SMA để tìm các tham số tốt hơn.
  2. Tối ưu hóa nhập cảnh: thêm các chỉ số âm lượng để tránh đột phá sai; hoặc đánh giá nến bò / gấu để tránh whipsaws.
  3. Tối ưu hóa thoát: kiểm tra tỷ lệ phần trăm cố định dừng lỗ để cung cấp nhiều không gian hơn.
  4. Kiểm soát rủi ro: đặt thời gian dừng lỗ hàng ngày tối đa để hạn chế lỗ.
  5. Kết hợp các chỉ số: thêm RSI, MACD để xác định xu hướng để xác định điều kiện thị trường.

Kết luận

Chiến lược nắm bắt chuyển động giá từ đột phá đến rút lui bằng cách đánh giá đà tăng, thực hiện logic giao dịch để tránh chấn thương và theo xu hướng. Các chìa khóa là cài đặt tham số nghiêm ngặt và tiêu chí nhập mạnh mẽ để ngăn chặn tiếng ồn; dừng lỗ hợp lý để hạn chế lỗ. Kết hợp với các chỉ số xu hướng có thể đạt được kết quả tốt hơn.


/*backtest
start: 2023-11-04 00:00:00
end: 2023-12-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Marcuscor

//@version=5

// Inpsired by Linda Bradford Raschke: a strategy for trading momentum in futures markets

strategy("8D Run", initial_capital = 50000, commission_value = 0.0004) 


SMA = ta.sma(close,5)

TrendUp = close >= SMA

TrendDown = close <= SMA


//logic to long

TriggerBuy = ta.barssince(close < SMA) >= 8

Buy = TriggerBuy[1] and TrendDown 

strategy.entry("EL", strategy.long, when = Buy)
strategy.close(id = "EL", when = close > SMA)

// 1) color background when "run" begins and 2) change color when buy signal occurs
bgcolor(TriggerBuy? color.green : na, transp = 90)
bgcolor(Buy ? color.green : na, transp = 70)


// logic to short 

TriggerSell = ta.barssince(close > SMA) >= 8

Sell = TriggerSell[1] and TrendUp

strategy.entry("ES", strategy.short, when = Sell)
strategy.close(id = "ES", when = close < SMA)

// 1) color background when "run" begins and 2) change color when sell signal occurs
bgcolor(TriggerSell ? color.red : na, transp = 90)
bgcolor(Sell ? color.red : na, transp = 70) 







Thêm nữa