Chiến lược xoắn ốc

Tác giả:ChaoZhang, Ngày: 2023-12-21 15:12:37
Tags:

img

Tổng quan

Chiến lược xoáy Stochastic là một chiến lược tạo ra tín hiệu mua khi đường K của Trình dao động Stochastic vượt qua trên đường D và VI dương cao hơn VI âm. Chiến lược này kết hợp các lợi thế của chỉ số Trình dao động Stochastic và Chỉ số xoáy để nắm bắt các cơ hội khi giá cổ phiếu đảo ngược.

Chiến lược logic

Chiến lược này chủ yếu dựa trên hai chỉ số:

  1. Stochastic Oscillator: Chỉ số này so sánh giá đóng cửa của ngày với giá cao nhất và thấp nhất trong một khoảng thời gian nhất định để phản ánh liệu thị trường có bán quá mức hay mua quá mức. Khi đường nhanh K của Stochastic Oscillator vượt qua đường chậm D, nó được coi là tín hiệu mua.

  2. Chỉ số xoáy: Chỉ số này phản ánh các chuyển động tăng hoặc giảm giống như xoáy trong thị trường bằng cách so sánh biến động trong một khoảng thời gian nhất định. Khi chỉ số xoáy dương cao hơn chỉ số xoáy âm, điều đó có nghĩa là đà tăng của giá cổ phiếu mạnh hơn đà giảm, vì vậy chúng ta có thể mua.

Dấu hiệu mua của chiến lược này đến từ đường nhanh K vượt qua đường chậm D của Stochastic Oscillator, cho thấy giá cổ phiếu phục hồi từ khu vực bán quá mức. Và chỉ số xoáy dương cao hơn chỉ số xoáy âm có nghĩa là động lực tăng mạnh của giá cổ phiếu. Vì vậy, sự kết hợp của hai tín hiệu này tạo ra quyết định mua cuối cùng.

Phân tích lợi thế

Các đặc điểm chính của chiến lược này là:

  1. Bắt được sự phục hồi của giá cổ phiếu một cách kịp thời.

  2. Chỉ số Vortex xác định động lượng tăng để tránh sự đột phá sai.

  3. Các thông số điều chỉnh để tối ưu hóa chiến lược.

  4. Nhìn thấy tín hiệu mua để nhận định trực giác.

  5. Stochastic và vortex có các cơ chế tích hợp mà không có quá nhiều dữ liệu lịch sử.

Phân tích rủi ro

Có một số rủi ro trong chiến lược này:

  1. Các tín hiệu mua có thể có lỗi và thua lỗ không thể tránh hoàn toàn.

  2. Cài đặt tham số không phù hợp có thể ảnh hưởng đến hiệu suất chiến lược.

  3. Khả năng thất bại của chỉ số lớn hơn khi giá cổ phiếu biến động mạnh.

  4. Nó không thể xác định xu hướng thị trường và cũng sẽ tạo ra tín hiệu mua trong thị trường giảm.

Những rủi ro này có thể được giảm thiểu bằng cách điều chỉnh các tham số, thiết lập dừng lỗ, xem xét xu hướng thị trường, vv Nhưng không có chiến lược định lượng nào có thể tránh hoàn toàn tổn thất.

Tối ưu hóa

Chiến lược cũng có thể được tối ưu hóa trong các khía cạnh sau:

  1. Kết hợp các chỉ số kỹ thuật khác để xác định xu hướng tổng thể để tránh mở các vị trí ở mức cao.

  2. Tăng cơ chế dừng lỗ để kiểm soát tối đa lỗ đơn.

  3. Kiểm tra các kết hợp khác nhau của các thông số chỉ số để tìm các thông số tối ưu.

  4. Tăng điều kiện mở để giảm xác suất dương tính giả.

  5. Xem xét chi phí giao dịch và đặt mục tiêu lợi nhuận tối thiểu.

Những tối ưu hóa này có thể cải thiện sự ổn định của các chiến lược, giảm tổn thất và tối đa hóa giá trị của các chiến lược.

Tóm lại

Chiến lược xoáy ngưng tính (Stochastic Vortex Strategy) tính đến các tín hiệu đảo ngược giá và tín hiệu tăng động lực. Đây là một chiến lược đảo ngược điển hình. Nó nắm bắt cơ hội khi giá cổ phiếu phục hồi từ các khu vực quá bán và sử dụng Chỉ số xoáy để xác định động lực tăng để tránh phá vỡ sai. Chiến lược linh hoạt, dễ thực hiện này có rủi ro có thể kiểm soát được và là một chiến lược định lượng tốt. Nhưng không có chiến lược nào có thể tránh hoàn toàn rủi ro thị trường. Chúng ta nên xử lý nó một cách thận trọng và chú ý đến các không gian tối ưu hóa có thể để khám phá giá trị lớn hơn của chiến lược.


/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Stochastic and Vortex Strategy", overlay=true)

// Stochastic Oscillator settings
kPeriod = input(14, title="K Period")
dPeriod = input(3, title="D Period")
slowing = input(3, title="Slowing")
k = sma(stoch(close, high, low, kPeriod), slowing)
d = sma(k, dPeriod)

// Vortex Indicator settings
lengthVI = input(14, title="Vortex Length")
tr = max(max(high - low, abs(high - close[1])), abs(low - close[1]))
vmPlus = abs(high - low[1])
vmMinus = abs(low - high[1])
viPlus = sum(vmPlus, lengthVI) / sum(tr, lengthVI)
viMinus = sum(vmMinus, lengthVI) / sum(tr, lengthVI)

// Buy condition
buyCondition = crossover(k, d) and viPlus > viMinus

if (buyCondition)
    strategy.entry("Buy", strategy.long)

plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plot(k, title="%K", color=color.blue)
plot(d, title="%D", color=color.orange)
hline(80, "Overbought", color=color.red)
hline(20, "Oversold", color=color.green)
plot(viPlus, title="VI+", color=color.purple)
plot(viMinus, title="VI-", color=color.red)


Thêm nữa