Dựa trên chiến lược theo dõi đường trung bình động kép


Ngày tạo: 2024-02-27 14:49:58 sửa đổi lần cuối: 2024-02-27 14:49:58
sao chép: 0 Số nhấp chuột: 641
1
tập trung vào
1617
Người theo dõi

Dựa trên chiến lược theo dõi đường trung bình động kép

Tổng quan

Chiến lược theo dõi đường hai chiều là một chiến lược theo dõi xu hướng dựa trên đường trung bình di chuyển. Nó tính toán các đường trung bình di chuyển của các chu kỳ khác nhau để đánh giá hướng xu hướng để phát tín hiệu giao dịch. Khi đi qua đường trung bình di chuyển ngắn hạn, hãy làm nhiều hơn; Khi đi qua đường trung bình di chuyển dài hạn dưới đường trung bình di chuyển ngắn hạn, hãy làm trống.

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

Chiến lược Binary Equilibrium theo dõi xu hướng bằng cách tính toán đường trung bình di chuyển đơn giản (SMA) 14 chu kỳ và 28 chu kỳ. Cụ thể, nó tính toán đường trung bình 14 chu kỳ và đường trung bình 28 chu kỳ của giá đóng cửa vào cuối mỗi chu kỳ.

Sau khi vào vị trí, nó sẽ kiểm soát rủi ro bằng cách thiết lập điểm dừng và dừng lỗ. Số điểm dừng và dừng lỗ được chuyển đổi thành giá bằng các tham số được nhập. Ngoài ra, nó cũng vẽ đường dừng, đường dừng và đường tham chiếu giá trung bình vào biểu đồ để dễ dàng đánh giá trực quan lợi nhuận và rủi ro của vị trí.

Phân tích lợi thế

Phương pháp này có những lợi thế sau:

  1. Nó hoạt động đơn giản và dễ thực hiện.
  2. Theo xu hướng, khả năng rút lui thấp hơn.
  3. Bạn có thể điều chỉnh tần số giao dịch bằng cách điều chỉnh các tham số chu kỳ.
  4. Bạn có thể tùy chỉnh các điểm dừng để kiểm soát rủi ro.

Phân tích rủi ro

Tuy nhiên, chiến lược này cũng có một số rủi ro:

  1. Khi một sự kiện bất ngờ làm gián đoạn xu hướng thị trường, có thể xảy ra tổn thất lớn.
  2. Nếu thiết lập điểm dừng quá nhỏ, nó có thể dừng quá sớm.
  3. Nếu thiết lập điểm dừng quá lớn, nó có thể mở rộng phạm vi lỗ.
  4. Tần suất giao dịch có thể quá cao hoặc quá thấp, ảnh hưởng đến hiệu quả tài chính.

Để kiểm soát các rủi ro trên, có thể tối ưu hóa từ:

  1. Kết hợp các chỉ số biến động để xác định điểm dừng lỗ.
  2. Tối ưu hóa các tham số chu kỳ của đường trung bình di chuyển.
  3. Thêm bộ lọc xu hướng để tránh tín hiệu giả ở cuối xu hướng.

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

Chiến lược theo dõi hai đường đều có thể được tối ưu hóa theo các khía cạnh sau:

  1. Tăng chỉ số biến động, động điều chỉnh điểm dừng. Ví dụ, kết hợp với chỉ số ATR, mở rộng điểm dừng khi thị trường biến động, tránh dừng quá sớm.

  2. Tối ưu hóa các tham số chu kỳ trung bình di chuyển. Bạn có thể thử nghiệm nhiều kết hợp hơn, chọn chu kỳ thích hợp hơn để tạo ra tín hiệu giao dịch.

  3. Thêm bộ lọc xu hướng. Ví dụ, thêm các chỉ số như MACD, DMI, để tránh tín hiệu giả xuất hiện vào cuối xu hướng và giảm giao dịch không cần thiết.

  4. Thêm mô hình học máy. Sử dụng mô hình học sâu như LSTM, GRU để dự đoán xu hướng giá, thay thế cho quy tắc đường trung bình truyền thống, có thể có hiệu quả tốt hơn.

  5. Giao dịch đa giống. Sử dụng chiến lược này cho nhiều giống hơn, sử dụng tính không liên quan để giảm tổng thể.

Tóm tắt

Phương pháp Binary Equilibrium Following là một chiến lược xu hướng đơn giản và thực tế. Nó đi theo xu hướng, có ít rủi ro rút lui và dễ thực hiện. Chúng ta có thể tối ưu hóa chiến lược này bằng cách điều chỉnh các tham số chu kỳ, thiết lập điểm dừng lỗ và thêm các chỉ số đánh giá xu hướng, để nó có thể thích ứng với nhiều môi trường thị trường hơn và có được lợi nhuận đầu tư ổn định hơn.

Mã nguồn chiến lược
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
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/
// © coinilandBot
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © adolgov

// @description
// 

//@version=4
strategy("coiniland  copy trading platform", overlay=true)

// random entry condition

longCondition = crossover(sma(close, 14), sma(close, 28))
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

shortCondition = crossunder(sma(close, 14), sma(close, 28))
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)

moneyToSLPoints(money) =>
    strategy.position_size !=0 ? (money / syminfo.pointvalue / abs(strategy.position_size)) / syminfo.mintick : na

p = moneyToSLPoints(input(200, title = "Take Profit $$"))
l = moneyToSLPoints(input(100, title = "Stop Loss $$"))
strategy.exit("x", profit = p, loss = l)

// debug plots for visualize SL & TP levels
pointsToPrice(pp) =>
    na(pp) ? na : strategy.position_avg_price + pp * sign(strategy.position_size) * syminfo.mintick
    
pp = plot(pointsToPrice(p), style = plot.style_linebr )
lp = plot(pointsToPrice(-l), style = plot.style_linebr )
avg = plot( strategy.position_avg_price, style = plot.style_linebr )
fill(pp, avg, color = color.green)
fill(avg, lp, color = color.red)