Chiến lược giao dịch động lực và khối lượng

Tác giả:ChaoZhang, Ngày: 2023-12-19 15:37:16
Tags:

img

Tổng quan

Chiến lược này đưa ra quyết định mua và bán dựa trên chỉ số động lực và chỉ số khối lượng giao dịch của cổ phiếu. Nó mua khi đà tăng giá cổ phiếu tăng tốc và khối lượng giao dịch tăng vọt, và bán khi đà giảm tăng tốc và khối lượng giao dịch tăng vọt. Chiến lược nắm bắt đà tăng giá ngắn hạn do hành vi đàn trên thị trường.

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

Lực lượng và thời gian của xu hướng thay đổi giá cổ phiếu quyết định đà. Chiến lược này tính toán sự thay đổi từ ngày trước gần đà đánh giá đà. Đà là tích cực khi giá tăng liên tục và âm khi giá giảm liên tục. Chiến lược cũng kết hợp chỉ số khối lượng giao dịch. Các tín hiệu mua và bán chỉ được kích hoạt khi khối lượng giao dịch cao hơn đáng kể so với trung bình động 20 ngày (trên ngưỡng).

Cụ thể, điều kiện mua là sự chéo chéo của chỉ số động lực trên 0, với khối lượng giao dịch lớn hơn 2 lần so với mức trung bình 20 ngày. Điều kiện bán là ngược lại. Sau khi mua, mục tiêu lợi nhuận được đặt ở mức 0,8 lần giá nhập cảnh và mức dừng lỗ là 0,5 lần. Mục tiêu lợi nhuận và mức dừng lỗ sau khi bán được đảo ngược.

Ưu điểm

Lợi thế lớn nhất là nắm bắt xu hướng thị trường ngắn hạn và hành vi đàn. Khi giá cổ phiếu tăng hoặc giảm liên tục, nhiều nhà đầu tư bán lẻ và tổ chức sẽ theo động lực giá mạnh hơn để giao dịch. Điều này tạo ra xu hướng giá ngắn hạn tự củng cố. Chiến lược tạo ra lợi nhuận dư thừa bằng cách tận dụng tâm lý thị trường như vậy. So với các chiến lược theo dõi chỉ số thụ động, lợi nhuận dư thừa dự kiến của chiến lược này cao hơn.

Rủi ro

Thứ nhất, biến động giá ngắn hạn là không thể đoán trước. Có nguy cơ đảo ngược mạnh do các sự kiện đột ngột, không thể tránh hoàn toàn mặc dù dừng lỗ. Thứ hai, chất lượng dữ liệu của khối lượng giao dịch thay đổi. Khả năng thao túng không thể loại trừ hoàn toàn, làm biến dạng tín hiệu giao dịch. Thứ ba, phân tích giá và khối lượng đơn giản không thể kiểm soát chính xác xu hướng ngắn hạn. Những thay đổi cơ cấu lớn của thị trường có thể ảnh hưởng đến hiệu suất chiến lược.

Tăng cường

Có thể kết hợp nhiều nguồn dữ liệu hơn để cải thiện hiệu quả chiến lược. Ví dụ, khối lượng thảo luận cổ phiếu liên quan trên các nền tảng truyền thông xã hội có thể chỉ ra sự biến động giá trong tương lai. Dữ liệu này có thể cung cấp các tín hiệu vào và ra bổ sung. Các chỉ số cơ bản như tỷ lệ P / E và tỷ lệ P / B cũng có thể giúp xác minh tính bền vững của thay đổi giá và giảm các giao dịch sai.

Kết luận

Bằng cách nắm bắt sự thay đổi tích hợp trong động lực giá và khối lượng giao dịch, chiến lược này đánh giá xu hướng ngắn hạn và hành vi đàn. Những chiến lược định lượng dựa trên dữ liệu lớn và tài chính hành vi như vậy có thể mang lại lợi nhuận dự kiến cao hơn so với các chiến lược truyền thống. Nhưng rủi ro cần phải được thừa nhận và phòng ngừa. Các thông số đầu vào đòi hỏi tối ưu hóa liên tục để tiếp tục cải thiện kết quả giao dịch.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Momentum and Volume Bot', overlay=true)

// Define strategy parameters
profit_target_percent = input(0.8, title='Profit Target (%)')
stop_loss_percent = input(0.5, title='Stop Loss (%)')
volume_threshold = input(2, title='Volume Threshold')

// Calculate momentum
momentum = close - close[1]

// Calculate average volume
avg_volume = ta.sma(volume, 20)

// Buy condition
buy_condition = ta.crossover(momentum, 0) and volume > avg_volume * volume_threshold

// Sell condition
sell_condition = ta.crossunder(momentum, 0) and volume > avg_volume * volume_threshold

// Strategy logic
strategy.entry('Buy', strategy.long, when=buy_condition)
strategy.entry('Sell', strategy.short, when=sell_condition)

// Set profit target and stop loss
strategy.exit('Take Profit/Stop Loss', from_entry='Buy', profit=close * profit_target_percent / 100, loss=close * stop_loss_percent / 100)
strategy.exit('Take Profit/Stop Loss', from_entry='Sell', profit=close * profit_target_percent / 100, loss=close * stop_loss_percent / 100)

// Plotting
plotshape(series=buy_condition, title='Buy Signal', color=color.new(color.green, 0), style=shape.triangleup, size=size.small)
plotshape(series=sell_condition, title='Sell Signal', color=color.new(color.red, 0), style=shape.triangledown, size=size.small)



Thêm nữa