Chiến lược chỉ số động lực

Tác giả:ChaoZhang, Ngày: 23-11-16 15:47:13
Tags:

img

Tổng quan

Chiến lược này sử dụng đường trung bình động và chỉ số MACD để xác định xu hướng và động lực giá, kết hợp với các tín hiệu chéo để đưa ra quyết định giao dịch.

Chiến lược logic

Chiến lược này sử dụng một đường chéo trung bình di chuyển kép để tạo ra tín hiệu. Trung bình di chuyển nhanh có độ dài 12 ngày, trong khi trung bình di chuyển chậm có độ dài 26 ngày. Khi MA nhanh vượt qua trên MA chậm, một thập tự vàng được hình thành cho tín hiệu dài. Khi MA nhanh vượt qua dưới MA chậm, một thập tự chết được hình thành cho tín hiệu ngắn.

Đồng thời, chiến lược này sử dụng chỉ số MACD để đo đạc động lực. MACD được tính bằng cách trừ MA chậm (26-day EMA) từ MA nhanh (12-day EMA), và sau đó làm mịn bằng một đường tín hiệu (9-day EMA). Khi MACD vượt qua đường tín hiệu, nó cho thấy động lực tăng. Khi vượt dưới đường tín hiệu, nó cho thấy động lực giảm.

Chiến lược này xem xét cả tín hiệu chéo trung bình động và tín hiệu chỉ số MACD để đưa ra quyết định giao dịch.

Phân tích lợi thế

  1. Sử dụng các đường trung bình động kép kết hợp với MACD xem xét cả xu hướng giá và động lực, tránh bỏ lỡ cơ hội giao dịch.

  2. Các chiều dài trung bình di chuyển nhanh và chậm được thiết lập hợp lý để xác định xu hướng trung hạn. Các thông số MACD cũng là tiêu chuẩn để phát hiện đáng tin cậy sự thay đổi động lực.

  3. Việc hình dung đồ họa của các chỉ số làm cho các tín hiệu giao dịch rõ ràng và trực quan.

  4. Các thông số chiến lược linh hoạt để tối ưu hóa.

  5. Nó thực hiện theo xu hướng và có thể hưởng lợi từ các xu hướng theo hướng bền vững.

Phân tích rủi ro

  1. Sự chéo trung bình động đôi có thể chậm lại, trì hoãn tín hiệu nhập cảnh.

  2. MACD có thể cung cấp các tín hiệu sai thường xuyên, cần xác nhận giá.

  3. Các đường chéo chết trong xu hướng tăng có thể báo hiệu sự điều chỉnh, các đường dài hiện có không nên được thoát sớm.

  4. Các đường chéo vàng trong xu hướng giảm có thể báo hiệu sự phục hồi, các đường ngắn hiện có không nên được bảo hiểm sớm.

  5. Cần tuân thủ quản lý tiền tệ nghiêm ngặt, hạn chế kích thước vị trí để kiểm soát rủi ro.

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

  1. Tối ưu hóa các thông số MA bằng cách thử nghiệm các kết hợp thời gian khác nhau để cải thiện độ tin cậy chéo.

  2. Tối ưu hóa các thông số MACD bằng cách điều chỉnh EMA ngắn và dài và đường tín hiệu để giảm tín hiệu sai.

  3. Thêm các chỉ số khác như KDJ, BOLL để kết hợp để cải thiện độ chính xác tín hiệu.

  4. Tích hợp các chỉ số khối lượng để tránh sự đột phá sai.

  5. Backtest để tìm kết hợp tham số tối ưu dựa trên dữ liệu lịch sử.

  6. Thực hiện các chiến lược dừng lỗ để hạn chế nghiêm ngặt lỗ cho mỗi giao dịch và giảm rủi ro.

Tóm lại

Chiến lược này tích hợp hai đường chéo trung bình động và MACD cho giao dịch xu hướng. Tối ưu hóa các tham số và theo quản lý tiền thận trọng sẽ giúp đạt được lợi nhuận ổn định trong dài hạn. Nhưng cần tránh các tín hiệu sai bằng cách xác nhận với hành động giá. Tăng cường thêm có thể cải thiện hiệu suất chiến lược.


/*backtest
start: 2022-11-09 00:00:00
end: 2023-11-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Moving Average Convergence/Divergence MaCD Backesting", shorttitle="MACD Backtesting", precision = 6, pyramiding = 3, default_qty_type = strategy.percent_of_equity, currency = currency.USD, commission_type = strategy.commission.percent, commission_value = 0.10, initial_capital = 1000, default_qty_value = 100)
source = close
fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)

fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)

macd = fastMA - slowMA
signal = ema(macd, signalLength)
hist = macd - signal

plot(hist, color=red, style=histogram)
plot(macd, color=blue)
plot(signal, color=orange)

buy = crossover(macd,signal)
sell = crossunder(macd,signal)

plotshape(buy, "buy", shape.triangleup, color = olive , size = size.tiny, location  = location.bottom)
plotshape(sell, "sell", shape.triangledown, color = orange , size = size.tiny, location  = location.bottom)

if (buy)
    strategy.entry("Long Trigger", true)
if(sell)    
    strategy.entry("Short Trigger", false)
if (sell)    
    strategy.exit("Close Long Trigger", "Long Trigger")
if (buy)
    strategy.exit("Close Short Trigger", "Short Trigger")




Thêm nữa