Chiến lược đột phá đảo ngược dòng K liên tục


Ngày tạo: 2024-03-05 16:07:40 sửa đổi lần cuối: 2024-03-05 16:07:40
sao chép: 0 Số nhấp chuột: 725
1
tập trung vào
1617
Người theo dõi

Chiến lược đột phá đảo ngược dòng K liên tục

Tổng quan về chiến lược

Ý tưởng cốt lõi của chiến lược phá vỡ K-line liên tục là nắm bắt cơ hội giao dịch khi giá cổ phiếu có tín hiệu đảo ngược và phá vỡ ngưỡng kháng cự quan trọng sau một thời gian giảm liên tục. Chiến lược này bằng cách đặt các tham số như số lượng K-line liên tục giảm, số lượng K-line liên tục tăng và điều kiện dừng lỗ, mở thêm khi một điều kiện cụ thể được đáp ứng và đóng cửa khi điều kiện dừng lỗ được kích hoạt.

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

  1. Thiết lập điều kiện nhập cảnh: Khi giá cổ phiếu giảm liên tiếp theo đường X gốc K, tiếp theo liên tục tăng đường Y gốc K, và tại thời điểm này chiến lược không giữ vị trí, kích hoạt điều kiện nhập cảnh, mở nhiều vị trí.
  2. Thiết lập điều kiện dừng lỗ: Sau khi mở vị trí, nếu giá cổ phiếu thấp hơn giá đóng cửa thấp nhất của các dòng K trước đó, hoặc thấp hơn giá cao nhất khi mở vị trí trừ 2 lần ATR ((trung lượng thực tế trung bình), điều kiện dừng lỗ sẽ được kích hoạt.
  3. Mỗi lần mở vị trí ghi lại giá vào và giá dừng tương ứng, và đặt lại các tham số sau khi thanh toán, để chuẩn bị cho giao dịch tiếp theo.
  4. Sử dụng kịch bản pin để viết mã chiến lược, có thể được phản hồi và tối ưu hóa trên các nền tảng như TradingView.

Điều quan trọng trong chiến lược là xác định đúng tín hiệu đảo ngược và đặt các tham số thích hợp. Bao nhiêu đường K liên tục giảm và bao nhiêu đường K liên tục tăng là hai tham số quan trọng cần được tối ưu hóa dựa trên kết quả đo đạc. Ngoài ra, thiết lập các điều kiện dừng lỗ cũng rất quan trọng, để kiểm soát rủi ro và không dừng lỗ quá sớm dẫn đến cơ hội bị mất.

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

  1. Đối với thị trường chấn động và xu hướng ban đầu: Chiến lược này mở vị trí khi có tín hiệu đảo ngược sau khi giá cổ phiếu điều chỉnh một thời gian, dễ dàng nắm bắt cơ hội ở giai đoạn đầu của xu hướng.
  2. Rủi ro kiểm soát dừng lỗ kịp thời: Bằng cách thiết lập điều kiện dừng lỗ dựa trên mức thấp trước đó và ATR, bạn có thể tháo lỗ kịp thời khi giá cổ phiếu giảm trở lại.
  3. Các tham số có thể điều chỉnh, thích ứng: số lượng đường K liên tiếp, điều kiện dừng lỗ có thể được điều chỉnh theo đặc điểm thị trường và sở thích cá nhân, tăng khả năng thích ứng của chiến lược.

Rủi ro chiến lược

  1. Chọn tham số không đúng dẫn đến giao dịch thường xuyên: Nếu số lượng K-line liên tiếp được thiết lập quá nhỏ, nó có thể dẫn đến việc chiến lược thường xuyên mở lỗ hổng và tăng chi phí giao dịch.
  2. Cài đặt vị trí dừng lỗ không phù hợp sẽ làm tăng tổn thất: Nếu vị trí dừng lỗ được thiết lập quá rộng, nó có thể dẫn đến tổn thất giao dịch đơn lẻ quá lớn; Nếu vị trí dừng lỗ được thiết lập quá hẹp, nó có thể dẫn đến việc giao dịch có lợi nhuận bị dừng lại sớm.
  3. Đối với các hoạt động xu hướng dài hạn, chiến lược này hoạt động chung: Chiến lược này thích hợp hơn để sử dụng trong thị trường chấn động và xu hướng ban đầu, đối với các hoạt động xu hướng ổn định lâu dài, có thể không được hưởng lợi đầy đủ từ sự gia tăng.
  4. Thiếu quản lý vị thế và quản lý tài chính: Không có nội dung quản lý vị thế và quản lý tài chính trong mã chiến lược hiện tại, và trong ứng dụng thực tế, chúng cần được thêm vào để nâng cao sự ổn định của chiến lược.

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

  1. Tối ưu hóa số lượng đường K liên tục: Xác định số lượng đường K liên tục giảm và số lượng đường K liên tục tăng tốt nhất trong khoảng thời gian gần đây bằng cách kiểm tra lại các tổ hợp tham số khác nhau.
  2. Tối ưu hóa điều kiện dừng lỗ: Bạn có thể xem xét sử dụng điều kiện dừng lỗ động hơn, chẳng hạn như thiết lập vị trí dừng lỗ dựa trên ATR hoặc tỷ lệ phần trăm để thích ứng với các biến động thị trường khác nhau.
  3. Tham gia giao dịch hai chiều đa chiều: Chiến lược hiện tại chỉ có một hướng, bạn có thể xem xét tham gia chiến lược giao dịch nhị phân, đồng thời nắm bắt cơ hội tăng và giảm.
  4. Tham gia quản lý vị trí và quản lý tài chính: Đổi đổi kích thước vị trí cho mỗi giao dịch theo tình trạng tài chính và sở thích rủi ro của tài khoản, và đặt giới hạn rủi ro tổng thể, nâng cao tính ổn định của chiến lược.
  5. Kết hợp với các chỉ số hoặc tín hiệu kỹ thuật khác: Chiến lược này có thể được kết hợp với các chỉ số kỹ thuật khác (như RSI, MACD, v.v.) hoặc tín hiệu giao dịch (như phá vỡ, hình dạng, v.v.) để cải thiện độ chính xác của việc mở vị trí và giữ vị trí.

Tóm tắt chiến lược

Chiến lược phá vỡ đường K liên tục để đưa ra quyết định giao dịch bằng cách nắm bắt tín hiệu đảo ngược sau khi giá cổ phiếu giảm liên tục. Chiến lược này đơn giản và dễ hiểu, phù hợp để sử dụng trong thị trường chấn động và xu hướng ban đầu, có thể thích ứng linh hoạt với các tình trạng thị trường khác nhau bằng cách đặt các tham số như số lượng đường K liên tục và điều kiện dừng lỗ. Tuy nhiên, chiến lược này cũng có một số hạn chế, chẳng hạn như khả năng thích ứng với xu hướng dài hạn, thiếu quản lý vị trí và quản lý vốn.

Trong ứng dụng thực tế, cần phải tối ưu hóa và cải thiện chiến lược tùy thuộc vào đặc điểm của thị trường và sở thích rủi ro của riêng bạn. Ví dụ: tối ưu hóa số lượng đường K liên tiếp và thiết lập điều kiện dừng lỗ, thêm giao dịch hai chiều đa luồng, giới thiệu quản lý vị trí và quản lý vốn, và kết hợp với các chỉ số kỹ thuật và tín hiệu giao dịch khác.

Nhìn chung, chiến lược phá vỡ liên tục K-line là một chiến lược giao dịch thực tế đơn giản, đáng để khám phá và tối ưu hóa hơn nữa trong thực tế. Tuy nhiên, không có chiến lược nào là tất cả mọi thứ, nhà đầu tư cũng cần kết hợp kinh nghiệm và phán đoán của riêng mình, quyết định thận trọng và thực hiện nghiêm ngặt để có thể đứng vững trong thị trường lâu dài.

Mã nguồn chiến lược
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bottom Out Strategy", overlay=true)
consecutiveBarsUp = input(2)
consecutiveBarsDown = input(3)
price = close
ups = 0.0
ups := price > price[1] ? nz(ups[1]) + 1 : 0
dns = 0.0
dns := price < price[1] ? nz(dns[1]) + 1 : 0
var entry_bar_index = 1000000
var active = false
var stop_loss = 0.0

// === INPUT BACKTEST RANGE ===
i_from = input(defval = timestamp("01 Jan 2023 00:00 +0000"), title = "From")
i_thru = input(defval = timestamp("01 Mar 2024 00:00 +0000"), title = "Thru")
// === FUNCTION EXAMPLE ===
date() => true

entry_condition() => 
	date() and dns[2] >= consecutiveBarsDown and ups >= consecutiveBarsUp and not active

exit_condition() =>
	date() and active and (close < nz(stop_loss) or close < high - 2 * ta.atr(7))

if (entry_condition())
	strategy.entry("ConsDnLong", strategy.long, comment="CDLEntry")
	entry_bar_index := bar_index
	active := true
	stop_loss := math.min(close, close[1], close[2])
	// log.info("Entry at bar {0}, close={1}, stop_loss={2} ", entry_bar_index, close, stop_loss)
if (exit_condition())
	strategy.close("ConsDnLong", comment = "CDLClose")
	// log.info("Close at bar {0}", bar_index)
	entry_bar_index := 1000000
	active := false
// if (dns >= consecutiveBarsDown)
// 	strategy.entry("ConsDnSE", strategy.short, comment="ConsDnSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
plot(high - 2* ta.atr(7))