Skip to content

Signal 2 — Bid-Ask Depth Ratio (BADR)

Thuộc tínhGiá trị
Phân loạiLiquidity Analysis
Khung thời gian5–30 phút
Paper gốcKyle (1985); Avellaneda-Stoikov (2008)
Loại dữ liệuLevel-2 order book
Hướng giao dịchMean Reversion
CapacityTrung bình

Logic. BADR so sánh depth phía bid với phía ask trong các level gần mid-price (weight giảm theo khoảng cách). BADR > 1.3 → áp lực mua mạnh, giá thường overshoot up rồi điều chỉnh → SELL. BADR < 0.7 → BUY. Exit khi BADR về vùng [0.9, 1.1].

Công thức.BADR = Σ(V_bid_i × W_i) / Σ(V_ask_i × W_i)W_i = 1 / (1 + |price_i − mid|)

Code Python.

python
def calculate_badr(order_book, levels=10):
    """order_book: dict với 'bids' và 'asks' = list of (price, volume)."""
    mid = (order_book['bids'][0][0] + order_book['asks'][0][0]) / 2
    bid_sum = sum(
        v * (1.0 / (1.0 + abs(p - mid)))
        for p, v in order_book['bids'][:levels]
    )
    ask_sum = sum(
        v * (1.0 / (1.0 + abs(p - mid)))
        for p, v in order_book['asks'][:levels]
    )
    return bid_sum / ask_sum if ask_sum > 0 else np.nan

QuantConnect setup. QC hỗ trợ Level-2 qua AddData[OrderBook] cho crypto/forex; với equity cần custom feed. Snapshot order book mỗi 5 giây, tính BADR rolling mean 30 phút để xác nhận persistence trước khi entry. Bracket order với target = mid-revert, stop = 2× ATR(15m).

Powered by dautu.tech