Chiến lược đột phá động lượng


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

Tổng quan

Chiến lược này là một chiến lược giao dịch trong ngày dựa trên các chỉ số động lực và các mức kháng cự hỗ trợ quan trọng để thực hiện các hoạt động phá vỡ. Nó kết hợp với chỉ số Choppiness để xác định xu hướng và chỉ giao dịch khi xu hướng rõ ràng để kiểm soát rủi ro.

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

Chiến lược này sử dụng chỉ số Choppiness để xác định xu hướng, giá trị Choppiness thấp cho thấy xu hướng rõ ràng, giá trị Choppiness cao cho thấy sự cân bằng. Chiến lược chỉ hoạt động khi giá trị Choppiness thấp hơn 44.

Đối với tín hiệu nhập, nó tính toán các mức kháng cự hỗ trợ quan trọng trong ngày, bao gồm H4, H5 v.v. Khi giá đóng cửa vượt qua H4, làm nhiều; Khi giá đóng cửa giảm xuống L4, làm trống.

Cụ thể, nó tính toán mức kháng cự hỗ trợ trong một ngày như sau:

  • Pivot = (giá cao + giá thấp + giá đóng cửa) / 3
  • Range = giá trị cao nhất - giá trị thấp nhất
  • H1-H6 = Pivot + Range * tỷ lệ
  • L1-L6 = Pivot - Range * tỷ lệ

Sau khi tính toán các điểm kháng cự hỗ trợ này, nó đưa H4 và L4 làm điểm đột phá quan trọng.

Khi giá vượt qua H4, nó sẽ thực hiện nhiều hoạt động. Khi giá giảm xuống L4, nó sẽ thực hiện các hoạt động.

Phân tích lợi thế chiến lược

Chiến lược này có những ưu điểm sau:

  1. Sử dụng chỉ số Choppiness để xác định xu hướng rõ ràng, bạn có thể tránh được sự phân tích thị trường.

  2. Tính toán các mức kháng cự hỗ trợ quan trọng, những mức này thường có ý nghĩa mạnh mẽ. Dựa vào chúng để thực hiện giao dịch phá vỡ, có thể có tỷ lệ lợi nhuận cao hơn.

  3. Các vị trí H4 và L4 trong ngày đã bị phá vỡ, gần giá đóng cửa, là các điểm phân chia đa không gian quan trọng trong ngày.

  4. Các tín hiệu phá vỡ có tỷ lệ thắng rất cao. Khi giá thực sự phá vỡ H4 và L4, các hoạt động tiếp theo thường sẽ tiếp tục kéo dài xu hướng.

  5. Các chiến lược vận hành logic rất đơn giản, rõ ràng, dễ hiểu và thực hiện, phù hợp cho người mới học.

Phân tích rủi ro chiến lược

Chiến lược này cũng có những rủi ro sau:

  1. Tùy thuộc vào chỉ số Choppiness để xác định xu hướng, chỉ số này cũng có thể không hiệu quả, dẫn đến việc đánh giá sai xu hướng thị trường.

  2. Các mức kháng cự hỗ trợ được tính toán không chắc chắn 100%, giá có thể phá vỡ trực tiếp các mức này, dẫn đến lỗ dừng.

  3. Các tín hiệu phá vỡ có thể xảy ra phá vỡ giả, giá thực tế sẽ nhanh chóng điều chỉnh lại, khiến chiến lược này gây ra tổn thất.

  4. Chiến lược này không tính đến hướng của xu hướng lớn, và có thể sẽ mất nhiều lần khi thị trường không biết hướng đi lâu dài.

  5. Chiến lược này không có cơ chế dừng lỗ, và trong trường hợp cực đoan, tổn thất đơn lẻ có thể rất lớn.

Phản ứng:

  1. Các chỉ số khác có thể được đưa vào để đánh giá tổng hợp, tăng độ chính xác trong việc đánh giá xu hướng.

  2. Tăng mức dừng di chuyển để kiểm soát tổn thất đơn lẻ.

  3. Giao dịch với các chỉ số xu hướng dài hạn để tránh giao dịch ngược.

  4. Tăng tín hiệu tái nhập cảnh để tránh truy lùng các vụ đột nhập giả.

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

Chiến lược này có thể được tối ưu hóa thêm bằng cách:

  1. Tối ưu hóa các tham số cho Choppiness để tìm ra các giá trị phù hợp hơn để cải thiện độ chính xác.

  2. Kiểm tra các điểm đột phá khác nhau, chẳng hạn như H3 và L3, để tìm các lỗ đột phá hiệu quả hơn.

  3. Thêm chiến lược dừng lỗ di động để khóa lợi nhuận và kiểm soát rủi ro.

  4. Tăng tín hiệu tái nhập để tránh tiếp tục thua lỗ sau khi phá vỡ giả.

  5. Kết hợp các chỉ số đường dài để đánh giá xu hướng lớn, tránh hoạt động ngược.

  6. Tối ưu hóa thời gian giao dịch, chẳng hạn như chỉ hoạt động trong thời gian giao dịch của Mỹ hoặc châu Âu.

  7. Thêm chiến lược quản lý vị trí, chẳng hạn như số lượng cố định hoặc tiền cố định.

  8. Phân tích dữ liệu phản hồi, kiểm tra và tối ưu hóa các tham số hơn nữa.

