Chiến lược dựa trên đường trung bình động và MACD


Ngày tạo: 2023-10-16 09:02:29 sửa đổi lần cuối: 2023-10-16 09:02:29
sao chép: 0 Số nhấp chuột: 1062
1
tập trung vào
1617
Người theo dõi

Tổng quan

Đây là một chiến lược giao dịch tiền tệ kỹ thuật số kết hợp một chỉ số đám mây khói và MACD. Nó sử dụng một chỉ số đám mây khói để xác định hướng xu hướng tổng thể và hỗ trợ vị trí kháng cự, sau đó kết hợp với MACD để xác định xu hướng và động lực ngắn hạn, tạo ra tín hiệu giao dịch.

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

Chiến lược này sử dụng đường chuyển đổi và đường chuẩn của một chỉ số đám mây khói để đánh giá xu hướng trung hạn, sử dụng chỉ số MACD để đánh giá xu hướng và động lực ngắn hạn.

Khi chuyển đổi trên đường đi qua đường viền là tín hiệu thị trường bò, giá trên mây là tín hiệu mạnh; khi chuyển đổi dưới đường đi qua đường viền là tín hiệu thị trường gấu, giá dưới mây là tín hiệu yếu.

MACDhistogram là tín hiệu động lượng đa đầu khi ở trên trục 0 và tín hiệu động lượng trống khi ở dưới trục 0 . Đường MACD là tín hiệu mua khi đi qua đường tín hiệu và đường tín hiệu đi qua đường tín hiệu.

Các quy tắc giao dịch cụ thể như sau:

Tín hiệu nhập cảnh đa đầu: Đường chuyển đổi xuyên qua đường chuẩn, giá xuyên qua đám mây, đường MACD xuyên qua đường tín hiệu, làm nhiều Tín hiệu xuất phát đa đầu: chuyển đổi đường dưới đường chuẩn, giá dưới đường đám mây, MACD đường dưới đường đường tín hiệu, giao dịch

Tín hiệu đầu vào trống: chuyển đổi đường dưới đường chuẩn, giá dưới tầng mây, MACD đường dưới đường tín hiệu, làm trống Tín hiệu đầu ra trống: đường chuyển đổi xuyên qua đường chuẩn, giá xuyên qua đám mây, đường MACD xuyên qua đường tín hiệu, kho trống

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

  1. Một chỉ số đám mây khói có thể xác định xu hướng trung và dài hạn, MACD có thể xác định xu hướng ngắn hạn, kết hợp với nhau có thể nắm bắt các cấp độ khác nhau của cơ hội giao dịch.

  2. Một đám mây khói có thể xác định rõ vị trí hỗ trợ và kháng cự.

  3. MACD có thể đánh giá hiệu quả các trường hợp mua và bán quá mức trong thời gian ngắn, tránh bị mắc kẹt trong các tình huống xung đột.

  4. Các tham số chiến lược đã được tối ưu hóa, có thể áp dụng cho nhiều loại tiền kỹ thuật số, có độ ổn định nhất định.

Rủi ro chiến lược

  1. Một đám mây khói và MACD có thể tạo ra tín hiệu giả, cần kết hợp các chỉ số khác để xác nhận.

  2. Trong các tình huống xung đột dễ bị lệch, nên điều chỉnh các tham số hoặc tạm dừng giao dịch.

  3. Khi mây quá dày, bạn sẽ phải chờ đợi một sự đột phá rõ ràng và có thể bỏ lỡ cơ hội.

  4. Dữ liệu phản hồi không đầy đủ, dữ liệu tham số phù hợp cần được xác minh theo chu kỳ lâu hơn.

Có thể kiểm soát rủi ro bằng cách kết hợp các chỉ số khác để xác nhận tín hiệu, điều chỉnh các tham số phù hợp với môi trường thị trường hoặc tạm dừng giao dịch trong một chu kỳ cụ thể.

