Đổi ngược giá với chiến lược thu thập chéo

Tác giả:ChaoZhang, Ngày: 2024-01-17 16:29:13
Tags:

img

Tổng quan

Chiến lược đảo ngược giá với chiến lược thu thập chéo là một chiến lược hợp chất kết hợp các kỹ thuật giao dịch đảo ngược giá và giao dịch chéo chỉ số.

Chiến lược logic

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

  1. 123 Chiến lược đảo ngược
  • Khi giá đóng cửa chuyển từ cao hơn xuống thấp hơn trong hai ngày, và chỉ số stochastic 9 ngày ở dải thấp hơn (dưới ngưỡng), một tín hiệu mua được tạo ra
  • Khi giá đóng cửa biến từ thấp lên cao trong hai ngày, và chỉ số stochastic 9 ngày ở dải trên (trên ngưỡng), một tín hiệu bán được tạo ra
  1. Chiến lược chéo stochastic
  • Khi đường %K vượt qua dưới đường %D, trong khi cả hai đường đều ở mức mua quá mức, một tín hiệu bán được tạo ra
  • Khi đường %K vượt qua trên đường %D, trong khi cả hai đường đều ở mức bán quá mức, một tín hiệu mua được tạo ra

Chiến lược hợp chất kiểm tra các tín hiệu từ cả hai chiến lược phụ và chỉ kích hoạt giao dịch thực tế khi các tín hiệu liên kết theo cùng một hướng.

Ưu điểm

Chiến lược kết hợp các mô hình đảo ngược giá và giao thoa chỉ số để đánh giá cả hành động giá và thông tin chỉ số, giúp lọc các tín hiệu sai và khám phá các cơ hội đảo ngược để cải thiện lợi nhuận.

Những lợi ích cụ thể bao gồm:

  1. Khám phá sự đảo ngược thị trường nhanh chóng mà không cần chờ đợi quá lâu để củng cố
  2. Tăng độ chính xác tín hiệu với xác nhận kép từ cả hai chiến lược con
  3. Tỷ lệ thắng tốt hơn kết hợp phân tích cả hành động giá và các chỉ số

Rủi ro

Ngoài ra còn có một số rủi ro với chiến lược này:

  1. Giá có thể đảo ngược đột ngột trong thời gian biến động cao, gây ra tín hiệu không chính xác
  2. Chế độ điều chỉnh tham số chỉ số kém ảnh hưởng đến chất lượng tín hiệu
  3. Không chắc chắn về thời gian đảo ngược, một số rủi ro thời gian tồn tại

Những rủi ro này có thể được quản lý bằng cách điều chỉnh các tham số, sử dụng dừng lỗ v.v.

Cơ hội gia tăng

Một số cách để tăng cường chiến lược:

  1. Tối ưu hóa các thông số chỉ số
  2. Thêm các bộ lọc khác như âm lượng
  3. Tùy chỉnh các tham số dựa trên biểu tượng và điều kiện thị trường
  4. Bao gồm stop loss để kiểm soát rủi ro
  5. Sử dụng máy học để nhận dạng tín hiệu

Kết luận

Việc đảo ngược giá với chiến lược nắm bắt chéo kết hợp nhiều chiến lược bổ sung để kiếm lợi nhuận trong khi kiểm soát rủi ro. Với những cải tiến liên tục, nó có thể được điều chỉnh thành một chiến lược hiệu quả phát triển mạnh trong thị trường thay đổi.


/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/09/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
// This back testing strategy generates a long trade at the Open of the following 
// bar when the %K line crosses below the %D line and both are above the Overbought level.
// It generates a short trade at the Open of the following bar when the %K line 
// crosses above the %D line and both values are below the Oversold level.
//
// 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


StochCross(Length, DLength,Oversold,Overbought) =>
    pos = 0.0
    vFast = stoch(close, high, low, Length)
    vSlow = sma(vFast, DLength)
    pos := iff(vFast < vSlow and vFast > Overbought and vSlow > Overbought, 1,
    	      iff(vFast >= vSlow and vFast < Oversold and vSlow < Oversold, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Stochastic Crossover", 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, "---- Stochastic Crossover ----")
LengthSC = input(7, minval=1)
DLengthSC = input(3, minval=1)
Oversold = input(20, minval=1)
Overbought = input(70, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posmStochCross = StochCross(LengthSC, DLengthSC,Oversold,Overbought)
pos = iff(posReversal123 == 1 and posmStochCross == 1 , 1,
	   iff(posReversal123 == -1 and posmStochCross == -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