Chiến lược đảo ngược áp lực hỗ trợ trục


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

Tổng quan

Chiến lược đảo ngược áp lực hỗ trợ trục là một chiến lược giao dịch đột phá, kết hợp các khái niệm về áp lực hỗ trợ trục, hoạt động ngược lại khi giá vượt qua vị trí trục. Chiến lược này đơn giản, dễ hiểu và dễ thực hiện, là một chiến lược giao dịch đột phá ngắn.

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

Chiến lược này đầu tiên tính toán giá cao nhất và giá thấp nhất trong một chu kỳ nhất định (ví dụ như 4 đường K) làm mức hỗ trợ trục và mức áp lực trục. Sau đó theo dõi giá trong thời gian thực để xác định giá có vượt qua mức trục hay không. Cụ thể:

  1. Sử dụng hàm pivothigh () để tính giá trị cao nhất, và nhận được áp suất trục swh
  2. Sử dụng hàm pivotlow (()) để tính giá thấp nhất, nhận được vị trí hỗ trợ trục swl
  3. Giao dịch ngắn khi giá tăng vượt qua áp lực trục swh
  4. Khi giá giảm vượt qua ngưỡng hỗ trợ trục swl, thực hiện giao dịch đa đầu ((Strategy.long)

Lập luận của chiến lược này rất đơn giản và rõ ràng, chủ yếu là để xác định giá phá vỡ vị trí trục. Đồng thời, chiến lược này thêm vào logic kiểm soát thời gian giao dịch, chỉ giao dịch trong phạm vi thời gian được chỉ định, do đó tránh rủi ro qua đêm.

Phân tích lợi thế

Chiến lược xoay trục này có một số ưu điểm:

  1. Các ý tưởng chiến lược đơn giản, dễ hiểu và dễ thực hiện, phù hợp với người mới bắt đầu học;
  2. Sử dụng vị trí trục để xác định điểm đảo ngược xu hướng, không dễ bị ảnh hưởng bởi tiếng ồn thị trường ngắn hạn;
  3. Chỉ giao dịch khi phá vỡ vị trí trục, tránh quá nhiều giao dịch không cần thiết;
  4. Các nhà giao dịch đã đưa ra các biện pháp để kiểm soát thời gian giao dịch, giúp tránh các rủi ro liên quan đến việc giao dịch qua đêm.
  5. Có ít mã, ít tài nguyên, dễ dàng tối ưu hóa chiến lược.

Phân tích rủi ro

Chiến lược này cũng có một số rủi ro cần lưu ý:

  1. Các điểm trục không thể dự đoán 100% xu hướng giá, có khả năng phá vỡ sai;
  2. Đánh giá xu hướng chuyển hướng chỉ dựa trên vị trí trục có thể gây ra sự tham gia sớm, nên kết hợp với các chỉ số khác để xác định tín hiệu giao dịch;
  3. Không tính đến xu hướng thị trường lớn và đặc điểm của từng cổ phiếu, có rủi ro hệ thống;
  4. Khi gần mức áp lực hỗ trợ, hiệu quả phá vỡ có thể không rõ ràng, nên mở rộng phạm vi dừng thiệt hại thích hợp.

Để kiểm soát rủi ro, đề xuất tối ưu hóa có thể được xem xét khi thêm dừng di chuyển, nắm được hướng xu hướng lớn và kết hợp với lựa chọn cổ phiếu và cổ phiếu lớn để giảm tỷ lệ phá vỡ sai.

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

Với những rủi ro trong chiến lược này, có thể tối ưu hóa trong tương lai theo những hướng sau:

  1. Tối ưu hóa các tham số bit trục, chẳng hạn như tăng độ dài chu kỳ tính toán, để xem có thể cải thiện tỷ lệ thành công của đột phá hay không;

  2. Tham gia vào cơ chế dừng lỗ di động, theo dõi xu hướng lớn và giảm thiểu rủi ro của sự đảo ngược;

  3. Kết hợp với các chỉ số khác như MACD để đánh giá xu hướng, tránh rủi ro do đột phá sai;

  4. Phân loại cổ phiếu, phân biệt các đặc tính khác nhau, đặt các tham số khác nhau;

  5. Tối ưu hóa thời gian giao dịch, tính đến thời gian giao dịch của các khu vực khác nhau như cổ phiếu Mỹ, cổ phiếu Hồng Kông;

  6. Các nhà đầu tư cũng có thể lựa chọn các giao dịch có tính chọn lọc.

Tóm tắt

Nói chung, chiến lược đảo ngược áp lực hỗ trợ trục là một chiến lược đột phá đơn giản rất phù hợp cho người mới bắt đầu. Nó sử dụng vị trí trục để đánh giá thời gian đảo ngược, ý tưởng chiến lược rõ ràng và dễ hiểu.

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

//@version=3
strategy("Pivot Reversal Strategy", overlay=true)

// === BACKTEST RANGE ===
FromMonth = input(defval = 2, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2018, title = "From Year", minval = 2014)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 2014)


leftBars = input(4)
rightBars = input(2)

swh = pivothigh(leftBars, rightBars)
swl = pivotlow(leftBars, rightBars)

swh_cond = not na(swh)

hprice = 0.0
hprice := swh_cond ? swh : hprice[1]

le = false
le := swh_cond ? true : (le[1] and high > hprice ? false : le[1])

if (le)
    strategy.entry("PivRevLE", strategy.long, comment="PivRevLE", stop=hprice + syminfo.mintick)

swl_cond = not na(swl)

lprice = 0.0
lprice := swl_cond ? swl : lprice[1]


se = false
se := swl_cond ? true : (se[1] and low < lprice ? false : se[1])

if (se)
    strategy.entry("PivRevSE", strategy.short, comment="PivRevSE", stop=lprice - syminfo.mintick)

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)