Chiến lược trọng tài đảo ngược kép

Tác giả:ChaoZhang, Ngày: 2024-02-06 09:58:04
Tags:

img

Tổng quan

Chiến lược trọng tài đảo ngược kép là một thuật toán trọng tài tích hợp các chỉ số đảo ngược kép. Nó kết hợp hệ thống đảo ngược 123 và các chiến lược phụ của dao động swing Gann và tạo ra các tín hiệu giao dịch khi cả hai chiến lược phụ phát ra tín hiệu cùng một lúc để thực hiện các hoạt động trọng tài.

Chiến lược logic

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

  1. 123 Hệ thống đảo ngược: Nó được lấy từ cuốn sách How I Tripled My Money in The Futures Market của Ulf Jensen, trang 183. Quy tắc giao dịch của nó là: khi giá đóng cao hơn giá đóng trước và thấp hơn giá đóng trước 2 ngày, đi dài khi đường K chậm dưới 50; khi giá đóng thấp hơn giá đóng trước và cao hơn giá đóng trước 2 ngày, đi ngắn khi đường K nhanh trên 50.

  2. Gann Swing Oscillator: Nó được chuyển thể từ cuốn sách của Robert Krausz A W.D. Gann Treasure Discovered Nó đánh giá hướng biến động của thị trường bằng cách tính toán sự gia tăng và giảm giá cao nhất và thấp nhất trong một khoảng thời gian nhất định.

Logic giao dịch của chiến lược này là: khi các hướng tín hiệu của hai chiến lược phụ là phù hợp, các tín hiệu giao dịch thực tế được tạo ra.

Phân tích lợi thế

Lợi thế lớn nhất của chiến lược này là bằng cách tích hợp các tín hiệu của hai chiến lược phụ, nó có thể lọc hiệu quả các tín hiệu sai và cải thiện độ chính xác của các tín hiệu giao dịch. Hai chiến lược phụ đều có điểm mạnh riêng của riêng mình. Hệ thống đảo ngược 123 có thể nắm bắt xu hướng đảo ngược đột ngột, trong khi dao động swing Gann có thể xác định độ trưởng thành của sự đảo ngược xu hướng. Kết hợp cả hai có thể làm cho tín hiệu giao dịch đáng tin cậy hơn, do đó tăng sự ổn định của chiến lược.

Phân tích rủi ro

Rủi ro chính của chiến lược này là xác suất các hướng tín hiệu giao dịch không nhất quán từ hai chiến lược phụ tương đối lớn, có thể dẫn đến các tín hiệu giao dịch không đủ. Ngoài ra, các chiến lược phụ cũng có một số rủi ro về tín hiệu sai. Sự kết hợp của hai yếu tố này có thể dẫn đến số lượng giao dịch không đủ cho chiến lược, do đó không thể nắm bắt đầy đủ các cơ hội thị trường.

Để giảm thiểu rủi ro, các tham số của các chiến lược phụ có thể được điều chỉnh để tăng tỷ lệ giao dịch một cách vừa phải, hoặc các chỉ số khác có thể được kết hợp để hỗ trợ lọc các tín hiệu sai.

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

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

  1. Điều chỉnh các thông số của các chiến lược phụ để tối ưu hóa tần suất giao dịch;
  2. Thêm các đánh giá về các chỉ số kỹ thuật khác để cải thiện chất lượng tín hiệu;
  3. Tối ưu hóa trọng lượng của các chiến lược phụ dựa trên các sản phẩm và khung thời gian khác nhau;
  4. Thêm các cơ chế dừng lỗ để kiểm soát lỗ giao dịch duy nhất.

Tóm lại

Chiến lược điều chỉnh đảo ngược kép tạo ra các tín hiệu giao dịch tương đối mạnh bằng cách tích hợp hai loại chiến lược đảo ngược khác nhau. Nó có thể lọc hiệu quả tiếng ồn và cải thiện chất lượng tín hiệu, phù hợp để nắm bắt các cơ hội đảo ngược trên thị trường. Tuy nhiên, xác suất tín hiệu không nhất quán từ các chiến lược phụ tương đối lớn, có thể dẫn đến tần suất giao dịch không đủ. Ngoài ra, các thiết lập tham số của các chiến lược kết hợp là khá phức tạp, đòi hỏi phải kiểm tra và tối ưu hóa đủ để đạt được kết quả tốt nhất.


/*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 04/11/2020
// 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 Gann Swing Oscillator has been adapted from Robert Krausz's book, 
// "A W.D. Gann Treasure Discovered". The Gann Swing Oscillator helps 
// define market swings. 
//
// 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

    
GannSO(Length) =>
    pos = 0.0
    xGSO = 0.0
    xHH = highest(Length)
    xLL = lowest(Length)
    xGSO:= iff(xHH[2] > xHH[1] and xHH[0] > xHH[1], 1,
             iff(xLL[2] < xLL[1] and xLL[0] < xLL[1], -1, nz(xGSO[1],0)))
    pos := iff(xGSO > 0, 1,
    	     iff(xGSO < 0, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Gann Swing Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthGSO = input(5, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posGannSO = GannSO(LengthGSO)
pos = iff(posReversal123 == 1 and posGannSO == 1 , 1,
	   iff(posReversal123 == -1 and posGannSO == -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