Chiến lược trung bình động lợi thế xác nhận kép


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

Chiến lược trung bình động lợi thế xác nhận kép

Tổng quan

Chiến lược này là một chiến lược theo dõi xu hướng chỉ làm nhiều đầu, nó tạo ra tín hiệu giao dịch bằng cách xác nhận kép của chỉ số Aroon và đường trung bình di chuyển quay ngược tuyến tính. Chiến lược này được áp dụng cho giao dịch xu hướng đường dài và đường dài.

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

Chiến lược này sử dụng giao điểm giữa đường ray trên và đường ray dưới của chỉ số Aroon để xác định hướng xu hướng. Đường ray trên tạo ra tín hiệu mua khi đường ray trên phá vỡ đường ray dưới. Đường ray trên tạo ra tín hiệu bán khi đường ray trên phá vỡ đường ray trên. Để lọc các phá vỡ giả, chiến lược cũng giới thiệu đường trung bình chuyển động quay ngược tuyến tính LSMA như một tiêu chuẩn phán đoán phụ.

Cụ thể, các quy tắc tạo tín hiệu giao dịch của chiến lược là:

  1. Điều kiện tạo tín hiệu mua: đường ray trên phá vỡ đường ray dưới ((thực hiện xu hướng tăng) và giá đóng cửa ngày hôm đó cao hơn trung bình di chuyển LSMA ((giá đóng cửa đang trong xu hướng tăng)

  2. Điều kiện tạo ra tín hiệu bán: đường ray trên rơi xuống đường ray dưới ((Aroon chỉ số xác định hình thành xu hướng giảm) và giá đóng cửa hôm đó thấp hơn trung bình di chuyển LSMA ((giá đóng cửa đang trong xu hướng giảm)

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

  1. Sử dụng chỉ số Aroon để đánh giá xu hướng, tránh bị nhiễu bởi tiếng ồn
  2. Thêm trung bình di chuyển LSMA như một điều kiện lọc phụ để tránh phá vỡ giả tạo dẫn đến giao dịch không cần thiết
  3. Chỉ cần làm nhiều đầu, phù hợp với đặc điểm tăng dài hạn của thị trường lớn, tránh rủi ro mất mát không giới hạn do thâm hụt
  4. Thiết lập tham số chính sách đơn giản, dễ thực hiện

Rủi ro chiến lược

  1. Các chiến lược chỉ là thủ đoạn, khó kiếm được lợi nhuận trong thời kỳ khủng hoảng
  2. Cài đặt tham số cố định có thể dẫn đến rủi ro quá phù hợp
  3. Khó khăn trong việc đảo ngược xu hướng và mất thời gian

Để phòng ngừa rủi ro, bạn có thể thiết lập chiến lược dừng lỗ, hoặc kết hợp với các chỉ số khác để xác định thời gian đảo ngược xu hướng, dừng lỗ kịp thời.

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

  1. Bạn có thể xem xét tham gia vào các cơ hội giao dịch ngoại hối và có thể kiếm lợi nhuận trong thời gian giảm giá.
  2. Có thể kiểm tra hiệu quả của các chỉ số với các tham số chu kỳ khác nhau
  3. Có thể thêm mô-đun học máy để tối ưu hóa tự động các tham số

Tóm tắt

Chiến lược này nói chung là một chiến lược theo dõi xu hướng xác nhận kép đơn giản và thực tế hơn. Nó sử dụng Aroon để xác định hướng xu hướng và lọc tiếng ồn LSMA một cách đơn giản và trực tiếp, có thể đạt được hiệu quả tốt khi các tham số được thiết lập đúng. Chiến lược này phù hợp với đường dài trung bình và tránh bị nhiễu bởi tiếng ồn thị trường ngắn hạn.

Mã nguồn chiến lược
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © exlux99

//@version=4

strategy(title = "Aroon Strategy long only", overlay = true,  pyramiding=1,initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.1)

//Time
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2010, title = "From Year", minval = 1970)
 //monday and session 
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)

startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true

//INPUTS

length = input(15, minval=1, title="Aroon Legnth")
upper = 100 * (highestbars(high, length+1) + length)/length
lower = 100 * (lowestbars(low, length+1) + length)/length

lengthx = input(title="Length LSMA", type=input.integer, defval=20)
offset = 0//input(title="Offset", type=input.integer, defval=0)
src = input(close, title="Source")
lsma = linreg(src, lengthx, offset)


long = crossover(upper,lower) and close > lsma
longexit = crossunder(upper,lower) and close < lsma

if(time_cond)
    strategy.entry("long",1,when=long)
    strategy.close("long",when=longexit)