Chiến lược kết hợp giao dịch đảo ngược đa yếu tố


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

Tổng quan

Chiến lược này sử dụng nhiều chỉ số đảo ngược kết hợp với nhau để thực hiện vị trí đảo ngược khi có tín hiệu đảo ngược giá, thuộc chiến lược giao dịch thuật toán đảo ngược.

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

  1. Đầu tiên, sử dụng 123 hệ thống đảo ngược để xác định tín hiệu đảo ngược giá. Hệ thống này kết hợp mối quan hệ giữa giá và hai Bar liên tiếp và Stochastic để xác định đảo ngược giá.

  2. Tiếp theo, sử dụng chỉ số FSK để đánh giá sự đảo ngược của tâm trạng thị trường. Chỉ số này đánh giá sự thay đổi của sức mạnh mua bán thị trường bằng cách tăng tốc động lực.

  3. Kết hợp hệ thống đảo ngược 123 và chỉ số đảo ngược FSK, thực hiện vị trí đảo ngược khi cả hai phát ra tín hiệu đảo ngược cùng một lúc.

  4. Có thể chọn giao dịch ngược, khi tín hiệu ban đầu là nhiều đầu, hãy lấy đầu trống, khi tín hiệu ban đầu là đầu trống, hãy lấy nhiều đầu.

Phân tích lợi thế

  1. Sự kết hợp của nhiều yếu tố có thể cải thiện độ chính xác của tín hiệu, tránh tín hiệu sai của chỉ số đơn lẻ.

  2. Hệ thống đảo ngược 123 và chỉ số FSK có tính bổ sung cho nhau, có thể nắm bắt cơ hội đảo ngược trong các chiều thời gian khác nhau.

  3. Giao dịch đảo ngược có thể mang lại lợi nhuận trong một sự đảo ngược mạnh mẽ.

  4. Sử dụng nhiều yếu tố đảo ngược có thể tăng cường sự ổn định của chiến lược.

  5. Dễ hiểu và thực hiện, phù hợp với người mới bắt đầu giao dịch số lượng.

Phân tích rủi ro

  1. Các tín hiệu đảo ngược có thể gây ra sự hiểu lầm, dẫn đến tổn thất.

  2. Định vị thời gian quay ngược không chính xác có thể gây ra sự cố.

  3. Các giao dịch ngược có thể gây thiệt hại nếu xu hướng này tiếp tục.

  4. Các tham số được tối ưu hóa không đúng có thể dẫn đến quá phù hợp.

  5. Tần suất giao dịch cao có thể gây ra chi phí giao dịch cao hơn.

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

  1. Thử nghiệm thêm các yếu tố đảo ngược khác, như RSI, KD, v.v., để làm giàu sự kết hợp.

  2. Tối ưu hóa các tham số, nâng cao độ nhạy của chỉ số.

  3. Thêm bộ lọc xu hướng để tránh giao dịch ngược.

  4. Sử dụng chiến lược quản lý vị thế động, tối ưu hóa hiệu quả sử dụng vốn.

  5. Tối ưu hóa chiến lược dừng lỗ, giảm tổn thất đơn lẻ.

  6. Đánh giá tác động của chi phí giao dịch, giảm giao dịch tần suất quá cao.

Tóm tắt

Chiến lược này sử dụng kết hợp 123 hệ thống đảo ngược và chỉ số FSK để thực hiện giao dịch đảo ngược khi giá đảo ngược. Có thể lọc các tín hiệu sai và tăng độ chính xác. Tuy nhiên, chiến lược đảo ngược có nguy cơ không chắc chắn về sự đảo ngược. Cần tối ưu hóa các tham số liên tục và kiểm soát đúng quy mô vị trí và tần suất giao dịch, giảm rủi ro và tăng sự ổn định.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/10/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 indicator plots the Fast & Slow Kurtosis. The Kurtosis is a market
// sentiment indicator. The Kurtosis is constructed from three different parts.
// The Kurtosis, the Fast Kurtosis(FK), and the Fast/Slow Kurtosis(FSK).
//
// 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

FSK(Triger) =>
    pos = 0.0
    xMOM_R = mom(mom(close, 3), 1)
    xMOM_RAvr = ema(xMOM_R, 65)
    xMOM_RWAvr = wma(xMOM_RAvr, 3)
    pos := iff(xMOM_RAvr > Triger and xMOM_RWAvr > Triger, 1,-1) 
    pos

strategy(title="Combo Backtest 123 Reversal & FSK (Fast and Slow Kurtosis)", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Triger = input(0, minval=0.001)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFSK = FSK(Triger)
pos = iff(posReversal123 == 1 and posFSK == 1 , 1,
	   iff(posReversal123 == -1 and posFSK == -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 )