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

Chiến lược mua giá và khối lượng

Tác giả:ChaoZhang, Ngày: 2024-05-17 14:54:13
Tags:SMA

img

Tổng quan

Chiến lược mua đột phá giá và khối lượng là một chiến lược giao dịch được thiết kế để xác định các cơ hội mua bằng cách phát hiện đột phá giá và khối lượng đồng thời trên một phạm vi cụ thể của nến. Chiến lược đầu tiên lấy số lượng nến cụ thể làm cửa sổ kiểm tra cho cả giá và khối lượng. Các giá trị này được sử dụng làm điểm chuẩn để xác định điều kiện đột phá. Một giao dịch được bắt đầu khi cả giá đóng cửa và khối lượng giao dịch vượt quá các giá trị tối đa được quan sát trong cửa sổ đã xác định trước. Giá phải trên một đường trung bình động được chỉ định, phục vụ như là chỉ số xu hướng, đảm bảo rằng tất cả các giao dịch phù hợp với xu hướng thị trường hiện hành.

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

  1. Đặt thời gian đột phá giá và thời gian đột phá khối lượng làm cửa sổ kiểm tra.
  2. Nhận giá cao nhất và giá thấp nhất trong thời gian phá vỡ giá.
  3. Nhận khối lượng giao dịch cao nhất trong thời gian phá vỡ khối lượng.
  4. Nếu giá đóng cửa cao hơn giá cao nhất của giai đoạn trước, khối lượng giao dịch cao hơn khối lượng giao dịch cao nhất của giai đoạn trước, giá đóng cửa cao hơn mức trung bình di chuyển đơn giản (SMA) của chiều dài đường xu hướng, và hiện không có giao dịch mở, và hướng lệnh không được đặt thành ngắn, sau đó bắt đầu mua dài.
  5. Nếu giá đóng thấp hơn SMA của chiều dài đường xu hướng trong 5 ngày liên tiếp, đóng tất cả các vị trí dài.
  6. Nếu giá đóng là thấp hơn giá thấp nhất của giai đoạn trước, khối lượng giao dịch cao hơn khối lượng giao dịch cao nhất của giai đoạn trước, giá đóng thấp hơn SMA của chiều dài đường xu hướng, và hiện không có giao dịch mở, và hướng lệnh không được thiết lập để dài, sau đó bắt đầu đi ngắn.
  7. Nếu giá đóng là cao hơn SMA của chiều dài đường xu hướng trong 5 ngày liên tiếp, đóng tất cả các vị trí ngắn.

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

  1. Sử dụng cả sự đột phá giá và khối lượng như tín hiệu mua và bán có thể xác nhận tốt hơn những thay đổi xu hướng.
  2. Kiểm tra xem giá có cao hơn hoặc thấp hơn SMA dài hạn trước khi mở một vị trí đảm bảo rằng giao dịch phù hợp với xu hướng thị trường chính.
  3. Đặt giá đóng vượt qua SMA trong nhiều ngày liên tiếp như tín hiệu đóng có thể nắm bắt hiệu quả kết thúc xu hướng.
  4. Thích hợp cho các tài sản biến động cao như Bitcoin và Ethereum, nó có thể tận dụng lợi thế của những thay đổi đột ngột về giá thị trường và khối lượng giao dịch để kiếm lợi nhuận.

Rủi ro chiến lược

  1. Trong các thị trường có biến động thấp hoặc không có xu hướng rõ ràng, chiến lược này có thể dẫn đến giao dịch thường xuyên, do đó làm tăng chi phí giao dịch.
  2. Đối với các thị trường có biến động thấp hơn, chẳng hạn như chỉ số S&P 500, tác động của chiến lược này có thể không đáng kể như trên thị trường tiền điện tử.
  3. Chiến lược này có thể tạo ra ít tín hiệu giao dịch hơn trong khung thời gian dài hơn, vì hầu hết các giao dịch có xu hướng có thời gian giữ dài hơn.

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

  1. Điều chỉnh độ dài của thời gian đột phá giá và thời gian đột phá khối lượng theo các đặc điểm thị trường khác nhau để thích nghi với các đặc điểm biến động của các tài sản khác nhau.
  2. Cố gắng sử dụng các chỉ số xác nhận xu hướng khác, chẳng hạn như đường trung bình động theo cấp số nhân, MACD, v.v., để cải thiện độ chính xác của phán đoán xu hướng.
  3. Kết hợp các biện pháp quản lý rủi ro vào chiến lược, chẳng hạn như thiết lập mức dừng lỗ và điều chỉnh động các vị trí để giảm rủi ro của một giao dịch duy nhất.
  4. Đối với các giao dịch có thời gian nắm giữ dài hơn, hãy xem xét thêm một chiến lược dừng lại để bảo vệ tốt hơn lợi nhuận đã đạt được.

