Chiến lược đảo ngược đáy ngẫu nhiên kép


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

Chiến lược đảo ngược đáy ngẫu nhiên kép

Tổng quan

Chiến lược này kết hợp 123 Bottom Reversal và Stochastic Indicator để tạo ra tín hiệu mua khi giá cổ phiếu reversed cùng lúc với Stochastic Indicator khi giá cổ phiếu reversed. Chiến lược này có thể xác định hiệu quả đáy của giá cổ phiếu reversed, bộ lọc chỉ số kép có thể làm giảm tần suất giao dịch và tăng độ chính xác của tín hiệu.

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

  1. 123 Chiến lược đảo ngược đáy

    • Nếu giá đóng cửa cao hơn giá đóng cửa hai ngày trước và đường nhanh của chỉ số Stochastic ngày 9 thấp hơn đường chậm và đường nhanh thấp hơn 50, sẽ tạo ra tín hiệu mua

    • Nếu giá đóng cửa thấp hơn giá đóng cửa hai ngày trước và đường nhanh của chỉ số Stochastic ngày 9 cao hơn đường chậm và đường nhanh cao hơn 50, sẽ tạo ra tín hiệu bán

  2. Chiến lược chỉ số Stochastic

    • Nếu Stochastic trên đường dây nhanh đi vào đường ray (đặc biệt là 20), tạo ra một tín hiệu mua

    • Nếu Stochastic đường dây nhanh đi xuống đường ray ([80 mặc định), tạo ra một sell signal

  3. Bộ lọc tín hiệu kép

Chỉ khi chiến lược 123 đảo ngược và chiến lược Stochastic cùng tạo ra tín hiệu mua, thì sẽ tạo ra tín hiệu mua cuối cùng, đồng nghĩa với tín hiệu bán. Điều này có thể lọc một số tín hiệu sai và cải thiện chất lượng tín hiệu.

Lợi thế chiến lược

  1. Xác định hai chỉ số có thể lọc ra nhiều tiếng ồn và tăng độ chính xác của tín hiệu.

  2. 123 Chiến lược đảo ngược có thể bắt được đáy và đỉnh của sự đảo ngược giá. Chứng nhận chỉ số Stochastic giúp tránh phá vỡ giả.

  3. Chỉ số Stochastic có thể xác định hiệu quả các khu vực quá mua và quá bán, kết hợp hoàn hảo với chiến lược đảo ngược 123.

  4. Các tham số được tối ưu hóa rộng rãi, có thể đạt được hiệu quả chiến lược tốt hơn bằng cách điều chỉnh các tham số.

  5. Chiến lược logic đơn giản, rõ ràng, dễ hiểu và thích hợp cho người mới bắt đầu học giao dịch định lượng.

Rủi ro chiến lược

  1. Các tín hiệu lọc kép có thể đã bỏ lỡ một số cơ hội, làm giảm tần suất giao dịch.

  2. Chỉ số Stochastic dễ tạo ra tín hiệu sai, cần thận trọng khi đánh giá xu hướng thực tế của chỉ số.

  3. Các tham số cần được tối ưu hóa, nếu các tham số được đặt không đúng cách sẽ ảnh hưởng đến hiệu quả của chính sách.

  4. Chỉ áp dụng cho thị trường có đặc điểm biến động rõ ràng, không áp dụng cho thị trường tăng hoặc giảm liên tục.

  5. Cần tuân thủ nghiêm ngặt các tín hiệu chiến lược để tránh sự sai lệch do sự phán đoán của chính mình.

Giải quyết rủi ro: Tối ưu hóa các thiết lập tham số, tuân thủ chặt chẽ các tín hiệu chiến lược, điều chỉnh phù hợp với môi trường thị trường mà chiến lược áp dụng.

Hướng tối ưu hóa chiến lược

  1. Tối ưu hóa các tham số của chỉ số Stochastic, tăng sự ổn định của chỉ số.

  2. Tăng chiến lược dừng lỗ, dừng lỗ khi đạt đến một tỷ lệ nhất định.

  3. Thêm các điều kiện lọc, chẳng hạn như xác nhận số lượng giao dịch, có thể làm tăng thêm chất lượng tín hiệu.

  4. Kiểm tra hiệu quả của các chiến lược đảo ngược khác nhau kết hợp với chỉ số Stochastic.

  5. Thêm thuật toán học máy, sử dụng dữ liệu lịch sử để đào tạo và tối ưu hóa các tham số.

  6. Sử dụng chiến lược trên các thị trường khác nhau để kiểm tra tính ổn định trên khắp thị trường.

  7. Khám phá sự kết hợp của các chỉ số kỹ thuật khác với chỉ số Stochastic để tìm kiếm các giải pháp kết hợp tốt hơn.

Tóm tắt

Chiến lược này được kết hợp với các chỉ số Stochastic kép và 123 Reversal Mode để nắm bắt hiệu quả các cơ hội đảo ngược đáy. So với chỉ số đơn lẻ, kết hợp nhiều chỉ số có thể cải thiện đáng kể chất lượng và tỷ lệ chiến thắng của tín hiệu. Mặc dù vẫn còn một số không gian để cải thiện, nhưng nói chung, logic của chiến lược này đơn giản, dễ nắm bắt và rất phù hợp cho người mới bắt đầu thực hành. Bằng cách thử nghiệm và tối ưu hóa lặp đi lặp lại, các tham số chiến lược có thể được ổn định hơn, dẫn đến thu nhập tích cực lâu dài hơn.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 07/07/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 up UpBand line.
// It generates a short trade at the Open of the following bar when the %K line 
// crosses down DownBand line.
//
// 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


Stochastic(Length,DLength,UpBand,DownBand) =>
    pos = 0.0
    vFast = stoch(close, high, low, Length)
    vSlow = sma(vFast, DLength)
    pos := iff(vFast > UpBand, 1,
	         iff(vFast < DownBand, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Stochastic", 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 ----")
LengthS = input(7, minval=1)
DLengthS = input(3, minval=1)
UpBand = input(20, minval=1)
DownBand = input(80, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posStochastic = Stochastic(LengthS,DLengthS,UpBand,DownBand)
pos = iff(posReversal123 == 1 and posStochastic == 1 , 1,
	   iff(posReversal123 == -1 and posStochastic == -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 )