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

SMA
Ngày tạo: 2024-05-17 14:54:13 sửa đổi lần cuối: 2024-05-17 14:54:13
sao chép: 2 Số nhấp chuột: 730
1
tập trung vào
1617
Người theo dõi

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

Tổng quan

Chiến lược mua phá giá là một chiến lược giao dịch được thiết kế để xác định cơ hội mua bằng cách phát hiện giá và khối lượng giao dịch phá vỡ cùng một lúc trong phạm vi biểu đồ được chỉ định. Chiến lược này trước tiên sử dụng một số lượng cụ thể của các đường dây làm cửa sổ kiểm tra giá và khối lượng giao dịch. Những giá trị này được sử dụng làm chuẩn mực để xác định các điều kiện phá vỡ.

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

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

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

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

Rủi ro chiến lược

  1. Trong trường hợp thị trường có ít biến động 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, làm tăng chi phí giao dịch.
  2. Đối với các thị trường ít biến động hơn, chẳng hạn như chỉ số S&P 500, hiệu quả của chiến lược này có thể không rõ ràng như trong 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 trong khung thời gian cao hơn vì hầu hết các giao dịch có xu hướng có thời gian nắm giữ dài hơn.

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

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

Tóm tắt

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

Mã nguồn chiến lược
/*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)