
Ý tưởng chính của chiến lược này là sử dụng đường trung bình di chuyển như một tín hiệu mua và bán, kết hợp với giá phá vỡ đường hai ngang. Tạo ra tín hiệu mua khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn; tạo ra tín hiệu bán khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn. Chiến lược này có tính năng theo dõi xu hướng và giao dịch đảo ngược.
Chính sách này hoạt động như sau:
Tính toán trung bình di chuyển đơn giản ngắn hạn và trung bình di chuyển đơn giản dài hạn.
So sánh liệu giá có cao hơn hoặc thấp hơn đường trung bình di chuyển, dựa trên giá trên đường trung bình di chuyển là nhiều đầu và giá dưới đường trung bình di chuyển là đầu trống.
Làm nhiều hơn khi mặc đường trung bình ngắn; làm trống khi mặc đường trung bình dài dưới đường trung bình ngắn.
Đây là cách để chuyển đổi các vị trí trống.
Những ưu điểm chính của chiến lược này là:
Chiến lược Binary Equity kết hợp theo dõi xu hướng và giao dịch đảo ngược, đồng thời theo dõi xu hướng thị trường và nắm bắt cơ hội đảo ngược.
Đồ cưa vàng có đường thẳng có độ bền nhất định, có thể loại bỏ hiệu quả các lỗ hổng giả.
Sử dụng lý thuyết đường trung bình, có lợi cho việc khóa lợi nhuận trong thời gian biến động.
Những rủi ro chính của chiến lược này là:
Chiến lược đường hai nhạy cảm với tham số, thiết lập tham số đường trung bình di chuyển không đúng cách có thể dẫn đến giao dịch thường xuyên hoặc bỏ lỡ cơ hội.
Việc phá vỡ thất bại có thể gây ra tổn thất và cần phải ngăn chặn tổn thất hiệu quả để kiểm soát rủi ro.
Sự thay đổi này không nhất thiết là thành công, nhưng có thể là sự tiếp tục của xu hướng cũ và gây thiệt hại.
Các hướng tối ưu hóa chính của chiến lược này là:
Kiểm tra và tối ưu hóa các tham số trung bình di chuyển để tìm ra sự kết hợp tham số tốt nhất.
Thêm các chỉ số đánh giá xu hướng, phân biệt xu hướng và thị trường chấn động.
Tăng mức dừng hiệu quả để kiểm soát rủi ro, chẳng hạn như theo dõi dừng, đặt lệnh dừng.
Kết hợp với các chỉ số khác để tăng sự ổn định của chiến lược.
Nói tóm lại, chiến lược này là một chiến lược theo dõi ngược hai đường thẳng, cùng với việc xem xét theo dõi xu hướng và giao dịch đảo ngược, có thể đạt được hiệu quả tốt hơn khi các tham số được tối ưu hóa và kiểm soát rủi ro. Tuy nhiên, bất kỳ chiến lược nào cũng có thể phải đối mặt với rủi ro như phán đoán sai, dừng lỗ và thất bại, cần phải liên tục kiểm tra và tối ưu hóa để thích ứng với sự thay đổi của thị trường.
/*backtest
start: 2023-11-29 00:00:00
end: 2023-12-06 00:00:00
period: 10m
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/
// © HPotter
// Simple SMA strategy
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors
//@version=4
strategy(title="Simple SMA Strategy Backtest", shorttitle="SMA Backtest", precision=6, overlay=true)
Resolution = input(title="Resolution", type=input.resolution, defval="D")
Source = input(title="Source", type=input.source, defval=close)
xSeries = security(syminfo.tickerid, Resolution, Source)
Length = input(title="Length", type=input.integer, defval=14, minval=2)
TriggerPrice = input(title="Trigger Price", type=input.source, defval=close)
BarColors = input(title="Painting bars", type=input.bool, defval=true)
ShowLine = input(title="Show Line", type=input.bool, defval=true)
UseAlerts = input(title="Use Alerts", type=input.bool, defval=false)
reverse = input(title="Trade Reverse", type=input.bool, defval=false)
pos = 0
xSMA = sma(xSeries, Length)
pos := iff(TriggerPrice > xSMA, 1,
iff(TriggerPrice < xSMA, -1, nz(pos[1], 0)))
nRes = ShowLine ? xSMA : na
alertcondition(UseAlerts == true and pos != pos[1] and pos == 1, title='Signal Buy', message='Strategy to change to BUY')
alertcondition(UseAlerts == true and pos != pos[1] and pos == -1, title='Signal Sell', message='Strategy to change to SELL')
alertcondition(UseAlerts == true and pos != pos[1] and pos == 0, title='FLAT', message='Strategy get out from position')
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
nColor = BarColors ? possig == -1 ? color.red : possig == 1 ? color.green : color.blue : na
barcolor(nColor)
plot(nRes, title='SMA', color=#00ffaa, linewidth=2, style=plot.style_line)