Tóm tắt

Nói chung, ý tưởng cốt lõi của chiến lược này là xác định xu hướng và thực hiện khi phá vỡ ngưỡng kháng cự hỗ trợ quan trọng. Nó có cấu trúc logic đơn giản và tỷ lệ lợi nhuận cao. Nhưng cũng có một số rủi ro cần phải tiếp tục tối ưu hóa để kiểm soát rủi ro và tăng tỷ lệ lợi nhuận.

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

//@version=4
//Created by AS
strategy(title="ASH1Strategy", shorttitle="AS_H1_Strategy", overlay=true) 
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,3)

pivot = (high + low + close ) / 3.0 
range = high - low
h5 = (high/low) * close 
h4 = close + (high - low) * 1.1 / 2.0
h3 = close + (high - low) * 1.1 / 4.0
h2 = close + (high - low) * 1.1 / 6.0
h1 = close + (high - low) * 1.1 / 12.0
l1 = close - (high - low) * 1.1 / 12.0
l2 = close - (high - low) * 1.1 / 6.0
l3 = close - (high - low) * 1.1 / 4.0
l4 = close - (high - low) * 1.1 / 2.0
h6 = h5 + 1.168 * (h5 - h4) 
l5 = close - (h5 - close)
l6 = close - (h6 - close)

// Daily line breaks
//sopen = request.security(syminfo.tickerid, "D", open [1])
//shigh = request.security(syminfo.tickerid, "D", high [1])
//slow = request.security(syminfo.tickerid, "D", low [1])
//sclose = request.security(syminfo.tickerid, "D", close [1])
//
// Color
//dcolor=sopen != sopen[1] ? na : black
//dcolor1=sopen != sopen[1] ? na : red
//dcolor2=sopen != sopen[1] ? na : green

//Daily Pivots 
dtime_pivot = request.security(syminfo.tickerid, 'D', pivot[1]) 
dtime_h6 = request.security(syminfo.tickerid, 'D', h6[1]) 
dtime_h5 = request.security(syminfo.tickerid, 'D', h5[1]) 
dtime_h4 = request.security(syminfo.tickerid, 'D', h4[1]) 
dtime_h3 = request.security(syminfo.tickerid, 'D', h3[1]) 
dtime_h2 = request.security(syminfo.tickerid, 'D', h2[1]) 
dtime_h1 = request.security(syminfo.tickerid, 'D', h1[1]) 
dtime_l1 = request.security(syminfo.tickerid, 'D', l1[1]) 
dtime_l2 = request.security(syminfo.tickerid, 'D', l2[1]) 
dtime_l3 = request.security(syminfo.tickerid, 'D', l3[1]) 
dtime_l4 = request.security(syminfo.tickerid, 'D', l4[1]) 
dtime_l5 = request.security(syminfo.tickerid, 'D', l5[1]) 
dtime_l6 = request.security(syminfo.tickerid, 'D', l6[1]) 

//offs_daily = 0
//plot(sd and dtime_pivot ? dtime_pivot : na, title="Daily Pivot",color=dcolor, linewidth=2)
//plot(sd and dtime_h6 ? dtime_h6 : na, title="Daily H6", color=dcolor2, linewidth=2)
//plot(sd and dtime_h5 ? dtime_h5 : na, title="Daily H5",color=dcolor2, linewidth=2)
//plot(sd and dtime_h4 ? dtime_h4 : na, title="Daily H4",color=dcolor2, linewidth=2)
//plot(sd and dtime_h3 ? dtime_h3 : na, title="Daily H3",color=dcolor1, linewidth=3)
//plot(sd and dtime_h2 ? dtime_h2 : na, title="Daily H2",color=dcolor2, linewidth=2)
//plot(sd and dtime_h1 ? dtime_h1 : na, title="Daily H1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l1 ? dtime_l1 : na, title="Daily L1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l2 ? dtime_l2 : na, title="Daily L2",color=dcolor2, linewidth=2)
//plot(sd and dtime_l3 ? dtime_l3 : na, title="Daily L3",color=dcolor1, linewidth=3)
//plot(sd and dtime_l4 ? dtime_l4 : na, title="Daily L4",color=dcolor2, linewidth=2)
//plot(sd and dtime_l5 ? dtime_l5 : na, title="Daily L5",color=dcolor2, linewidth=2)
//plot(sd and dtime_l6 ? dtime_l6 : na, title="Daily L6",color=dcolor2, linewidth=2)

longCondition = close >dtime_h4
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)
    


shortCondition = close <dtime_l4
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)