Tài nguyên đang được tải lên... tải...

Chiến lược định lượng luồng đơn đặt hàng của tổ chức đa cấp với hệ thống mở rộng vị trí động

Tác giả:ChaoZhang, Ngày: 2024-12-27 15:01:36
Tags:PCTVOLMAOB

img

Tổng quan

Chiến lược này là một hệ thống giao dịch thông minh dựa trên luồng lệnh thể chế, dự đoán các điểm đảo ngược giá tiềm năng bằng cách xác định các khối lệnh trên thị trường. Hệ thống sử dụng phương pháp quản lý quy mô vị trí năng động với ba mục tiêu để tối ưu hóa quản lý vị trí và tối đa hóa lợi nhuận.

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

Chiến lược dựa trên một số yếu tố chính:

  1. Xác định khối lệnh - Sử dụng cửa sổ xem lại 20 giai đoạn để xác định các khối lệnh mua và bán thông qua phân tích mô hình nến.
  2. Kiểm soát thời gian giao dịch - Giao dịch được giới hạn trong phiên chính từ 09:30-16:00, tránh các giai đoạn biến động cao trong thời gian mở và đóng thị trường.
  3. Logic Entry - Các vị trí dài được mở khi giá vượt quá khối lệnh mua trong giờ giao dịch, và các vị trí ngắn khi giá vượt dưới khối lệnh bán.
  4. Định vị quy mô - Thực hiện một hệ thống quy mô ba cấp 50% - 30% - 20% tương ứng với mục tiêu 0,5%, 1,0% và 1,5%.

Ưu điểm chiến lược

  1. Khám phá lệnh thông minh - Khám phá chính xác mức giá chính nơi các vị trí vốn lớn được xây dựng hoặc đóng thông qua phân tích năng động về mức cao và thấp.
  2. Phân phối rủi ro - Việc mở rộng vị trí ba cấp phân phối rủi ro hiệu quả, đảm bảo lợi nhuận trong khi cho phép xu hướng phát triển đầy đủ.
  3. Bộ lọc thời gian - Các hạn chế thời gian giao dịch tránh các giai đoạn biến động cao, cải thiện sự ổn định giao dịch.
  4. Hỗ trợ trực quan - Chiến lược cung cấp hình ảnh khối lệnh rõ ràng, giúp các nhà giao dịch hiểu cấu trúc thị trường.

Rủi ro chiến lược

  1. Rủi ro phá vỡ sai - Nhiều tín hiệu sai có thể xảy ra trong các thị trường dao động, cho thấy sự cần thiết của việc lọc chỉ số biến động.
  2. Tác động trượt - Các bước ra khỏi quy mô vị trí có thể phải đối mặt với trượt trong các thị trường thanh khoản thấp, đòi hỏi phải điều chỉnh khoảng cách mục tiêu thích hợp.
  3. Tùy thuộc vào xu hướng - Chiến lược hoạt động tốt trong các thị trường xu hướng nhưng có thể tạo ra các giao dịch thường xuyên trong các điều kiện khác nhau.

Tối ưu hóa chiến lược

  1. Điều chỉnh biến động - Khuyến nghị kết hợp chỉ số ATR để điều chỉnh năng động tỷ lệ phần trăm mục tiêu dựa trên biến động thị trường.
  2. Phân tích khối lượng luồng đơn đặt hàng - Xem xét kết hợp phân tích khối lượng để tăng độ tin cậy xác nhận khối đơn đặt hàng.
  3. Cửa sổ thời gian năng động - Xem xét điều chỉnh năng động thời gian xem xét lại dựa trên điều kiện thị trường để cải thiện khả năng thích nghi chiến lược.
  4. Kiểm soát rủi ro được tăng cường - Thêm giới hạn rút vốn tối đa và giới hạn lỗ hàng ngày để cải thiện tính vững chắc của chiến lược.

Tóm lại

Chiến lược này xây dựng một hệ thống giao dịch hoàn chỉnh thông qua phân tích luồng đơn đặt hàng tổ chức và quản lý vị trí năng động. Thông qua nhận dạng khối đơn đặt hàng và cài đặt lấy lợi nhuận đa cấp, nó nắm bắt các cơ hội từ các hoạt động vốn lớn trong khi thực hiện kiểm soát rủi ro hiệu quả. Các nhà giao dịch được khuyên nên xem xét cẩn thận điều kiện thị trường và điều chỉnh các tham số theo hoàn cảnh cụ thể trong giao dịch trực tiếp.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=6
strategy("Institutional Order Flow Strategy", overlay=true)

// Input settings
inputSession = input("0930-1600", "Trading Session") // Trading session
lookbackPeriod = input.int(20, "Order Block Lookback Period", minval=1) // Lookback for Order Blocks
target1Pct = input.float(0.5, "Target 1 (% move)", step=0.1, minval=0.1) // First profit target
target2Pct = input.float(1.0, "Target 2 (% move)", step=0.1, minval=0.1) // Second profit target
target3Pct = input.float(1.5, "Target 3 (% move)", step=0.1, minval=0.1) // Third profit target

// Order Block identification
highestHigh = ta.highest(high, lookbackPeriod)
lowestLow = ta.lowest(low, lookbackPeriod)
orderBlockBuy = ta.valuewhen(close[1] < open[1] and close > open, highestHigh, 0)
orderBlockSell = ta.valuewhen(close[1] > open[1] and close < open, lowestLow, 0)

// Entry logic
inSession = true
longCondition = close > orderBlockBuy and inSession
shortCondition = close < orderBlockSell and inSession

// Strategy entries
if longCondition
    strategy.entry("Long", strategy.long)

if shortCondition
    strategy.entry("Short", strategy.short)

// Calculate targets for scaling out
longTarget1 = strategy.position_avg_price + strategy.position_avg_price * target1Pct / 100
longTarget2 = strategy.position_avg_price + strategy.position_avg_price * target2Pct / 100
longTarget3 = strategy.position_avg_price + strategy.position_avg_price * target3Pct / 100

shortTarget1 = strategy.position_avg_price - strategy.position_avg_price * target1Pct / 100
shortTarget2 = strategy.position_avg_price - strategy.position_avg_price * target2Pct / 100
shortTarget3 = strategy.position_avg_price - strategy.position_avg_price * target3Pct / 100

// Exit logic with scaling out
if strategy.position_size > 0
    strategy.exit("Target 1", from_entry="Long", limit=longTarget1, qty_percent=50)
    strategy.exit("Target 2", from_entry="Long", limit=longTarget2, qty_percent=30)
    strategy.exit("Target 3", from_entry="Long", limit=longTarget3, qty_percent=20)

if strategy.position_size < 0
    strategy.exit("Target 1", from_entry="Short", limit=shortTarget1, qty_percent=50)
    strategy.exit("Target 2", from_entry="Short", limit=shortTarget2, qty_percent=30)
    strategy.exit("Target 3", from_entry="Short", limit=shortTarget3, qty_percent=20)

// Visualize Order Blocks
plot(orderBlockBuy, "Order Block Buy", color=color.green, linewidth=2, style=plot.style_line)
plot(orderBlockSell, "Order Block Sell", color=color.red, linewidth=2, style=plot.style_line)


Có liên quan

Thêm nữa