
Chiến lược giao dịch vòng hai yếu tố là một chiến lược giao dịch định lượng. Nó kết hợp hai loại chỉ số kỹ thuật khác nhau để tạo ra tín hiệu giao dịch để theo dõi xu hướng thị trường và thu được lợi nhuận.
Ưu điểm của chiến lược này là có thể tìm kiếm cơ hội giao dịch bằng cách kết hợp các yếu tố khác nhau, xác nhận kép có thể làm tăng độ tin cậy của tín hiệu và giảm khả năng giao dịch sai. Đồng thời, chiến lược này tận dụng tối đa lợi thế của giao dịch tuần hoàn, tức là dừng lỗ kịp thời và mở vị trí ngược lại, có thể kiểm soát rủi ro hiệu quả.
Chiến lược này bao gồm hai phần:
123 Chiến lược đảo ngược Chiến lược này bắt nguồn từ Ulf Jensen’s How to flip a coin in the futures market. Logic giao dịch của nó là: làm nhiều khi giá đóng cửa cao hơn giá đóng cửa ngày trước hai ngày liên tiếp và đường K chậm hơn 50 ngày; làm trống khi giá đóng cửa thấp hơn giá đóng cửa ngày trước hai ngày liên tiếp và đường K nhanh hơn 50 ngày.
Chiến lược kháng cự hỗ trợ đà tăng/tăng Chiến lược này tạo ra tín hiệu bằng cách đánh giá xem giá có phá vỡ sự hỗ trợ hoặc kháng cự quan trọng hay không.
Tín hiệu của hai chiến lược trên được tổng hợp, khi cả hai tín hiệu đồng nhất, vào vị trí, nếu không, thanh toán. Đồng thời, chế độ mở vị trí ngược được thiết lập để dừng lỗ kịp thời và đảo ngược giao dịch khi thị trường thay đổi, để thực hiện hoạt động vòng xoay của vốn.
Chiến lược giao dịch vòng tròn hai yếu tố này có những lợi thế sau:
Thiết kế đa yếu tố đảm bảo tín hiệu có độ tin cậy cao. Chiến lược đảo ngược 123 và chiến lược hỗ trợ kháng cự được xác minh lẫn nhau, có thể làm giảm tín hiệu sai.
Cơ chế giao dịch chu kỳ cho phép chiến lược phù hợp với sự thay đổi của thị trường và kiểm soát hiệu quả tổn thất đơn phương.
Chỉ số stochastics 9 ngày có thể lọc ra tiếng ồn của thị trường, giúp tín hiệu rõ ràng hơn.
Rủi ro thấp hơn so với chiến lược một yếu tố, rút lui nhỏ hơn. Nhiều yếu tố có thể tạo ra lực lượng, ức chế tác động của biến động phi lý đối với chiến lược.
Chiến lược này cũng có một số rủi ro:
Trong tình huống xung đột, không thể nắm bắt được xu hướng tốt, thường xuyên dừng lỗ sẽ mở lại vị trí, làm tăng chi phí giao dịch.
Cài đặt tham số Stochastics ảnh hưởng đến chất lượng tín hiệu. Các tham số không đúng có thể dẫn đến tín hiệu sai vị trí, chất lượng giảm. Cần tối ưu hóa các tham số để kiểm tra lặp đi lặp lại.
Thiết kế hai yếu tố, mặc dù cải thiện chất lượng tín hiệu, nhưng cũng làm tăng tác động của market noise to the strategy. Điều này đòi hỏi chúng ta phải thận trọng hơn trong việc xây dựng và xác minh chiến lược.
Chúng ta có thể tiếp tục tối ưu hóa chiến lược này bằng cách:
Kiểm tra Stochastics với các chu kỳ có độ dài khác nhau để tìm ra sự kết hợp tham số tốt nhất để loại bỏ tiếng ồn thị trường
Thêm bộ lọc xu hướng để lọc ra các biến động và chỉ mở vị trí theo xu hướng rõ ràng
Tối ưu hóa các thuật toán thiết lập đường dừng để giảm chi phí giao dịch đồng thời đảm bảo hiệu quả dừng lỗ
Kiểm tra các kết hợp khác nhau để tìm các tín hiệu giao dịch rõ ràng hơn và chiến lược ổn định hơn
Chiến lược này đạt được chất lượng tín hiệu cao hơn và lợi nhuận điều chỉnh rủi ro thông qua thiết kế hai yếu tố. Đồng thời sử dụng cơ chế giao dịch vòng lặp để kiểm soát hiệu quả các tổn thất của các hoạt động đơn phương. Chiến lược này có thể được cân bằng tốt giữa rủi ro và lợi nhuận.
/*backtest
start: 2023-11-04 00:00:00
end: 2023-12-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 13/11/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
// Cueing Off Support And Resistance Levels, by Thom Hartle
// modified by HPotter for trade signals.
// The related article is copyrighted material from Stocks & Commodities.
//
// 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
COSRL(SigVal) =>
pos = 0.0
xLow = low
xHigh = high
xHighD = security(syminfo.tickerid,"W", high[1])
xLowD = security(syminfo.tickerid,"W", low[1])
sigpre1 = iff(xHigh <= xLowD, -1,
iff(xLow >= xHighD, 1, nz(pos[1], 0)))
sigpre2 = iff( xHigh <= xHighD, -1,
iff(xLow >= xLowD, 1, nz(pos[1], 0)))
pos := SigVal ? sigpre1 : sigpre2
pos
strategy(title="Combo Backtest 123 Reversal & Cueing Off Support And Resistance Levels", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SigVal = input(true, title="To Line \ From Line")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCOSRL = COSRL(SigVal)
pos = iff(posReversal123 == 1 and posCOSRL == 1 , 1,
iff(posReversal123 == -1 and posCOSRL == -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 )