Chiến lược giao dịch pullback trung bình động là một chiến lược theo xu hướng. Nó sử dụng mối quan hệ giữa trung bình động dài hạn và ngắn hạn để xác định hướng xu hướng tổng thể và thực hiện các mục dài trong thời gian rút ngắn khi giá tương đối thấp.
Các quy tắc quyết định chính của chiến lược này là:
Với các tiêu chí kết hợp như vậy, chúng ta có thể thiết lập các vị trí trong thời gian rút ngắn trong khi hướng xu hướng phù hợp với kỳ vọng.
Ưu điểm lớn nhất của chiến lược này là nó chỉ thực hiện các giao dịch dài trong một xu hướng tăng dự kiến, có thể tránh được rủi ro của một thị trường biến động.
Ngoài ra, chiến lược đã thiết lập các cơ chế dừng lỗ và lấy lợi nhuận. Điều này cho phép chúng ta kiểm soát lỗ thông qua dừng lỗ ngay cả khi phán đoán sai và thị trường di chuyển theo hướng ngược lại; đối với lợi nhuận, lấy lợi nhuận cho phép khóa một số lợi nhuận.
Mặc dù chiến lược này xem xét phán đoán xu hướng chính và thiết lập dừng lỗ và lấy lợi nhuận, nhưng vẫn có một số rủi ro:
Nguy cơ đánh giá sai về xu hướng chính: Khi đánh giá rằng thị trường đã bước vào thị trường tăng sau khi mở các vị trí dài, thị trường thực tế đã chuyển từ tăng sang bên hoặc giảm, sẽ gây ra tổn thất lớn.
Rủi ro stop loss bị xâm nhập. Đặc biệt là khi các sự kiện tiêu cực lớn xảy ra, thị trường có thể giảm vượt quá đường stop loss đã xác định trước, dẫn đến tổn thất không thể kiểm soát được.
Theo đó, chúng ta có thể xem xét các phương pháp sau để giảm thiểu rủi ro:
Thực hiện phân tích tốt về thị trường chung để tránh đánh giá sai xu hướng trong khu vực sốc hoặc đặt đường trung bình động chu kỳ dài hơn để xác nhận xu hướng chính.
Sử dụng các lệnh có điều kiện được kích hoạt trên các động thái giảm lỗ thay vì các lệnh dừng lỗ đơn giản.
Xem xét các đặc điểm của chiến lược này với phán đoán dài hạn và nhập cảnh ngắn hạn, chúng tôi có thể tối ưu hóa nó thêm trong các khía cạnh sau:
Tối ưu hóa các tham số chu kỳ của trung bình động để tìm kết hợp tham số tốt nhất
Tăng các bộ lọc chỉ số kỹ thuật khác, chẳng hạn như thêm phân tích khối lượng, hoặc kết hợp các chỉ số mua quá nhiều hoặc bán quá nhiều khác dựa trên chỉ số RSI
Chúng tôi có thể thực hiện điều chỉnh thích nghi dựa trên biến động thị trường, phù hợp mở rộng phạm vi dừng lỗ trong thời gian biến động cao
Kiểm tra khả năng thích nghi giữa các sản phẩm khác nhau. Loại chiến lược này có thể phù hợp hơn với các sản phẩm chỉ số. Các bộ lọc bổ sung là cần thiết khi áp dụng cho các cổ phiếu riêng lẻ.
Nói chung, chiến lược giao dịch pullback trung bình động là một ý tưởng chiến lược tương đối trưởng thành và ổn định. Nó chủ yếu xem xét xu hướng chính và cơ hội rút ngắn hạn, đạt được cơ hội nhập cảnh tốt mà không theo đuổi mức cao mới. Đồng thời, nó khóa lợi nhuận và kiểm soát rủi ro thông qua cài đặt dừng lỗ và lấy lợi nhuận. Chiến lược này đặc biệt phù hợp với các nhà đầu tư có khả năng phân tích toàn diện mạnh mẽ và kinh nghiệm giao dịch phong phú.
/*backtest start: 2022-11-30 00:00:00 end: 2023-12-06 00:00:00 period: 1d basePeriod: 1h 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/ // © tsujimoto0403 //@version=5 strategy("simple pull back", overlay=true,default_qty_type=strategy.percent_of_equity, default_qty_value=100) //input value malongperiod=input.int(200,"長期移動平均BASE200/period of long term sma",group = "パラメータ") mashortperiod=input.int(10,"長期移動平均BASE10/period of short term sma",group = "パラメータ") stoprate=input.int(5,title = "損切の割合%/stoploss percentages",group = "パラメータ") profit=input.int(20,title = "利食いの割合%/take profit percentages",group = "パラメータ") startday=input(title="バックテストを始める日/start trade day", defval=timestamp("01 Jan 2000 13:30 +0000"), group="期間") endday=input(title="バックテスを終わる日/finish date day", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間") //polt indicators that we use malong=ta.sma(close,malongperiod) mashort=ta.sma(close,mashortperiod) plot(malong,color=color.aqua,linewidth = 2) plot(mashort,color=color.yellow,linewidth = 2) //date range datefilter = true //open conditions if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30 strategy.entry(id="long", direction=strategy.long) //sell conditions strategy.exit(id="cut",from_entry="long",stop=(1-0.01*stoprate)*strategy.position_avg_price,limit=(1+0.01*profit)*strategy.position_avg_price) if close>mashort and close<low[1] and strategy.position_size>0 strategy.close(id ="long")