Chỉ số động lực kép và chiến lược lai đảo ngược

Tác giả:ChaoZhangNgày: 2024-02-06 12:22:32
Tags:

img

Tổng quan

Double Momentum Index và Reversal Hybrid Strategy là một chiến lược tổng hợp kết hợp các chiến lược đảo ngược và động lực. Nó tích hợp 123 Reversal Strategy và Commodity Selection Index (CSI) như là các chiến lược phụ để xác định các tín hiệu đầu vào dựa trên xác nhận kép. Chiến lược nhằm cải thiện độ chính xác của các tín hiệu giao dịch.

Chiến lược logic

Chiến lược bao gồm hai tiểu chiến lược:

  1. 123 Chiến lược đảo ngược. Nó đi dài khi giá đóng tăng trong hai ngày liên tiếp và Stoch dưới 50; nó đi ngắn khi giá đóng giảm trong hai ngày liên tiếp và Stoch trên 50.

  2. Chỉ số lựa chọn hàng hóa (CSI) Chiến lược. Nó kết hợp giữa Average True Range (ATR) và Average Directional Movement Index (ADX). ATR phản ánh sự biến động của thị trường và ADX phản ánh sức mạnh của xu hướng. Giá trị CSI càng cao, xu hướng và biến động của thị trường càng mạnh.

Toàn bộ chiến lược sử dụng chiến lược 123 Reversal như cơ thể chính và CSI như một xác nhận trợ lý. Các tín hiệu giao dịch chỉ được tạo ra khi các tín hiệu của cả hai chiến lược đều phù hợp. Nó đi dài khi giá đóng tăng trong hai ngày liên tiếp và Stoch dưới 50, và cùng một lúc khi CSI vượt qua mức trung bình động của nó; nó đi ngắn khi giá đóng giảm trong hai ngày liên tiếp và Stoch trên 50, và cùng một lúc khi CSI vượt qua mức trung bình động của nó.

Điều này đảm bảo thuộc tính đảo ngược của tín hiệu giao dịch, trong khi thêm CSI vào bộ lọc có thể giảm tín hiệu sai.

Ưu điểm

Chiến lược có những lợi thế sau:

  1. Kết hợp đảo ngược và động lượng cải thiện độ chính xác tín hiệu. 123 đảo ngược như là tín hiệu chính có thể bắt được đảo ngược đột ngột và bạo lực. CSI như là xác nhận có thể lọc ra một số tiếng ồn.

  2. Việc áp dụng lọc tổng hợp có thể làm giảm đáng kể các vị trí ròng. Ngay cả khi các chiến lược phụ có một số tín hiệu sai, tín hiệu cuối cùng phải được xác nhận gấp đôi, có thể lọc hầu hết các tín hiệu sai và giảm thiểu việc mở và đóng các vị trí không cần thiết.

  3. Các tham số của các chiến lược phụ có thể được tối ưu hóa riêng biệt mà không can thiệp vào nhau. Điều này giúp tìm ra sự kết hợp các tham số tối ưu.

  4. Các chiến lược phụ có thể được bật riêng biệt. Chiến lược hỗ trợ chỉ sử dụng 123 Reversal hoặc CSI cho giao dịch một mình. Điều này cung cấp tính linh hoạt.

Phân tích rủi ro

Mặc dù chiến lược giảm đáng kể tín hiệu sai thông qua lọc tổng hợp, nhưng vẫn có những rủi ro chính sau:

  1. Tần suất tạo tín hiệu chiến lược tương đối thấp. Bằng cách áp dụng xác nhận hai lần, một tỷ lệ nhất định các cơ hội giao dịch chắc chắn sẽ được lọc ra. Đây là chi phí không thể tránh khỏi để đạt được tỷ lệ thắng cao.

  2. Nếu các tham số của hai chiến lược con không phù hợp, nó có thể dẫn đến tín hiệu hiếm hoặc thậm chí không có tín hiệu.

  3. 123 Phản hồi thuộc về các hoạt động chống xu hướng. Trong trường hợp đột phá giá một chiều liên tục và bạo lực, chiến lược sẽ phải đối mặt với rủi ro lớn hơn.

Hướng tối ưu hóa

Các khả năng tối ưu hóa chính của chiến lược này là trong các lĩnh vực sau:

  1. Tối ưu hóa các tham số nội tại của mỗi chiến lược con để tìm các kết hợp tham số tối ưu, bao gồm các tham số của Stoch, CSI, v.v.

  2. Thử nghiệm thêm vào các bộ lọc điều kiện thị trường khác nhau, chẳng hạn như sử dụng CSI chỉ khi xu hướng chiếm ưu thế, sử dụng 123 Reversal chỉ trong các thị trường giới hạn phạm vi, v.v. Điều này có thể khắc phục các nhược điểm của các chiến lược phụ đến một mức độ nào đó.

  3. Phát triển các mô-đun tự điều chỉnh tham số và tối ưu hóa năng động, cho phép chiến lược tự động điều chỉnh các tham số và theo dõi các kết hợp tham số tối ưu theo điều kiện thị trường và thống kê trong thời gian thực.

  4. Kiểm tra các cơ chế dừng lỗ khác nhau.

Tóm lại

Chỉ số động lực kép và Chiến lược lai đảo ngược sử dụng các ý tưởng xác nhận và kết hợp nhiều tín hiệu, sử dụng tốt các điểm mạnh tương ứng của các chiến lược đảo ngược và động lực, trong khi vượt qua những thiếu sót của chúng bằng cách lọc lẫn nhau, để đạt được hiệu quả và ổn định cao.


/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/10/2019
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The Commodity Selection Index ("CSI") is a momentum indicator. It was 
// developed by Welles Wilder and is presented in his book New Concepts in 
// Technical Trading Systems. The name of the index reflects its primary purpose. 
// That is, to help select commodities suitable for short-term trading.
// A high CSI rating indicates that the commodity has strong trending and volatility 
// characteristics. The trending characteristics are brought out by the Directional 
// Movement factor in the calculation--the volatility characteristic by the Average 
// True Range factor.
// Wilder's approach is to trade commodities with high CSI values (relative to other 
// commodities). Because these commodities are highly volatile, they have the potential 
// to make the "most money in the shortest period of time." High CSI values imply 
// trending characteristics which make it easier to trade the security.
// The Commodity Selection Index is designed for short-term traders who can handle 
// the risks associated with highly volatile markets.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

fADX(Len) =>
    up = change(high)
    down = -change(low)
    trur = rma(tr, Len)
    plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur)
    minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur)
    sum = plus + minus 
    100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len)

CSI(Length, Commission, Margin, PointValue) =>
    pos = 0.0
    K = 100 * ((PointValue / sqrt(Margin) / (150 + Commission)))
    xATR = atr(Length)
    xADX = fADX(Length)
    nADXR = (xADX + xADX[Length]) * 0.5
    xCSI = K * xATR * nADXR
    xMACSI = sma(xCSI, Length)
    pos := iff(xCSI < xMACSI, 1,
    	     iff(xCSI > xMACSI, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Strategy 123 Reversal & Commodity Selection Index", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
PointValue = input(50)
Margin = input(3000)
Commission = input(10)
LengthCSI = input(14)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCSI = CSI(LengthCSI, Commission, Margin, PointValue)
pos = iff(posReversal123 == 1 and posCSI == 1 , 1,
	   iff(posReversal123 == -1 and posCSI == -1, -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)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

Thêm nữa