Chiến lược tăng giá và giảm giá song phương

Tác giả:ChaoZhang, Ngày: 2023-10-30 10:31:17
Tags:

img

Tổng quan

Chiến lược tăng giá và giảm giá cân bằng kép là một chiến lược kết hợp kết hợp chiến lược 123 Reversal và chỉ số Balance Bulls and Bears.

Nguyên tắc

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

  1. 123 Chiến lược đảo ngược. Nó tạo ra tín hiệu khi hai giá đóng cuối cùng cho thấy đảo ngược, tức là đi dài khi hai giá đóng trước đó đang giảm trong khi giá đóng thứ ba tăng, và đi ngắn khi hai giá đóng trước đó đang tăng trong khi giá đóng thứ ba giảm. Nó cũng kết hợp chỉ số STOCH để chỉ nhận tín hiệu khi STOCH cho thấy các điều kiện bán quá mức hoặc mua quá mức.

  2. Bulls and Bears Chiến lược chỉ số cân bằng. Nó đánh giá xu hướng thị trường bằng cách tính toán sự cân bằng giữa các lực tăng và giảm. Cụ thể, nó sử dụng sự khác biệt giữa giá đóng và giá mở hiện tại, cũng như sự khác biệt giữa ngày hiện tại và ngày trước để xác định các lực tăng và giảm. Sự khác biệt giữa các lực tăng và giảm càng lớn, xu hướng càng rõ ràng.

Chiến lược kết hợp nguồn tín hiệu giao dịch của nó từ các tín hiệu được tạo ra bởi hai chiến lược phụ. Nó sẽ chỉ mất một tín hiệu, ví dụ như đi dài, khi hai chiến lược phụ cung cấp các tín hiệu phù hợp, tức là cả hai tín hiệu để đi dài. Nếu các tín hiệu từ hai chiến lược phụ khác nhau, chiến lược kết hợp sẽ bỏ qua tín hiệu đó và vẫn còn bên lề.

Ưu điểm

Ưu điểm lớn nhất của chiến lược tăng và giảm cân đôi là độ tin cậy cao của nó. Bằng cách yêu cầu tín hiệu nhất quán từ cả hai chiến lược phụ trước khi tham gia giao dịch, nó phục vụ như một cơ chế xác minh để tránh tín hiệu sai. Ngoài ra, với hai chiến lược phụ khai thác cơ hội từ các bên đảo ngược và xu hướng tương ứng, chiến lược cung cấp đa dạng hóa để giảm thiểu rủi ro từ một chiến lược duy nhất.

Chiến lược 123 Reversal có thể nắm bắt các cơ hội đảo ngược ngắn hạn trên thị trường. Chiến lược Bulls và Bears Balance có thể xác định hướng của xu hướng dài hạn. Sử dụng cả hai cho phép nắm bắt sự đảo ngược trong khi bám vào xu hướng chính, lọc ra các tín hiệu đảo ngược yếu hơn và tăng tỷ lệ thắng.

Rủi ro

Rủi ro lớn nhất là xác suất tín hiệu sai từ các chiến lược phụ tăng gấp đôi. Mặc dù chiến lược kết hợp đòi hỏi tín hiệu nhất quán, nếu cả hai chiến lược phụ đưa ra tín hiệu sai cùng một lúc, chiến lược kết hợp vẫn sẽ tham gia giao dịch, gây ra tổn thất gấp đôi.

Ngoài ra, xung đột có thể phát sinh giữa các chiến lược con, với một tín hiệu đi dài trong khi chiến lược khác ngắn. Chiến lược kết hợp sau đó sẽ bỏ lỡ cơ hội.

Tối ưu hóa

Xem xét việc kết hợp một chiến lược đảo ngược xu hướng như một chiến lược phụ thứ ba. Nó có thể giúp xác định xu hướng dài hạn và cung cấp tín hiệu khi xu hướng đảo ngược. Thêm một chiến lược để đánh giá xu hướng thị trường có thể lọc thêm các tín hiệu sai và tăng sự ổn định.

Một hướng khác là điều chỉnh các thông số của các chiến lược phụ cho các tín hiệu phù hợp hơn. ví dụ, điều chỉnh các thông số ngưỡng của chiến lược Balance Bulls và Bears để nắm bắt xu hướng yếu hơn và bổ sung cho chiến lược đảo ngược.

Việc xử lý xung đột kéo dài giữa các chiến lược phụ cũng có thể được nghiên cứu. Ví dụ, thiết lập mức độ dung nạp tối đa cho xung đột, sau đó tín hiệu từ một chiến lược phụ cá nhân sẽ được lấy. Điều này có thể giảm thiểu sự mất mát cơ hội ở một mức độ nào đó.

Kết luận

Chiến lược tăng giá và giảm giá cân bằng kép kết hợp chiến lược đảo ngược 123 và chiến lược tăng giá và giảm giá để đạt được xác minh hai tín hiệu giao dịch và lọc hiệu quả các tín hiệu sai và tăng sự ổn định. Trong khi đó, kết hợp các chiến lược đảo ngược và xu hướng cung cấp đa dạng hóa để giảm rủi ro. Chiến lược có thể được tối ưu hóa hơn nữa bằng cách điều chỉnh các tham số, thêm một chiến lược thứ ba vv để cải thiện sự sắp xếp và hiệu quả vốn. Nhìn chung, chiến lược có những ý tưởng mới và giá trị thực tế đáng kể.


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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 03/07/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
//    This new indicator analyzes the balance between bullish and
//    bearish sentiment.
//    One can cay that it is an improved analogue of Elder Ray indicator.
//    To get more information please see "Bull And Bear Balance Indicator" 
//    by Vadim Gimelfarb. 
//
// 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

BullAndBearBalance(SellLevel, BuyLevel) =>
    pos = 0
    value =  iff (close < open , 
              iff (close[1] > open ,  max(close - open, high - low), high - low), 
               iff (close > open, 
                 iff(close[1] > open, max(close[1] - low, high - close), max(open - low, high - close)), 
                  iff(high - close > close - low, 
                   iff (close[1] > open, max(close[1] - open, high - low), high - low), 
                     iff (high - close < close - low, 
                      iff(close > open, max(close - low, high - close),open - low), 
                       iff (close > open, max(close[1] - open, high - close),
                         iff(close[1] < open, max(open - low, high - close), high - low))))))

    value2 = iff (close < open , 
              iff (close[1] < open ,  max(high - close[1], close - low), max(high - open, close - low)), 
               iff (close > open, 
                 iff(close[1] > open,  high - low, max(open - close[1], high - low)), 
                  iff(high - close > close - low, 
                   iff (close[1] < open, max(high - close[1], close - low), high - open), 
                     iff (high - close < close - low, 
                      iff(close[1] > open,  high - low, max(open - close, high - low)), 
                       iff (close[1] > open, max(high - open, close - low),
                         iff(close[1] < open, max(open - close, high - low), high - low))))))
    nBBB = value2 - value
    pos := iff(nBBB < SellLevel, -1,
    	   iff(nBBB >= BuyLevel, 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Bull And Bear Balance", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SellLevel = input(-15, step=0.01)
BuyLevel = input(15, step=0.01)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBullAndBearBalance = BullAndBearBalance(SellLevel, BuyLevel)
pos = iff(posReversal123 == 1 and posBullAndBearBalance == 1 , 1,
	   iff(posReversal123 == -1 and posBullAndBearBalance == -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