Chiến lược mua lên và bán xuống Golden Cross


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

Chiến lược mua lên và bán xuống Golden Cross

Tổng quan

Chiến lược này là một chiến lược theo dõi xu hướng điển hình, bằng cách tính toán các đường giao dịch ngắn hạn và đường giao dịch dài hạn để xác định thời gian đầu vào và thiết lập điểm dừng để thoát khỏi vị trí. Chiến lược này được áp dụng cho các thị trường có xu hướng tăng rõ ràng và có thể tăng lên khi xu hướng đi lên và dừng lỗ khi xu hướng đảo ngược.

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

Chiến lược này chủ yếu đánh giá xu hướng thị trường bằng cách tính toán các đường trung bình di chuyển ngắn hạn và đường trung bình di chuyển dài hạn và quan sát sự giao thoa của chúng.

  1. Tính trung bình di chuyển đơn giản 3 ngày short_ma như trung bình di chuyển ngắn hạn

  2. Tính trung bình di chuyển đơn giản 19 ngày long_ma như trung bình di chuyển dài hạn

  3. Khi một đường trung bình di chuyển ngắn hạn đi qua đường trung bình di chuyển dài hạn, một tín hiệu khác được phát ra để vào vị trí dài.

  4. Khi giá tăng vượt giá thầu*Khi bạn có 1 + Stop Loss %, bạn sẽ xóa toàn bộ vị thế của mình.

  5. Khi đường trung bình di chuyển ngắn hạn đi qua đường trung bình di chuyển dài hạn, tín hiệu trống được phát ra và vào kho trống

  6. Giới hạn phạm vi thời gian hoạt động của chiến lược bằng cách thử nghiệm lại trong một phạm vi ngày cụ thể

  7. Bằng cách tính toán trung bình di chuyển đơn giản 100 ngày làm chỉ số xu hướng lớn, chỉ giao dịch khi xu hướng lớn đi lên

Chiến lược này tận dụng tối đa nguyên tắc chéo vàng của đường trung bình di chuyển, trong xu hướng chỉ số tiếp tục tăng lên, vào nhiều vị trí trên đường trung bình di chuyển ngắn hạn khi đi qua đường trung bình di chuyển dài hạn, có thể nắm bắt cơ hội trên xu hướng một cách hiệu quả; thoát khỏi nhiều vị trí và vào vị trí trống khi đi qua đường trung bình di chuyển dài hạn dưới đường trung bình di chuyển ngắn hạn, có thể kiểm soát rủi ro một cách hiệu quả.

Phân tích lợi thế

Chiến lược này có những ưu điểm sau:

  1. Các chiến lược được thiết kế rõ ràng, dễ hiểu và dễ nắm bắt khi đánh giá xu hướng theo đường trung bình di chuyển.

  2. Các quy tắc đánh giá đơn giản, hiệu quả, có thể kiểm soát rủi ro hiệu quả.

  3. Cài đặt điểm dừng để khóa lợi nhuận, có thể dừng lỗ kịp thời khi thị trường đảo ngược.

  4. Chỉ nên giao dịch khi xu hướng lớn đi lên mới có thể lọc ra được các tín hiệu giả mạo trong hầu hết các giai đoạn chấn động.

  5. Các tham số trung bình di chuyển có thể tùy chỉnh để phù hợp với các đặc điểm của thị trường khác nhau.

  6. Có thể thiết lập phạm vi thời gian phản hồi để xác minh cho một khoảng thời gian cụ thể.

Phân tích rủi ro

Chiến lược này cũng có một số rủi ro:

  1. Chiến lược trung bình di chuyển nhạy cảm với các tham số và các thiết lập tham số khác nhau sẽ ảnh hưởng đến hiệu suất của chiến lược.

  2. Chỉ dựa trên dữ liệu lịch sử để so sánh đường cong, không thể xử lý bất thường.

  3. Không thể xử lý hiệu quả các trường hợp giá tăng cao, có thể dẫn đến vượt quá điểm dừng lỗ.

  4. Trong trường hợp xảy ra chấn động, cần thiết lập điểm dừng hợp lý.

  5. Chỉ áp dụng cho thị trường có xu hướng rõ ràng, không phù hợp với thị trường dao động ngang.

  6. Lựa chọn khoảng thời gian phản hồi sẽ ảnh hưởng đến kết quả xác minh chiến lược.

Hướng tối ưu hóa

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

  1. Thử các tổ hợp tham số khác nhau để tìm ra tham số tốt nhất, chẳng hạn như số chu kỳ của đường trung bình di chuyển.

  2. Thêm các chỉ số kỹ thuật khác để đưa ra phán đoán tổng hợp, như MACD, Bollinger Bands, v.v., để cải thiện hiệu quả ra quyết định.

  3. Thiết lập tracking stop loss động để kiểm soát rủi ro tốt hơn.

  4. Tối ưu hóa nhập cảnh, logic dừng lỗ, ví dụ như xem xét phá vỡ điểm cao nhập cảnh trước.

  5. Kiểm tra dữ liệu môi trường thị trường khác nhau để đánh giá sự ổn định của chiến lược.

  6. Cân nhắc thêm các mô hình như học máy để tối ưu hóa tham số hoặc đánh giá tín hiệu.

  7. Tăng khả năng xử lý các trường hợp bất thường trong trường hợp giá tăng cao hoặc giảm giá.

Tóm tắt

Chiến lược này thực hiện bằng nguyên tắc giao chéo trung bình di chuyển đơn giản và hiệu quả để nắm bắt xu hướng tăng, thiết lập điểm dừng để kiểm soát rủi ro và thu được lợi nhuận tốt hơn trong thị trường có xu hướng rõ ràng. Tuy nhiên, chiến lược này cũng có một số hạn chế, cần phải tiếp tục thử nghiệm tối ưu hóa để làm cho chiến lược ổn định hơn và hiệu quả hơn. Nhìn chung, ý tưởng chiến lược này rõ ràng, dễ hiểu và thực hiện, phù hợp cho người mới bắt đầu học.

Mã nguồn chiến lượ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)