Chiến lược định lượng đột phá cao và thấp


Ngày tạo: 2023-11-10 11:09:28 sửa đổi lần cuối: 2023-11-10 11:09:28
sao chép: 0 Số nhấp chuột: 589
1
tập trung vào
1617
Người theo dõi

Chiến lược định lượng đột phá cao và thấp

Tổng quan

Chiến lược hợp nhất là một chiến lược giao dịch định lượng kết hợp chiến lược đảo ngược hình dạng 123 với chiến lược phá vỡ mức cao thấp. Chiến lược này đạt được mục tiêu thu được lợi nhuận vượt trội trên đường dài trung bình bằng cách đánh giá tổng hợp các tín hiệu chỉ số trên các chu kỳ thời gian khác nhau.

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

Chiến lược hợp nhất bao gồm hai phần:

  1. 123 Chiến lược đảo ngược
    Chiến lược này xuất phát từ ý tưởng của Ulf Jensen trong cuốn sách P183 của ông về cách kiếm được gấp ba lần lợi nhuận trên thị trường tương lai. Nó tạo ra tín hiệu mua và bán bằng cách đánh giá mối quan hệ giữa giá đóng cửa 2 ngày liên tiếp với giá đóng cửa ngày trước, kết hợp với chỉ số Stochastic để đánh giá tình trạng mua quá mức của thị trường. Cụ thể, khi giá đóng cửa 2 ngày liên tiếp tăng so với giá đóng cửa ngày trước và chỉ số Stochastic Slow thấp hơn 50, nó tạo ra tín hiệu mua; khi giá đóng cửa 2 ngày liên tiếp giảm so với giá đóng cửa ngày trước và chỉ số Stochastic Fast cao hơn 50, nó tạo ra tín hiệu bán.

  2. Chiến lược đột phá cao thấp
    Chiến lược này xác định tín hiệu giao dịch bằng cách đánh giá liệu giá có phá vỡ mức cao hoặc thấp của các chu kỳ khác nhau không. Nó tính toán giá cao nhất và giá thấp nhất trong chu kỳ hiện tại và chu kỳ trước, tạo ra tín hiệu mua khi giá phá vỡ giá cao nhất và tạo ra tín hiệu bán khi giá phá vỡ giá thấp nhất. Ưu điểm của chiến lược này là có thể nhận ra các đặc điểm hình dạng đường chu kỳ khác nhau và đi vào thị trường sớm hơn khi xu hướng hình thành.

Chiến lược tổng hợp sẽ kết hợp hai chiến lược trên, tạo ra tín hiệu giao dịch thực tế khi hai chiến lược có hướng tín hiệu phù hợp. Điều này có thể lọc ra một số tín hiệu không hiệu quả do sai sót của một chiến lược duy nhất, tăng độ tin cậy của tín hiệu.

Lợi thế chiến lược

  1. Phân tích nhiều chu kỳ thời gian, tăng độ chính xác tín hiệu
    Chiến lược này kết hợp các đặc điểm hình dạng của đường mặt trời và chu kỳ thời gian cao hơn, giúp tăng độ chính xác trong việc đánh giá tín hiệu giao dịch và tránh bị đánh lừa bởi biến động ngắn hạn của thị trường.

  2. Sử dụng Stochastic để đánh giá giá trị mua và bán
    Việc sử dụng chỉ số StochasticSlow tránh mua vội vàng trong khu vực mua quá mức và StochasticFast tránh bán vội vàng trong khu vực bán quá mức, giảm tổn thất không cần thiết.

  3. Ghi lại các dấu hiệu của xu hướng và giảm khả năng bỏ lỡ cơ hội
    Chiến lược phá vỡ cao thấp có thể xác định các khu vực quan trọng mà giá sẽ phá vỡ trong chu kỳ dài hơn, để đi vào xu hướng sớm hơn và giảm khả năng bỏ lỡ cơ hội.

  4. Một sự kết hợp nhiều chiến lược, linh hoạt và tối ưu hóa
    Chính sách bao gồm nhiều chính sách con, có nhiều không gian tối ưu hóa, có thể được tối ưu hóa bằng cách điều chỉnh các tham số chính sách con hoặc giới thiệu các chính sách con mới, làm cho chính sách ổn định và đáng tin cậy hơn.

  5. Logic chiến lược rõ ràng và dễ hiểu
    Cấu trúc chính sách đơn giản, rõ ràng, dễ hiểu và sửa đổi, cũng dễ bảo trì sau này.

