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

Chiến lược giao dịch vàng VWAP MACD SMO

Tác giả:ChaoZhang, Ngày: 2023-10-20 16:23:33
Tags:

img

Tổng quan

Chiến lược giao dịch vàng VWAP MACD SMO là một chiến lược hoàn chỉnh được thiết kế cho thị trường vàng bằng cách sử dụng biểu đồ khung thời gian 12 giờ. Nó kết hợp VWAP hàng tháng, dao động SMO và biểu đồ MACD để xác định các cơ hội giao dịch trên thị trường vàng.

Chiến lược logic

Chiến lược này sử dụng VWAP hàng tháng như là chỉ số xu hướng chính. VWAP đại diện cho giá giao dịch trung bình, và hàng tháng có nghĩa là khoảng thời gian để tính VWAP là tháng trước. Nếu mức đóng hiện tại trên VWAP hàng tháng, nó chỉ ra xu hướng tăng hiện tại; nếu mức đóng dưới VWAP hàng tháng, điều đó có nghĩa là xu hướng giảm.

Trình dao động SMO được sử dụng để xác định tình hình mua quá mức và bán quá mức hiện tại. Nó bao gồm một thành phần chu kỳ dài và một thành phần chu kỳ ngắn. Khi dao động trên 0, nó chỉ ra điều kiện mua quá mức, và khi dưới 0, nó đại diện cho việc bán quá mức.

Các mô hình biểu đồ MACD có thể xác định hướng động lực. Khi cột phá vỡ, nó đại diện cho động lực đang tăng cường để đi dài; khi cột phá vỡ, nó có nghĩa là động lực đang suy yếu để xem xét đi ngắn.

Theo ba chỉ số này, các quy tắc cụ thể của chiến lược giao dịch có thể được thiết lập:

Nhập dài: khi đóng là trên VWAP hàng tháng, biểu đồ MACD bị phá vỡ và dao động SMO trên 0. Nhập ngắn: khi đóng dưới VWAP hàng tháng, biểu đồ MACD bị phá vỡ và dao động SMO dưới 0.

Lợi nhuận và dừng lỗ được thiết lập dựa trên tỷ lệ phần trăm đầu vào.

Phân tích lợi thế

Chiến lược kết hợp nhiều khung thời gian và chỉ số để xác định hiệu quả hướng và sức mạnh xu hướng, với những lợi thế sau:

  1. VWAP hàng tháng có thể xác định hướng xu hướng chính để tránh giao dịch ngược xu hướng.
  2. Biểu đồ MACD có thể nắm bắt sự thay đổi động lực một cách kịp thời.
  3. Máy dao động SMO đánh giá các điều kiện mua quá mức và bán quá mức, điều này hữu ích để vào các điểm đảo ngược tiềm năng.
  4. Kết hợp nhiều chỉ số có thể xác minh lẫn nhau và cải thiện độ tin cậy tín hiệu.
  5. Có thể tùy chỉnh tỷ lệ lợi nhuận và dừng lỗ để kiểm soát rủi ro.

Phân tích rủi ro

Mặc dù chiến lược được thiết kế hợp lý, vẫn có một số rủi ro cần lưu ý:

  1. VWAP rất nhạy cảm với whipsaws, có thể tạo ra tín hiệu sai.
  2. Cài đặt các thông số MACD không chính xác làm tăng xác suất đột phá sai.
  3. Các thông số SMO không chính xác cũng có thể dẫn đến đánh giá sai về các khu vực mua quá mức và bán quá mức.
  4. Cài đặt lợi nhuận và dừng lỗ quá rộng không thể kiểm soát hiệu quả lỗ đơn.

Để kiểm soát các rủi ro trên, các thông số VWAP và MACD nên được tối ưu hóa một cách hợp lý mà không có phạm vi quá rộng. Ngoài ra, tỷ lệ lợi nhuận và dừng lỗ không nên quá cao và lỗ đơn nên được kiểm soát khoảng 3%.

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

Chiến lược cũng có thể được tối ưu hóa trong các khía cạnh sau:

  1. Thêm xác nhận khối lượng, chẳng hạn như việc phá vỡ khối lượng của MA.
  2. Bao gồm các chỉ số biến động như ATR để điều chỉnh kích thước vị trí dựa trên biến động thị trường.
  3. Thêm cơ chế làm sáng ở mức cao để tránh mất lợi nhuận.
  4. Kiểm tra các chiến lược lấy lợi nhuận và dừng lỗ khác nhau, chẳng hạn như dừng lỗ, dừng lỗ thích nghi vv.
  5. Thêm mô-đun xác minh mô hình để lọc các tín hiệu bất thường.

Kết luận

Chiến lược SMO VWAP MACD vàng kết hợp nhiều chỉ số để xác định xu hướng và điều kiện mua quá mức / bán quá mức, có thể nắm bắt hiệu quả các cơ hội trung hạn đến dài hạn trong vàng. Mặc dù có một số rủi ro, chúng có thể được kiểm soát thông qua tối ưu hóa tham số và quản lý rủi ro. Chiến lược có khả năng mở rộng rất mạnh và có thể được tối ưu hóa theo mô-đun dựa trên nhu cầu thực tế. Đây là một hệ thống giao dịch xứng đáng theo dõi dài hạn.


/*backtest
start: 2023-09-19 00:00:00
end: 2023-10-19 00:00:00
period: 4h
basePeriod: 15m
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("VWAP Gold strategy", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 10000, calc_on_every_tick = true, commission_type = strategy.commission.percent, commission_value = 0.005)


source = input(low)


//vwap monthly
timeframeM = time("M")
beginningM = na(timeframeM[1]) or timeframeM > timeframeM[1]

sumsourceM = source * volume
sumVolM = volume
sumsourceM := beginningM ? sumsourceM : sumsourceM + sumsourceM[1]
sumVolM := beginningM ? sumVolM : sumVolM + sumVolM[1]
vwapMonthly= sumsourceM / sumVolM

//macd
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
src = input(title="Source", type=input.source, defval=close)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)


fast_ma = ema(src, fast_length)
slow_ma = ema(src, slow_length)
macd = fast_ma - slow_ma
signal =  ema(macd, signal_length)
hist = macd - signal


//SMO
longlen = input(22, minval=1, title="Long Length SMO")
shortlen = input(6, minval=1, title="Short Length SMO")
siglen = input(5, minval=1, title="Signal Line Length SMO")
erg = tsi(close, shortlen, longlen)
sig = ema(erg, siglen)
osc = erg - sig


shortCondition =  close < vwapMonthly and hist < hist[1] and osc < 0
longCondition =  close > vwapMonthly and hist> hist[1] and osc > 0

tplong=input(0.085, step=0.005, title="Take profit % for long")
sllong=input(0.03, step=0.005, title="Stop loss % for long")
tpshort=input(0.05, step=0.005, title="Take profit % for short")
slshort=input(0.025, step=0.005, title="Stop loss % for short")

strategy.entry("long",1,when=longCondition)
strategy.entry("short",0,when=shortCondition)

strategy.exit("short_tp/sl", "long", profit=close * tplong / syminfo.mintick, loss=close * sllong / syminfo.mintick, comment='LONG EXIT',  alert_message = 'closeshort')
strategy.exit("short_tp/sl", "short", profit=close * tpshort / syminfo.mintick, loss=close * slshort / syminfo.mintick, comment='SHORT EXIT',  alert_message = 'closeshort')




Thêm nữa