
Đây là một chiến lược sử dụng kết hợp các chỉ số Stochastics kép với các trung bình chuyển động có trọng lượng giao dịch để xác định xu hướng. Chiến lược này sử dụng hai chỉ số Stochastics có chu kỳ khác nhau, một là chu kỳ ngắn, một là chu kỳ dài, và kết hợp các trung bình chuyển động có trọng lượng giao dịch để đánh giá xu hướng hiện tại.
Chiến lược này chủ yếu đánh giá xu hướng thông qua các phần sau:
Tính chỉ số Stochastics cho một chu kỳ ngắn, với độ dài chu kỳ là input ((30)), tham số mài là 2
Tính chỉ số Stochastics cho một chu kỳ dài, với độ dài chu kỳ là input ((90), và tham số mượt là 2
Thêm các chỉ số Stochastics ngắn và dài để có được một đường cong Stochastics tổng hợp
Tính một trung bình chuyển động trọng lượng giao dịch cho đường cong tsl, với độ dài chu kỳ là input{\displaystyle \input{\mathrm {s}}} 30
So sánh giá trị hiện tại của tsl với giá trị của nó trước 1 chu kỳ, khi tsl tăng lên, được coi là xu hướng tăng và khi tsl giảm, được coi là xu hướng giảm
Sau đó kết hợp vị trí của đường cong Stochastics để xác định liệu đó là tín hiệu đa đầu hay vô đầu
Chiến lược này kết hợp phán đoán xu hướng và phán đoán mua quá mức để xác định hướng xu hướng một cách đáng tin cậy hơn. Các ưu điểm cụ thể như sau:
Chỉ số Stochastics kép có thể phản ánh cả tình trạng mua và bán quá mức trong ngắn hạn và dài hạn, tránh bỏ lỡ một số tín hiệu
Tăng trọng giao dịch có thể lọc ra một số tín hiệu đột phá giả mạo
Vị trí của đường cong Stochastics một lần nữa chứng minh tín hiệu xu hướng đáng tin cậy
Các tham số có thể điều chỉnh, có thể điều chỉnh độ dài chu kỳ phù hợp với thị trường khác nhau
Ý tưởng chiến lược rõ ràng, ngắn gọn, dễ hiểu và dễ sửa đổi
Chiến lược này cũng có một số rủi ro cần lưu ý:
Stochastics dễ phát ra các tín hiệu giả, cần kết hợp các chỉ số có chu kỳ dài để lọc
Các tham số chu kỳ cố định không phù hợp với tất cả các điều kiện thị trường, các tham số tối ưu hóa động có thể được xem xét
Chỉ số kỹ thuật, kết hợp với các yếu tố cơ bản để tăng độ chính xác
Dữ liệu giao hàng không chính xác cũng ảnh hưởng đến kết quả, cần xác minh chất lượng dữ liệu giao hàng
Không đủ thời gian để xác nhận, cần nhiều dữ liệu lịch sử hơn để xác nhận hiệu quả.
Có thể tối ưu hóa điểm vào, bây giờ là crosses under giá trị tối thiểu trực tiếp làm nhiều, có thể thiết lập vùng đệm
Nhìn chung, chiến lược sử dụng chỉ số Stochastics kép và trung bình di chuyển có trọng lượng giao dịch để đánh giá xu hướng, về mặt lý thuyết có thể xác định một cách đáng tin cậy các điểm thay đổi xu hướng. Tuy nhiên, các thiết lập tham số cần được tối ưu hóa cho thị trường cụ thể và có một số rủi ro tín hiệu giả.
/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="Trend Finder V2", shorttitle="TFV2", format=format.price, precision=2, overlay = true)
//----------Indicator------------//
periodK = input(30)
periodD = 3
smoothK = 2
periodK_two = input(90)
periodD_two = 3
smoothK_two = 2
k = sma(stoch(close, high, low, periodK), smoothK)
d = sma(k, periodD)
k_two = sma(stoch(close, high, low, periodK_two), smoothK_two)
d_two = sma(k, periodD_two)
ts = k + k_two
tsl = vwma(ts, input(30, title = "VWMA Length"))
//--------Label parameter--------//
up_label = tsl[1] < 100 and tsl > 100 ? 1 : 0
down_label = tsl[1] > 100 and tsl < 100 ? 1 : 0
//----------Color Code-----------//
//tsl_col = tsl > 100 and tsl > tsl[1] ? color.aqua : tsl > 100 and tsl < tsl[1] ? color.green : tsl < 100 and tsl > tsl[1] ? color.maroon : tsl < 100 and tsl < tsl[1] ? color.red : color.silver
//tsl_col = tsl > 100 and ts < 100 and ts > ts[1] ? color.aqua : tsl > 100 and ts > 100 and (ts > ts[1] or ts < ts[1]) ? color.green : tsl < 100 and ts > 100 and ts < ts[1] ? color.red : tsl < 100 and ts < 100 and (ts < ts[1] or ts > ts[1]) ? color.maroon : color.purple
tsl_col = ts > ts[1] and tsl > tsl[1] ? color.lime : ts < ts[1] and tsl < tsl[1] ? color.red : color.yellow
ts_col = (tsl_col == color.lime or tsl_col == color.maroon) and (k>k[1] and k < 30) ? color.lime : (tsl_col == color.green or tsl_col == color.red) and (k < k[1] and k > 70) ? color.red : color.silver
//-------------Plots-------------//
buy = tsl_col[1] == color.yellow and tsl_col == color.lime ? 1 : 0
sell = tsl_col[1] == color.yellow and tsl_col == color.red ? -1 : 0
plotcandle(open,high,low,close, color=tsl_col)
strategy.entry("Long", strategy.long,when=buy==1)
strategy.close("Long", when=sell==-1)