Chiến lược của nhà giao dịch thể chế dựa trên hành động giá

Tác giả:ChaoZhang, Ngày: 2024-02-23 15:04:39
Tags:

img

Tổng quan

Chiến lược này được đặt tên là Chiến lược nhà giao dịch thể chế dựa trên hành động giá. Nó cố gắng tận dụng các mô hình giao dịch nhất định được sử dụng bởi các nhà giao dịch thể chế, đặc biệt là xu hướng đặt lệnh xung quanh các khối lệnh cụ thể. Chiến lược này kết hợp các yếu tố giá trị hợp lý, thanh khoản và hành động giá để xác định các bước vào và ra khỏi thị trường.

Chiến lược logic

Trọng tâm của chiến lược là xác định khối lệnh khu vực giá nơi hoạt động giao dịch tổ chức đáng kể đã diễn ra trong quá khứ. Các khu vực này có liên quan đến thanh khoản đáng kể. Các khối lệnh được xác định bằng cách sử dụng cấu trúc giá và thường liên quan đến các mức giá kỹ thuật chính.

Giá trị hợp lý được định nghĩa là giá hợp lý của một công cụ dựa trên các chỉ số như đường trung bình động.

Liquidity cũng là một yếu tố quan trọng vì các nhà giao dịch tổ chức có xu hướng thực hiện giao dịch trong các khu vực có tính thanh khoản cao.

Chiến lược xác định giá trị hợp lý bằng cách tính toán một đường trung bình di chuyển đơn giản. Sau đó xác định các khối lệnh tiềm năng có chiều dài 20 giai đoạn. Nếu sự khác biệt giữa giá đóng và giá trị hợp lý dưới 38,2% tổng chiều cao của phạm vi khối lệnh, một khối lệnh được xác định.

Các khối lệnh tăng được coi là tín hiệu mua. Các khối lệnh giảm được coi là tín hiệu bán.

Phân tích lợi thế

Lợi thế chính của chiến lược là sử dụng các mô hình giao dịch của các nhà giao dịch tổ chức có thể cho phép nó vượt trội hơn các chiến lược dựa trên chỉ số cơ chế hơn.

Những lợi thế khác bao gồm:

  • Nhận được thực thi tốt hơn bằng cách sử dụng thanh khoản
  • Dựa trên các khái niệm dễ hình dung như luồng lệnh
  • Dễ dàng hình dung các khối lệnh trên biểu đồ
  • Tính linh hoạt để điều chỉnh các tham số như chiều dài khối

Phân tích rủi ro

Chiến lược cũng phải đối mặt với một số rủi ro tiềm ẩn như:

  • Sự dựa vào các phán đoán về hành vi giá trong quá khứ
  • Có thể không hoạt động đúng cách trên thị trường không có dòng lệnh
  • Có thể tạo ra tín hiệu sai
  • Có thể bỏ lỡ xu hướng ngắn hạn

Để giảm thiểu những rủi ro này, nên xem xét:

  • Kết hợp với các chỉ số khác để lọc tín hiệu sai
  • Điều chỉnh các thông số như chiều dài khối
  • Việc lọc các tín hiệu được phát hành để giao dịch

Hướng dẫn tối ưu hóa

Dưới đây là một số tối ưu hóa tiềm năng cho chiến lược:

  1. Kiểm tra và tối ưu hóa các giá trị tham số chính như chiều dài khối và tỷ lệ lệ lệ lệch giá trị hợp lý
  2. Thêm các chỉ số và bộ lọc bổ sung để cải thiện chất lượng
  3. Xây dựng các cơ chế dừng lỗ và lấy lợi nhuận
  4. Kết hợp nhiều nguồn dữ liệu hơn như hoạt động sổ đặt hàng
  5. Kiểm tra độ chắc chắn trong các khoảng thời gian khác nhau (trong ngày, nhiều ngày, v.v.) và thị trường
  6. Thêm dự đoán máy học để lọc tín hiệu

Tóm lại

Tóm lại, chiến lược cung cấp một cách tiếp cận độc đáo để tận dụng lợi thế của hành vi của nhà giao dịch tổ chức. Nó kết hợp nhiều yếu tố và có một số lợi thế nhất định. Nhưng giống như hầu hết các chiến lược giao dịch, nó cũng phải đối mặt với rủi ro khi điều kiện thị trường thay đổi hoặc hành vi giá bất ngờ xảy ra. Với kiểm tra liên tục, tối ưu hóa và quản lý rủi ro, chiến lược có thể trở thành một công cụ giao dịch định lượng có giá trị.


/*backtest
start: 2024-01-23 00:00:00
end: 2024-02-22 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("ICT Strategy", overlay=true)

// Input variables
length = input.int(20, minval=1, title="Order Block Length")
fairValuePeriod = input.int(60, minval=1, title="Fair Value Period")

// Calculate fair value
fairValue = ta.sma(close, fairValuePeriod)

// Determine order blocks
isOrderBlock(high, low) =>
    highestHigh = ta.highest(high, length)
    lowestLow = ta.lowest(low, length)
    absHighLowDiff = highestHigh - lowestLow
    absCloseFairValueDiff = (close - fairValue)
    (absCloseFairValueDiff <= 0.382 * absHighLowDiff)

isBuyBlock = isOrderBlock(high, low) and close > fairValue
isSellBlock = isOrderBlock(high, low) and close < fairValue

// Plot fair value and order blocks
plot(fairValue, color=color.blue, title="Fair Value")
plotshape(isBuyBlock, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(isSellBlock, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)

// Strategy logic
if (isBuyBlock)
    strategy.entry("Buy", strategy.long)
    
if (isSellBlock)
    strategy.entry("Sell", strategy.short)


Thêm nữa