Chiến lược kết hợp đường trung bình động xu hướng chuyển động đệ quy kết hợp với đảo ngược mô hình 123


Ngày tạo: 2024-02-21 16:02:32 sửa đổi lần cuối: 2024-02-21 16:02:32
sao chép: 3 Số nhấp chuột: 686
1
tập trung vào
1617
Người theo dõi

Chiến lược kết hợp đường trung bình động xu hướng chuyển động đệ quy kết hợp với đảo ngược mô hình 123

Tổng quan

Chiến lược này là sự kết hợp của hai chiến lược: đường trung bình xu hướng chuyển tiếp và 123 hình dạng đảo ngược, tạo thành một tín hiệu tổng hợp để tăng sự ổn định và lợi nhuận của chiến lược.

Nguyên tắc

123 biến đổi hình dạng

Phần này dựa trên Ulf Jensen trong cuốn sách Làm thế nào tôi có thể kiếm được gấp ba lần lợi nhuận trên thị trường tương lai. Dấu hiệu mua của nó là: Giá đóng cửa tăng gần hai ngày và giá trị STO SLOWK trong chu kỳ 9 ngày làm nhiều hơn khi nó dưới 50; Dấu hiệu bán là: Giá đóng cửa giảm gần hai ngày và giá trị STO FASTK trong chu kỳ 9 ngày làm rỗng khi nó trên 50.

Đường trung bình xu hướng chuyển động hồi quy

Phần này sử dụng một kỹ thuật gọi là Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp Phương pháp

Ưu điểm

Chiến lược kết hợp này có thể sử dụng lợi thế của cả hai chiến lược để tránh những hạn chế của một chiến lược duy nhất. 123 hình thức đảo ngược có thể bắt được các tình huống lớn hơn khi giá đảo ngược. Trong khi đó, đường trung bình xu hướng chuyển động có thể đánh giá chính xác hơn về hướng đi của giá.

Rủi ro và giải pháp

  • Có thể có dấu hiệu nhầm lẫn do biến động ngắn hạn của giá. Các tham số có thể được điều chỉnh thích hợp để lọc tiếng ồn.
  • Đường trung bình xu hướng chuyển động thụt lùi có thể phản ứng chậm với sự kiện bất ngờ. Có thể xem xét kết hợp với các chỉ số khác để xác định xu hướng địa phương.
  • Hai tín hiệu chiến lược có thể không phù hợp. Trong trường hợp này, bạn có thể xem xét chỉ mở vị trí khi có hai tín hiệu, hoặc tùy thuộc vào tình trạng thị trường, chọn chỉ theo một tín hiệu.

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

  • Có thể thử nghiệm các kết hợp các tham số khác nhau của chu kỳ để tìm các cặp tham số tốt nhất
  • Có thể giới thiệu hệ thống tự động dừng lỗ
  • Các tham số có thể được điều chỉnh cho các giống khác nhau, môi trường thị trường
  • Có thể xem xét kết hợp với các chiến lược hoặc chỉ số khác để tạo ra một hệ thống tổng hợp mạnh mẽ hơn

Tóm tắt

Chiến lược này kết hợp hai loại chiến lược khác nhau để tăng sự ổn định bằng cách tạo ra tín hiệu tổng hợp. Đồng thời kết hợp lợi thế của cả hai để có thể bắt được ở điểm biến đổi giá và xác định xu hướng giá trong tương lai. Nếu tiếp tục tối ưu hóa, có thể sẽ có hiệu suất tốt hơn.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 01/06/2021
// 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
// Taken from an article "The Yen Recused" in the December 1998 issue of TASC, 
// written by Dennis Meyers. He describes the Recursive MA in mathematical terms 
// as "recursive polynomial fit, a technique that uses a small number of past values 
// of the estimated price and today's price to predict tomorrows price."
// Red bars color - short position. Green is long.
//
// 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


RMTA(Length) =>
    pos = 0.0
    Bot = 0.0
    nRes = 0.0
    Alpha = 2 / (Length+1)
    Bot := (1-Alpha) * nz(Bot[1],close) + close
    nRes := (1-Alpha) * nz(nRes[1],close) + (Alpha*(close + Bot - nz(Bot[1], 0)))
    pos:= iff(nRes > close[1], -1,
    	     iff(nRes < close[1], 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Recursive Moving Trend Average", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Recursive Moving Trend Average ----")
LengthRMTA = input(21, minval=3)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posRMTA = RMTA(LengthRMTA)
pos = iff(posReversal123 == 1 and posRMTA == 1 , 1,
	   iff(posReversal123 == -1 and posRMTA == -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 )