Chiến lược giao dịch đảo ngược nhẹ của chỉ báo kép


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

Chiến lược giao dịch đảo ngược nhẹ của chỉ báo kép

Tổng quan

Chiến lược giao dịch đảo ngược hai chỉ số là một chiến lược giao dịch đường ngắn kết hợp chỉ số động lượng và chỉ số xu hướng. Chiến lược này đầu tiên sử dụng một chỉ số đảo ngược để tạo ra tín hiệu giao dịch, sau đó kết hợp với một chỉ số xu hướng để tạo ra tín hiệu giao dịch đáng tin cậy hơn. Chiến lược này được thiết kế để nắm bắt sự đảo ngược giá trong thời gian ngắn và giao dịch trong bối cảnh xu hướng đường ngắn.

Nguyên tắc

Chiến lược này bao gồm hai chiến lược con:

Chiến lược con đầu tiên là chiến lược 123 reversal. Nó theo dõi xem giá có quay trở lại đỉnh hay không. Cụ thể, nó sẽ tạo ra tín hiệu mua trong trường hợp: Giá đóng cửa hai ngày trước giảm, giá đóng cửa ngày hôm đó cao hơn giá đóng cửa ngày trước và đường chậm Stochastic thấp hơn 50.

Chiến lược con thứ hai là chỉ số ngẫu nhiên ergodic ((EMDI)). Nó là một chỉ số theo xu hướng, xác định hướng của xu hướng đường dài trung bình. Nó kết hợp ý tưởng của đường trung bình di chuyển và MACD, sử dụng chỉ số một lần để làm mịn đường trung bình di chuyển và đường nhanh của MACD để tạo ra tín hiệu mua và bán.

Chiến lược này kết hợp tín hiệu của hai chiến lược con. Chiến lược này sẽ chỉ mở lệnh khi hai chiến lược con tạo ra tín hiệu đồng nhất.

Ưu điểm

  • Kết hợp nhiều chỉ số, có thể lọc hiệu quả các tín hiệu giả, tăng độ tin cậy của tín hiệu.
  • Sự kết hợp của chiến lược đảo ngược và chiến lược xu hướng giúp nắm bắt cơ hội ngắn hạn và tránh giao dịch ngược.
  • Thiết lập tham số với chỉ số Stochastic là khá vững chắc, có thể làm giảm whipsaws.
  • Cài đặt tham số mịn của chỉ số Ergodic hợp lý, có thể nhận ra xu hướng tốt hơn.
  • Chiến lược này có tần suất giao dịch vừa phải, có thể tạo ra nhiều cơ hội giao dịch hơn nhưng không quá thường xuyên.
  • Nó được sử dụng cho các giao dịch đường ngắn Trung Quốc và Trung Quốc.

Rủi ro

  • Các tín hiệu đảo ngược có thể có thông báo sai và cần được kiểm tra bằng các chỉ số xu hướng.
  • Có thể bạn sẽ bỏ lỡ một số cơ hội giao dịch ngắn.
  • Sau khi quay trở lại, nó có thể quay trở lại một lần nữa và cần phải dừng thiệt hại kịp thời.
  • Thiết lập tham số không đúng có thể ảnh hưởng lớn đến kết quả giao dịch.
  • Có nguy cơ các mô hình quá phù hợp với các chỉ số kỹ thuật

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

  • Có thể thử nghiệm các thiết lập tham số khác nhau, tối ưu hóa hiệu suất của các chiến lược con.
  • Có thể giới thiệu thêm các chỉ số để xây dựng mô hình đa yếu tố.
  • Có thể kết hợp các phương pháp học máy để tối ưu hóa tham số động.
  • Có thể nghiên cứu nhiều cách khác nhau để kiểm soát rủi ro.
  • Bạn có thể nghiên cứu chi phí cơ hội và điều chỉnh chiến lược của bạn về tần suất giao dịch.
  • Có thể thử nghiệm sức mạnh của chiến lược trong các môi trường thị trường khác nhau.

Tóm tắt

Chiến lược giao dịch đảo ngược hai chỉ số cố gắng nắm bắt các cơ hội đảo ngược giá ngắn hạn trên đường ngắn trung bình bằng cách kết hợp các chỉ số đảo ngược và xu hướng. Nó có thể lọc hiệu quả các tín hiệu báo cáo sai lầm và kiểm soát rủi ro giao dịch ở một mức độ nào đó. Tuy nhiên, chiến lược này cũng có một số vấn đề, chẳng hạn như có thể bỏ lỡ các cơ hội ngắn hạn, tham số nhạy cảm và rủi ro quá phù hợp.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 28/07/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 is one of the techniques described by William Blau in his book "Momentum,
// Direction and Divergence" (1995). If you like to learn more, we advise you to
// read this book. His book focuses on three key aspects of trading: momentum, 
// direction and divergence. Blau, who was an electrical engineer before becoming 
// a trader, thoroughly examines the relationship between price and momentum in 
// step-by-step examples. From this grounding, he then looks at the deficiencies 
// in other oscillators and introduces some innovative techniques, including a 
// fresh twist on Stochastics. On directional issues, he analyzes the intricacies 
// of ADX and offers a unique approach to help define trending and non-trending periods. 
//
// 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


EMDI(r,s,u,SmthLen) =>
    pos = 0
    xEMA = ema(close, r)
    xEMA_S = close - xEMA
    xEMA_U = ema(ema(xEMA_S, s), u)
    xSignal = ema(xEMA_U, u)
    pos := iff(xEMA_U > xSignal, 1,
    	     iff(xEMA_U < xSignal, -1, nz(pos[1], 0)))
    pos

strategy(title="Combo Backtest 123 Reversal & Ergodic MDI", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
r = input(32, minval=1)
s = input(5, minval=1)
u = input(5, minval=1)
SmthLen = input(3, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posEMDI = EMDI(r,s,u,SmthLen)
pos = iff(posReversal123 == 1 and posEMDI == 1 , 1,
	   iff(posReversal123 == -1 and posEMDI == -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 )