Chiến lược hướng nến động

Tác giả:ChaoZhang, Ngày: 2023-10-25 16:57:05
Tags:

img

Tổng quan

Chiến lược này xác định hướng nến trong tương lai bằng cách phân tích giá đóng so với giá mở của N nến trong quá khứ.

Chiến lược logic

Logic cốt lõi của chiến lược này là:

  1. Đặt tham số NUM_CANDLES để xác định số lượng nến để phân tích.

  2. Định nghĩa hàm candle_dir để xác định hướng của một nến duy nhất. close>open là tăng, close

  3. Định nghĩa hàm count_candles để đếm số lượng nến với một hướng nhất định trong nến NUM_CANDLES trong quá khứ.

  4. Đếm số lượng nến tăng, giảm và trung tính trong nến NUM_CANDLES trong quá khứ, lưu trữ trong ups, dns, neu.

  5. Định nghĩa chỉ số chỉ số, giá trị của nó bằng ups-dns cộng/trừ neu.

  6. Xác định đầu vào dài / ngắn dựa trên chỉ số Indic.

Bằng cách phân tích hướng nến của một số nến nhất định, chiến lược này ước tính xác suất hướng nến trong tương lai cho các quyết định giao dịch.

Phân tích lợi thế

  1. Logic chiến lược là rõ ràng và dễ hiểu, giải thích và xác minh.

  2. Chỉ cần dữ liệu nến, giảm chi phí tính toán.

  3. Dễ dàng điều chỉnh độ nhạy bằng cách điều chỉnh tham số NUM_CANDLES.

  4. Áp dụng cho tất cả các sản phẩm và khung thời gian, khả năng thích nghi cao.

  5. Dễ dàng tối ưu hóa các thông số để tìm kết hợp tốt nhất.

Phân tích rủi ro

  1. Không thể xử lý thị trường giới hạn phạm vi, có thể gây ra giao dịch quá mức.

  2. Thời gian lấy mẫu không phù hợp có thể gây ra sự chậm trễ tín hiệu, NUM_CANDLES cần điều chỉnh cẩn thận.

  3. Không thể thích nghi với xu hướng đảo ngược, nguy cơ mất mát trong xu hướng đảo ngược.

  4. Tác động chi phí giao dịch cần được xem xét để tránh giao dịch quá mức.

  5. Cẩn thận quá phù hợp trong tối ưu hóa tham số, yêu cầu xác minh đa thị trường.

Hướng dẫn tối ưu hóa

  1. Xem xét thêm stop loss vào limit loss.

  2. Kết hợp với chỉ số xu hướng để tránh giao dịch ngược xu hướng.

  3. Tăng kích thước mẫu hoặc sử dụng khung thời gian ngắn hơn để cải thiện tính ổn định.

  4. Xem xét hợp chất đa thị trường để cải thiện tỷ lệ thắng.

  5. Sử dụng máy học để tối ưu hóa tham số tự động.

Kết luận

Chiến lược này xác định hướng giao dịch bằng cách phân tích hướng nến, với logic rõ ràng và đơn giản. Độ nhạy có thể được kiểm soát thông qua điều chỉnh tham số.


/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Refined CandleCounter Strategy by origo", overlay=true)

// how many candles to count
NUM_CANDLES = 7

// determine candle direction
candle_dir = close > open ? 1 : (round(close-open) == 0 ? 0 : -1)

// return # of candles with a given direction
count_candles(dir, max) =>
    count = 0
    for i = 0 to max
        if candle_dir[i] == dir
            count := count + 1
    count

ups = count_candles(1, NUM_CANDLES)
dns = count_candles(-1, NUM_CANDLES)
neu = count_candles(0, NUM_CANDLES)

indic = ups-dns


if indic > 0
    indic := indic+neu
else
    indic := indic-neu

plotarrow(neu, title="UP vs DN")

longCondition = (indic) > 0
shortCondition = (indic) <= 0

strategy.entry("buy", strategy.long, 1, when = longCondition and not shortCondition)
strategy.entry("sell", strategy.short, 1, when = shortCondition and not longCondition)


Thêm nữa