Hướng tối ưu hóa chiến lược

  1. Tối ưu hóa thông số của một đám mây khói, điều chỉnh chu kỳ đường chuyển đổi và đường chuẩn để nó gần gũi hơn với các đặc điểm của các giống khác nhau.

  2. Tối ưu hóa các tham số MACD, điều chỉnh các tham số ngắn và trơn để có được tín hiệu giao dịch chính xác hơn.

  3. Tăng chiến lược dừng lỗ, dừng lỗ khi thua lỗ đạt đến một tỷ lệ nhất định.

  4. Tăng quản lý vị trí, điều chỉnh tỷ lệ vị trí cho mỗi giao dịch theo thị trường.

  5. Kiểm tra dữ liệu về các loại tiền kỹ thuật số khác nhau để đánh giá sự ổn định của chiến lược.

  6. Thêm một bộ lọc cho các chỉ số khác để tránh các tín hiệu giả.

Tóm tắt

Chiến lược này tích hợp lợi thế của một đám mây khói và hai chỉ số MACD, bằng cách định hướng xu hướng trung hạn thông qua đường chuyển đổi và đường chuẩn, MACD đánh giá tình trạng quá mua quá bán trong thời gian ngắn, tạo ra tín hiệu giao dịch. Các tham số chiến lược có thể được tối ưu hóa cho các giống khác nhau, có thể kết hợp với các chỉ số khác hoặc chiến lược dừng lỗ để kiểm soát rủi ro, hiệu quả tốt hơn cho các giống khác nhau.

Mã nguồn chiến lược
/*backtest
start: 2023-10-08 00:00:00
end: 2023-10-15 00:00:00
period: 5m
basePeriod: 1m
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/
// © Coinrule

//@version=5
strategy('Ichimoku Cloud with MACD (By Coinrule)',
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 6, 1, 0, 0)


// Stop Loss and Take Profit for Shorting
Stop_loss = input(1) / 100
Take_profit = input(5) / 100
longStopPrice = strategy.position_avg_price * (1 - Stop_loss)
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)


// Inputs
ts_bars = input.int(9, minval=1, title='Tenkan-Sen Bars')
ks_bars = input.int(26, minval=1, title='Kijun-Sen Bars')
ssb_bars = input.int(52, minval=1, title='Senkou-Span B Bars')
cs_offset = input.int(26, minval=1, title='Chikou-Span Offset')
ss_offset = input.int(26, minval=1, title='Senkou-Span Offset')
long_entry = input(true, title='Long Entry')
short_entry = input(true, title='Short Entry')

middle(len) => math.avg(ta.lowest(len), ta.highest(len))

// Ichimoku Components
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_bars)

// Plot Ichimoku Kinko Hyo
plot(tenkan, color=color.new(#0496ff, 0), title='Tenkan-Sen')
plot(kijun, color=color.new(#991515, 0), title='Kijun-Sen')
plot(close, offset=-cs_offset + 1, color=color.new(#459915, 0), title='Chikou-Span')
sa = plot(senkouA, offset=ss_offset - 1, color=color.new(color.green, 0), title='Senkou-Span A')
sb = plot(senkouB, offset=ss_offset - 1, color=color.new(color.red, 0), title='Senkou-Span B')
fill(sa, sb, color=senkouA > senkouB ? color.green : color.red, title='Cloud color', transp=90)

ss_high = math.max(senkouA[ss_offset - 1], senkouB[ss_offset - 1])
ss_low = math.min(senkouA[ss_offset - 1], senkouB[ss_offset - 1])


// MACD
[macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9)


// Entry/Exit Signals
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = ta.mom(close, cs_offset - 1) > 0
cs_cross_bear = ta.mom(close, cs_offset - 1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low

bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(macd, macd_signal)
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossunder(macd, macd_signal)

strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod)
strategy.close('Long', when=bearish and not short_entry)

strategy.entry('Short', strategy.short, when=bearish and short_entry and timePeriod)
strategy.close('Short', when=bullish and not long_entry)