Chiến lược giao dịch động lực ngược

Tác giả:ChaoZhang, Ngày: 2024-01-17 17:29:08
Tags:

img

Tổng quan

Chiến lược giao dịch động lực ngược là một chiến lược giao dịch ngắn hạn dựa trên một chỉ số MACD được cải tiến. Chiến lược dựa trên những ý tưởng được đề xuất bởi William Blau trong cuốn sách của ông Momentum, Direction and Divergence, sử dụng mối quan hệ giữa giá và động lực để xây dựng một chỉ số MACD tùy chỉnh có nghĩa ngược với chỉ số MACD tiêu chuẩn.

Chiến lược logic

Chỉ số cốt lõi của chiến lược là MACD được cải thiện.

fastMA = ema(close, 32)
slowMA = ema(close, 5) 
xmacd = fastMA - slowMA
xMA_MACD = ema(xmacd, 5)

Nơi mà fastMA là trung bình chuyển động theo hàm số nhân 32 giai đoạn, slowMA là trung bình chuyển động theo hàm số nhân 5 giai đoạn. Sự khác biệt giữa hai trung bình chuyển động tạo thành xmacd, và xMA_MACD là trung bình chuyển động theo hàm số nhân 5 giai đoạn của xmacd.

Một tín hiệu bán được tạo ra khi xmacd vượt qua trên xMA_MACD, và một tín hiệu mua được tạo ra khi xmacd vượt qua dưới xMA_MACD. Ý nghĩa của tín hiệu là ngược lại với chỉ số MACD tiêu chuẩn, trong đó các tín hiệu mua tiêu chuẩn MACD khi vượt lên và bán tín hiệu khi vượt xuống.

Ưu điểm

  1. Khám phá các cơ hội đảo ngược xu hướng tiềm năng bằng cách sử dụng mối quan hệ giá - động lực.

  2. Cải thiện cài đặt MACD khoa học hơn, các thông số tối ưu hóa, giúp tránh các tín hiệu sai.

  3. Ý tưởng hoạt động ngược độc đáo làm tăng sự đa dạng chiến lược.

  4. Lợi nhuận trên cả thị trường xu hướng và thị trường giới hạn.

Rủi ro

  1. Rủi ro cao trong giao dịch ngược, sử dụng thận trọng.

  2. Tránh dừng quá chặt dẫn đến dừng. Có thể nới lỏng dừng để giảm rủi ro.

  3. Cẩn thận với các tín hiệu đảo ngược bị thiếu.

  4. Tránh hiệu suất thấp dẫn đến tổn thất. Có thể kiểm tra các thông số trên các sản phẩm khác nhau để chọn các hiệu suất cao hơn.

Tối ưu hóa

  1. Kiểm tra các kết hợp tham số dài hạn và ngắn hạn khác nhau để tối ưu hóa các mô hình chỉ số.

  2. Thêm các chỉ số đánh giá xu hướng để tránh các giai đoạn biến động thị trường cực kỳ.

  3. Kết hợp các công cụ kỹ thuật như sóng Elliott, hỗ trợ & kháng cự để xác định các cơ hội đảo ngược tiềm năng.

  4. Tối ưu hóa các cơ chế dừng để ngăn chặn dừng quá mạnh.

Kết luận

Chiến lược giao dịch chuyển động ngược tích hợp các lý thuyết phân tích kỹ thuật và tín hiệu chỉ số khác nhau để nắm bắt các cơ hội đảo ngược khi giá lệch khỏi động lực. Với logic sáng tạo của nó, nó có giá trị thực tế mạnh mẽ. Nhưng rủi ro cao trong giao dịch ngược đòi hỏi quản lý tiền chặt chẽ, tối ưu hóa tham số cẩn thận và kiểm soát rủi ro để tạo ra lợi nhuận ổn định.


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

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 09/12/2016
// This is one of the techniques described by William Blau in his book
// "Momentum, Direction and Divergence" (1995). If you like to learn more,
// we advise you to read this book. His book focuses on three key aspects
// of trading: momentum, direction and divergence. Blau, who was an electrical
// engineer before becoming a trader, thoroughly examines the relationship 
// between price and momentum in step-by-step examples. From this grounding,
// he then looks at the deficiencies in other oscillators and introduces some
// innovative techniques, including a fresh twist on Stochastics. On directional 
// issues, he analyzes the intricacies of ADX and offers a unique approach to help 
// define trending and non-trending periods.
// Blau`s indicator is like usual MACD, but it plots opposite of meaningof
// stndard MACD indicator. 
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Ergotic MACD Strategy Backtest")
r = input(32, minval=1)
SmthLen = input(5, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=blue, linestyle=line)
source = close
fastMA = ema(source, r)
slowMA = ema(source, 5)
xmacd = fastMA - slowMA
xMA_MACD = ema(xmacd, 5)
pos = iff(xmacd < xMA_MACD, 1,
	   iff(xmacd > xMA_MACD, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xmacd, color=green, title="Ergotic MACD")
plot(xMA_MACD, color=red, title="SigLin")

Thêm nữa