Chiến lược này tạo ra các tín hiệu giao dịch dựa trên đường chéo vàng của các đường trung bình động ngắn hạn và dài hạn để xác định các điểm vào và thiết lập các điểm dừng lỗ cho các vị trí ra.
Chiến lược chủ yếu sử dụng sự chéo chéo giữa các đường trung bình động ngắn hạn và dài hạn để xác định xu hướng thị trường.
Tính toán trung bình di chuyển đơn giản 3 ngày short_ma như là trung bình di chuyển ngắn hạn.
Tính toán trung bình di chuyển đơn giản 19 ngày long_ma là trung bình di chuyển dài hạn.
Khi short_ma vượt qua trên long_ma, một tín hiệu dài được tạo ra.
Khi giá tăng trên giá nhập * (1 + % dừng lỗ), đóng tất cả các vị trí.
Khi short_ma vượt dưới long_ma, một tín hiệu ngắn được tạo ra.
Kiểm tra ngược trong một khoảng thời gian cụ thể để giới hạn thời gian hoạt động của chiến lược.
Giao dịch chỉ khi trung bình di chuyển 100 ngày trend_ma cho thấy xu hướng tăng.
Chiến lược này sử dụng đường chéo vàng của đường trung bình động. Trong một xu hướng tăng liên tục, các tín hiệu dài được tạo ra khi short_ma vượt qua trên long_ma cho phép nó nắm bắt cơ hội. Các tín hiệu ngắn khi short_ma vượt qua dưới long_ma giúp quản lý rủi ro.
Những lợi thế của chiến lược này:
Đơn giản và dễ hiểu logic dựa trên chuyển trung bình chéo.
Các quy tắc nhập và xuất rõ ràng theo xu hướng và quản lý rủi ro.
Dừng lỗ để khóa lợi nhuận khi xu hướng đảo ngược.
Chỉ giao dịch khi xu hướng tổng thể tăng để tránh tín hiệu sai.
Thời gian trung bình động có thể tùy chỉnh thích nghi với các thị trường khác nhau.
Kiểm tra ngược trong thời gian cụ thể cho phép xác nhận.
Những rủi ro của chiến lược này:
Nhạy cảm đối với điều chỉnh tham số, các cài đặt khác nhau ảnh hưởng đến hiệu suất.
Đường cong phù hợp với dữ liệu lịch sử, không hiệu quả trong sự bất thường.
Không thể xử lý khoảng cách giá, rủi ro vượt quá stop loss.
Có xu hướng bị đánh bại ở các thị trường khác nhau.
Chỉ hoạt động trong các thị trường xu hướng rõ ràng, không phải cho các bên.
Lựa chọn thời gian backtest ảnh hưởng đến kết quả.
Chiến lược có thể được cải thiện trong các khía cạnh sau:
Kiểm tra các bộ tham số khác nhau để tìm ra các giá trị tối ưu.
Kết hợp các chỉ số khác như MACD, Bollinger Bands để cải thiện quyết định.
Sử dụng stop loss theo dõi động để kiểm soát tốt hơn rủi ro.
Tối ưu hóa lối vào, lối ra logic, như lối thoát.
Kiểm tra độ bền trong các điều kiện thị trường khác nhau.
Khám phá máy học để điều chỉnh tham số và tạo tín hiệu.
Thêm xử lý khoảng cách giá và dừng lỗ kịch bản whipsaw.
Chiến lược đơn giản và hiệu quả này nắm bắt xu hướng tăng bằng cách sử dụng đường chéo trung bình động và quản lý rủi ro thông qua stop loss. Nó hoạt động tốt trong các thị trường xu hướng mạnh nhưng có những hạn chế. Cần tối ưu hóa và thử nghiệm thêm để cải thiện độ bền. Nhìn chung nó có logic rõ ràng, dễ hiểu và thực hiện, phù hợp cho người mới bắt đầu học.
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-31 00:00:00 period: 1h 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/ // © Ta3MooChi //@version=5 strategy("전략", overlay=true,process_orders_on_close = true, pyramiding = 100) short_ma = ta.sma(close,input.int(3, "단기 이평", minval = 1)) long_ma = ta.sma(close, input.int(19,"장기 이평", minval = 1)) trend_ma = ta.sma(close, input.int(100," 추세 이평", minval = 20, group = "추세 이평")) up_trend = (trend_ma > trend_ma[1]) use_trend_ma = input.bool(true, title = "추세용 이평 사용", group = "추세 이평" ) inTrendMa = not use_trend_ma or up_trend useDateFilter = input.bool(true, title = "특정 기간 백테스트", group = "기간 백테스트") backtestStartDate = input(timestamp("1 Jan 2021"), title = "시작날짜", group = "기간 백테스트") backtestEndDate = input(timestamp("1 Jan 2022"), title = "종료날짜", group = "기간 백테스트") inTradeWindow = true longStopPerc = 1 + input.float(3, "최소수익률%", minval = 1)*0.01 longcondition = ta.crossover(short_ma, long_ma) shortcondition = ta.crossunder(short_ma, long_ma) if (longcondition) and inTradeWindow and inTrendMa strategy.entry("long", strategy.long) if (shortcondition) and (close > strategy.position_avg_price*longStopPerc) and inTradeWindow strategy.close_all() if not inTradeWindow and inTradeWindow[1] strategy.cancel_all() strategy.close_all(comment = "매매 종료") plot(short_ma,color = color.yellow) plot(long_ma,color = color.blue) plot(trend_ma,color = color.gray)