Tóm lại

Chiến lược mua đột phá giá và khối lượng là một chiến lược theo xu hướng phù hợp với các thị trường biến động cao. Bằng cách xem xét cả đột phá giá và khối lượng, và kết hợp SMA dài hạn như một bộ lọc xu hướng, chiến lược này có thể nắm bắt tốt hơn các cơ hội giao dịch ở các thị trường mạnh. Tuy nhiên, chiến lược này có thể hoạt động kém ở các thị trường không có xu hướng rõ ràng hoặc biến động thấp và có thể phải đối mặt với rủi ro giao dịch thường xuyên. Do đó, trong các ứng dụng thực tế, cần phải tối ưu hóa và điều chỉnh chiến lược phù hợp theo các đặc điểm thị trường khác nhau và phong cách giao dịch cá nhân để cải thiện sự ổn định và lợi nhuận của nó.


/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tradedots

//@version=5
strategy("Price and Volume Breakout Buy Strategy [TradeDots]", overlay=true, initial_capital = 10000, default_qty_type = strategy.percent_of_equity, default_qty_value = 70, commission_type = strategy.commission.percent, commission_value = 0.01)

input_price_breakout_period = input.int(60, "Price Breakout Period")
input_volume_breakout_period = input.int(60, "Volume Breakout Period")
input_trendline_legnth = input.int(200, "Trendline Length")
input_order_direction = input.string("Long", options = ["Long", "Short", "Long and Short"], title = "Order Direction")

price_highest = ta.highest(input_price_breakout_period)
price_lowest = ta.lowest(input_price_breakout_period)
volume_highest = ta.highest(volume, input_volume_breakout_period)

// Long Orders
if close > price_highest[1] and volume > volume_highest[1] and close > ta.sma(close, input_trendline_legnth) and strategy.opentrades == 0 and input_order_direction != "Short"
    strategy.entry("Long", strategy.long)
    // line.new(bar_index[input_price_breakout_period], price_highest[1], bar_index, price_highest[1], color = #9cff87, width = 2)
    // label.new(bar_index,low, "🟢 Breakout Buy", style = label.style_label_up, color = #9cff87)

// Close when price is below moving average for 5 consecutive days
if close < ta.sma(close, input_trendline_legnth) and close[1] < ta.sma(close, input_trendline_legnth) and close[2] < ta.sma(close, input_trendline_legnth) and close[3] < ta.sma(close, input_trendline_legnth) and close[4] < ta.sma(close, input_trendline_legnth) and strategy.opentrades.size(strategy.opentrades - 1) > 0
    strategy.close("Long")
    // label.new(bar_index, high, "🔴 Close Position", style = label.style_label_down, color = #f9396a, textcolor = color.white)

// Short Orders
if close < price_lowest[1] and volume > volume_highest[1] and close < ta.sma(close, input_trendline_legnth) and strategy.opentrades == 0 and input_order_direction != "Long"
    strategy.entry("Short", strategy.short)
    // line.new(bar_index[input_price_breakout_period], price_lowest[1], bar_index, price_lowest[1], color = #f9396a, width = 2)
    // label.new(bar_index,high , "🔴 Breakout Sell", style = label.style_label_down, color = #f9396a, textcolor = color.white)

// Close when price is above moving average for 5 consecutive days
if close > ta.sma(close, input_trendline_legnth) and close[1] > ta.sma(close, input_trendline_legnth) and close[2] > ta.sma(close, input_trendline_legnth) and close[3] > ta.sma(close, input_trendline_legnth) and close[4] > ta.sma(close, input_trendline_legnth) and strategy.opentrades.size(strategy.opentrades - 1) < 0
    strategy.close("Short")
    // label.new(bar_index, low, "🟢 Close Position", style = label.style_label_up, color = #9cff87)

plot(ta.sma(close, input_trendline_legnth), color = color.white, linewidth = 2)
plotcandle(open, high, low, close, title='Candles', color = (close > ta.sma(close, input_trendline_legnth) ? #9cff87 : #f9396a), wickcolor=(close > ta.sma(close, input_trendline_legnth) ? #9cff87 : #f9396a), force_overlay = true)



Có liên quan

Thêm nữa