On position rebalancing buffer math
I ran a few simulations on historical data to see how buffering affects trading behavior and the performance of a single-coin portfolio using the trend follow signals previously presented. to be clear: this is not about cherry-picking an optimal value - it is about building intuition for where the limits lie and how the transaction cost model interacts with different buffer widths with buffering, the goal is to reduce trading costs that come from frequent rebalancing. before going further, let me define what I mean by a buffer zone (see [1] for details): given the trading signal and other parameters of the system, we compute a target position. around this target position, we define a buffer zone (e.g., ±10%). the question then becomes: what do we do when the actual position moves outside that zone? in the simulations, I followed the Carver-style approach [1]: when the position breaches the buffer, it is rebalanced back to the nearest boundary of the buffer zone. as the chart below shows, increasing the buffer width naturally leads to fewer trades (BTCUSDT, sample 2021-2025) this introduces a trade-off: a wider buffer means lower transaction costs, but it also means your position lags further behind the target position if the target position drifts. the question is: how much does it really matter whether the buffer is 5%, 10% or 20%? as mentioned, the assumption on the transaction cost model is crucial here. I assume the following simulated fill-price model order_fill_price(t) = close(t) * (1 + order_side(t) * (slippage + spread)) - close(t) is the close price of an bar update. I assume execution occurs immediately after this update - order_side(t) is an indicator: buy (=1), sell (=-1). - slippage represents the assumed market impact (in %). - spread represents the BBO spread (in %). to stay on the conservative side, I include spread cost, because we do not know if the close price of the bar update was a deal on the bid or the ask price in addition, I include transaction costs to account for the assumption that execution mainly happens with IOC orders (taker fees) in my case, I think this model is not far from reality - it is a reasonable approximation for smaller-sized trades. however, for large rebalancing orders that must be executed over time, this assumed fill-price model is overly simplistic let’s have a look at the simulation results. the chart below shows the annualized Sharpe ratio for BTCUSDT under different slippage assumptions (0% to 1%) and buffer widths (0% to 25%). - for low slippage values, frequent rebalancing does not cost much performance - the Sharpe ratio stays fairly stable. only when the buffer width becomes large we do see a noticeable decline - for higher slippage values, the expected trade-offs appear: buffering reduces trading frequency and thus transaction costs, which initially improves Sharpe. however, when the buffer becomes too wide, the position starts to lag significantly behind the target, leading to weaker performance the chart below shows the same simulation, but with Sharpe ratios normalized to 100 at their respective peaks and averaged across several coins (BTC, ETH, SOL, DOGE). this helps visualize the general pattern across a few large-cap coins rather than focusing on BTC only these results simply illustrate how the interaction between slippage assumptions and buffer settings affects portfolio performance under a simple fill-price cost model. other execution assumptions would naturally lead to different outcomes references [1] carver, r: advanced futures trading strategies
1,048
0
本頁面內容由第三方提供。除非另有說明,OKX 不是所引用文章的作者,也不對此類材料主張任何版權。該內容僅供參考,並不代表 OKX 觀點,不作為任何形式的認可,也不應被視為投資建議或購買或出售數字資產的招攬。在使用生成式人工智能提供摘要或其他信息的情況下,此類人工智能生成的內容可能不準確或不一致。請閱讀鏈接文章,瞭解更多詳情和信息。OKX 不對第三方網站上的內容負責。包含穩定幣、NFTs 等在內的數字資產涉及較高程度的風險,其價值可能會產生較大波動。請根據自身財務狀況,仔細考慮交易或持有數字資產是否適合您。