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

Noro đã thay đổi chiến lược dừng lỗ trung bình di chuyển

Tác giả:ChaoZhang, Ngày: 2024-01-30 15:49:34
Tags:

img

Tổng quan

Noro Shifted Moving Average Stop Loss Strategy là một chiến lược theo xu hướng. Nó tính toán đường trung bình động đơn giản 3 ngày và đặt một đường dài phía trên và một đường dừng lỗ bên dưới ở tỷ lệ phần trăm nhất định.

Chiến lược logic

Cốt lõi của chiến lược này là tính toán đường trung bình di chuyển đơn giản 3 ngày ma. Sau đó, một tỷ lệ phần trăm lo được thêm trên ma để có được đường dài cho các mục nhập. Khi giá vượt qua trên đường dài, các vị trí dài được mở. Dưới ma, một tỷ lệ phần trăm sl được trừ để có được đường dừng lỗ dừng. Khi giá giảm xuống dưới mức dừng, các vị trí được dừng lại.

Các quy tắc cụ thể là:

  1. Tính toán trung bình di chuyển đơn giản 3 ngày
  2. Dài đường dài = ma + ma * lo%
  3. Tham gia dòng lợi nhuận = Giá trung bình hiện tại + Giá trung bình hiện tại * tp%
  4. Đường dừng lỗ = Giá trung bình hiện tại - Giá trung bình hiện tại * sl%

Điều này xây dựng một chiến lược theo xu hướng thiết lập các đường nhập cảnh, lấy lợi nhuận và dừng lỗ dựa trên điểm chuẩn ma và tỷ lệ phần trăm có thể cấu hình.

Phân tích lợi thế

Lợi thế lớn nhất của chiến lược này là nó có thể tự động theo dõi xu hướng. Bằng cách đi dài để bắt xu hướng tăng và ngắn cho xu hướng giảm mà không cần nhận dạng mô hình, nó bắt xu hướng. Thêm lợi nhuận và dừng lỗ cho phép nó tự động dừng lại khi xu hướng kết thúc để hạn chế giảm.

Một lợi thế khác là điều chỉnh tham số linh hoạt. Bằng cách thay đổi tỷ lệ phần trăm cho dài, lấy lợi nhuận và dừng lỗ, kích thước vị trí và khoảng cách dừng lỗ có thể dễ dàng được kiểm soát.

Phân tích rủi ro

Rủi ro lớn nhất của chiến lược này là trượt. Vì lệnh dừng được sử dụng để dừng lỗ, trong một thị trường giảm nhanh, giá có thể giảm xuống dưới mức dừng lỗ trước khi các lệnh được thực hiện. Điều này có thể dẫn đến tổn thất thảm khốc.

Một rủi ro khác xuất phát từ các tham số được thiết lập kém gây ra quá nhiều lần nhập và xuất, làm tăng chi phí hoa hồng.

Hướng dẫn tối ưu hóa

Chiến lược có thể được tối ưu hóa theo những cách sau:

  1. Sử dụng lệnh giới hạn thay vì lệnh dừng để dừng lỗ để tránh rủi ro trượt

  2. Thêm cài đặt kích thước vị trí để mở rộng vào và ra một cách trơn tru, giảm tần suất giao dịch

  3. Thêm các bộ lọc phát hiện xu hướng để tránh tín hiệu sai trong các thị trường không có xu hướng

  4. Tối ưu hóa cài đặt tham số để tìm kết hợp tối ưu

Kết luận

Noro Shifted Moving Average Stop Loss Strategy là một chiến lược đơn giản và thực tế theo xu hướng. Nó có thể tự động theo dõi xu hướng với rủi ro kiểm soát lợi nhuận và dừng lỗ. Những rủi ro lớn nhất đến từ sự trượt tiềm năng và giao dịch quá thường xuyên từ tối ưu hóa tham số kém. Bằng cách cải thiện kỹ thuật dừng lỗ và tối ưu hóa các tham số, chiến lược có thể trở nên mạnh mẽ hơn.


/*backtest
start: 2023-12-30 00:00:00
end: 2024-01-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//2019
//Noro

//@version=4
strategy("Stop-loss", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
lo = input(-5.0, title = "Long-line, %")
tp = input(5.0, title = "Take-profit")
sl = input(2.0, title = "Stop-loss")

//SMA
ma = sma(ohlc4, 3)
long = ma + ((ma / 100) * lo)

//Orders
avg = strategy.position_avg_price
if ma > 0
    strategy.entry("Long", strategy.long, limit = long)
    strategy.entry("Take", strategy.short, 0, limit = avg + ((avg / 100) * tp))
    strategy.entry("Stop", strategy.short, 0, stop = avg - ((avg / 100) * sl))
    
//Cancel order
if strategy.position_size == 0
    strategy.cancel("Take")
    strategy.cancel("Stop")

//Lines
plot(long, offset = 1, color = color.black, transp = 0)
take = avg != 0 ? avg + ((avg / 100) * tp) : long + ((long / 100) * tp)
stop = avg != 0 ? avg - ((avg / 100) * sl) : long - ((long / 100) * sl)
takelinecolor = avg == avg[1] and avg != 0 ? color.lime : na
stoplinecolor = avg == avg[1] and avg != 0 ? color.red : na
plot(take, offset = 1, color = takelinecolor, linewidth = 3, transp = 0)
plot(stop, offset = 1, color = stoplinecolor, linewidth = 3, transp = 0)

Thêm nữa