Chiến lược đột phá đường trung bình động


Ngày tạo: 2023-11-16 10:47:41 sửa đổi lần cuối: 2023-11-16 10:47:41
sao chép: 1 Số nhấp chuột: 772
1
tập trung vào
1617
Người theo dõi

Chiến lược đột phá đường trung bình động

Tổng quan

Chiến lược này là một chiến lược giao dịch đường ngắn dựa trên các đợt phá vỡ động lực và đường trung bình. Nó kết hợp nhiều chỉ số như đường trung bình di chuyển, hình dạng đường K, khối lượng giao dịch và biến động để xác định các cơ hội định hướng có động lực phá vỡ để nắm bắt xu hướng của đường ngắn hơn.

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

  1. Sử dụng EMA 3 ngày làm đường trung bình tham chiếu, khi giá đóng cửa giảm xuống dưới đường trung bình, thị trường được coi là đang có xu hướng giảm ((Cond01) }}.

  2. Giá mở cửa cao hơn giá OHLC của ngày trước ((giá mở cửa, giá cao nhất, giá thấp nhất, giá đóng cửa trung bình), cho thấy có giao dịch mua bán đẩy giá mở cửa cao hơn, là tín hiệu tăng ((Cond02)

  3. volume nhỏ hơn volume ngày trước, biểu thị động lực không đủ, thuận lợi cho đột phá định hướng ((Cond03) ).

  4. Giá đóng cửa đã vượt qua phạm vi giá của ngày trước, cho thấy có một sự phá vỡ ((Cond04) }}.

  5. Khi 4 điều kiện trên được đáp ứng cùng một lúc, hãy mở thêm vị trí.

  6. Điều kiện dừng lỗ: Khi mở vị trí vượt quá 10 đường K hoặc khi vị trí đã thu được lợi nhuận đạt 5 lần, vị trí thanh toán là Exits.

Chiến lược này tổng hợp nhiều chỉ số để xác định hướng đột phá của thị trường, nắm bắt xu hướng giá trong thời gian ngắn, có xu hướng mạnh mẽ hơn. Nhưng mỗi điều kiện chỉ xem xét thông tin từ 1 đến 3 đường K, có khả năng đánh giá xu hướng dài hạn yếu hơn.

Phân tích lợi thế

  1. Sử dụng nhiều chỉ số tổng hợp, có thể lọc các đột phá giả và xác định các đột phá có hiệu quả.

  2. Động lực không đủ để giá tạo ra đột phá theo hướng và bùng nổ xu hướng, có thể nắm bắt cơ hội theo hướng rõ ràng hơn.

  3. Có nhiều giao dịch, phù hợp với hoạt động ngắn hạn, có thể nhanh chóng khóa lợi nhuận nhỏ mỗi lần.

  4. Các thiết lập dừng lỗ và dừng lại là hợp lý, có thể kiểm soát hiệu quả các tổn thất và rủi ro đơn lẻ.

Phân tích rủi ro

  1. Có nhiều vị thế mở cùng một lúc, có nguy cơ gia tăng.

  2. Cài đặt tham số chỉ số đơn có thể quá cứng nhắc, bạn có thể giới thiệu tham số thích ứng.

  3. Có khả năng đột phá sẽ thất bại, có thể tạo ra một lỗ hổng.

  4. Những người này chỉ chú ý đến thông tin ngắn hạn và không nắm được xu hướng lớn.

  5. Điểm dừng quá gần, có thể mở rộng đến 20 đến 30 đường K.

Hướng tối ưu hóa

  1. Tham gia phán đoán xu hướng, tránh mở vị trí ngược. Bạn có thể xem xét thêm phán đoán đường trung bình dài hạn, chỉ mở vị trí theo hướng xu hướng lớn.

  2. Cài đặt tham số tối ưu hóa. Bạn có thể thử nghiệm và tối ưu hóa các tham số EMA, đột phá để phù hợp hơn với các tình trạng thị trường khác nhau. Bạn cũng có thể đặt tham số thích ứng để chỉ số tự động điều chỉnh chu kỳ, v.v.

  3. Tối ưu hóa điều kiện. Bạn có thể xem xét thêm các chỉ số phụ trợ khác, chẳng hạn như dòng năng lượng, băng tần Brin, RSI, v.v., để xác minh tính hiệu quả của đột phá, giảm đột phá giả.

  4. Kiểm tra đầy đủ, kiểm tra đường cong lợi nhuận trong các tình huống cực đoan. Có thể kiểm tra lại các tình huống trong quá khứ, kiểm tra chiến lược trong các tình huống cực đoan như giảm mạnh, chấn động.

  5. Tối ưu hóa cơ chế dừng lỗ. Bạn có thể xem xét các phương pháp như theo dõi dừng lỗ, dừng phần trăm, dừng tự điều chỉnh, để dừng lỗ linh hoạt hơn.

Tóm tắt

Chiến lược này tích hợp nhiều chỉ số như EMA, khối lượng giao dịch, biến động, xác định cơ hội có khả năng đột phá trong thời gian ngắn, thuộc chiến lược đột phá ngắn hạn điển hình. Nó trả lại thường xuyên, hoạt động nhanh chóng, có thể nhanh chóng khóa lợi nhuận ngắn hạn.

Mã nguồn chiến lược
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Free Strategy #01 (ES / SPY)", overlay=true)

// Inputs
Quantity = input(1, minval=1, title="Quantity")
EmaPeriod = input(3, minval=1, title="EMA Period")
MaxProfitCloses = input(5, minval=1, title="Max Profit Close")
MaxBars = input(10, minval=1, title="Max Total Bars")

// Misc Variables
src = close
BarsSinceEntry = 0
MaxProfitCount = 0
Ema = ema(close, EmaPeriod)
OHLC = (open + high + low + close) / 4.0

// Conditions
Cond00 = strategy.position_size == 0
Cond01 = close < Ema
Cond02 = open > OHLC
Cond03 = volume <= volume[1]
Cond04 = (close < min(open[1], close[1]) or close > max(open[1], close[1]))

// Update Exit Variables
BarsSinceEntry := Cond00 ? 0 : nz(BarsSinceEntry[1]) + 1
MaxProfitCount := Cond00 ? 0 : (close > strategy.position_avg_price and BarsSinceEntry > 1) ? nz(MaxProfitCount[1]) + 1 : nz(MaxProfitCount[1])

// Entries
strategy.entry(id="L1", long=true, qty=Quantity, when=(Cond00 and Cond01 and Cond02 and Cond03 and Cond04))
 
// Exits
strategy.close("L1", (BarsSinceEntry - 1 >= MaxBars or MaxProfitCount >= MaxProfitCloses))