Rủi ro chiến lược

  1. Tỷ lệ trễ tín hiệu tăng tổng hợp
    Mặc dù kết hợp nhiều chu kỳ thời gian có thể cải thiện độ chính xác của tín hiệu, nhưng cũng có thể làm tăng độ trễ của tín hiệu, có thể bỏ lỡ cơ hội giao dịch ngắn.

  2. Hình thức 123 không nhận ra xu hướng dài hơn
    123 Chiến lược đảo ngược không thể xác định được các điểm đảo ngược quan trọng trong một khoảng thời gian dài hơn, chỉ dựa trên các hoạt động trong những ngày gần đây.

  3. Cài đặt tham số chu kỳ không đúng có thể dẫn đến tín hiệu giả
    Các chỉ số Stochastic và High Low Breakthrough có thể dẫn đến quá nhiều tín hiệu giao dịch giả.

  4. Khả năng thích ứng với các tình huống đặc biệt chỉ dựa trên chỉ số kỹ thuật
    Chiến lược này chỉ dựa trên các chỉ số kỹ thuật mà không tính đến thông tin cơ bản và không thích ứng tốt khi xảy ra sự cố thiên nga đen lớn.

Giải pháp đối phó với rủi ro:

  1. Giảm thời gian tính toán, giảm độ trễ tín hiệu.

  2. Cố gắng giới thiệu các chỉ số hoặc hình dạng có chu kỳ dài hơn như là bộ lọc.

  3. Tối ưu hóa thiết lập tham số, kiểm tra độ ổn định của tham số trong phản hồi.

  4. Cân nhắc các yếu tố cơ bản để lọc tín hiệu.

Hướng tối ưu hóa chiến lược

  1. Kiểm tra và tối ưu hóa các tham số của từng chiến lược con để làm cho nó mạnh mẽ hơn.

  2. Thêm logic ra quyết định hỗ trợ khác, chẳng hạn như cơ bản, các chỉ số về dòng tiền và các chỉ số khác.

  3. Tham gia chiến lược dừng lỗ để kiểm soát tổn thất tối đa cho mỗi giao dịch.

  4. Để làm rõ các tham số cho một giống cụ thể, cải thiện sự phù hợp của chiến lược đối với giống đó.

  5. Thêm mô hình học máy hỗ trợ quyết định.

Tóm tắt

Tóm lại, chiến lược tổng hợp kết hợp các lợi thế của các chỉ số kỹ thuật trên nhiều quy mô thời gian, nhằm cải thiện độ chính xác và thời gian của tín hiệu. So với chiến lược chỉ số kỹ thuật đơn lẻ, nó có khả năng đánh giá xu hướng sắc nét hơn và tạo tín hiệu ổn định hơn. Tuy nhiên, chiến lược này cũng có một số vấn đề về sự chậm trễ và khả năng thích ứng yếu với các tình huống đặc biệt.

Mã nguồn chiến lược
/*backtest
start: 2023-10-10 00:00:00
end: 2023-11-09 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/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
// This script shows a high and low period value.
//    Width - width of lines
//    SelectPeriod - Day or Week or Month and etc.
//    LookBack - Shift levels 0 - current period, 1 - previous and etc. 
//
// 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

    
HLL(LookBack, SelectPeriod) =>
    pos = 0.0
    xHigh  = security(syminfo.tickerid, SelectPeriod, high[LookBack])
    xLow   = security(syminfo.tickerid, SelectPeriod, low[LookBack])
    vS1 = xHigh
    vR1 = xLow
    pos := iff(close > vR1, 1,
             iff(close < vS1, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & High and Low Levels", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SelectPeriod = input(title="Resolution", type=input.resolution, defval="D")
LookBack = input(1,  minval=0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHLL = HLL(LookBack, SelectPeriod)
pos = iff(posReversal123 == 1 and posHLL == 1 , 1,
	   iff(posReversal123 == -1 and posHLL == -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 )