Madalas, sadyang mali ang pinakatapat na slippage model. Kapag nag-uulat ang backtest ng iisang eksaktong execution cost mula sa magaspang na historical data, nag-aangkin ito ng bagay na hindi kayang suportahan ng datos.
Parang dahilan ito para gumamit ng magaspang na palagay. Kabaligtaran ang punto: gumamit ng simpleng model na kaya mong ipaliwanag, tapos hayaan mong magkasalungat ang mga bersiyon nito. Kung gumagana lang ang strategy sa iisang paborableng tantiya sa fill, bahagi ng resulta ang kawalang-katiyakang iyon.
Bakit maaaring makapanlinlang ang tumpak na tantiya sa slippage?
Ipagpalagay na mayroon kang 1-minute OHLCV bars at nagpapadala ka ng market order para sa 2,000 shares. Ipinapakita ng bar ang range at kabuuang volume sa loob ng isang minuto. Hindi nito sinasabi kung ano ang bid at ask nang dumating ang order mo, kung sino ang nakapila sa unahan mo, paano naipamahagi ang volume sa buong minuto, o gaano karami rito ang mauubos ng order mo.
Maaari ka pa ring magtakda ng numero para sa slippage. Maaari kang mag-fill sa open ng susunod na bar, dagdag ang nakapirming gastos sa basis points, o iakma ang gastos batay sa laki ng order na hinati sa volume ng bar. Kapaki-pakinabang na mga pagtatantiya ang mga ito. Hindi sila mga obserbasyon. Kapag iniulat mo ang resulta bilang “slippage: 3.2 basis points,” nagmumukhang sukat ang isang pagpili ng modelo.
Para sa kongkretong halimbawa, magtakda tayo ng strategy na nagte-trade ng $20,000 kada order sa isang stock na may $400,000 na volume sa susunod na bar. 5% ang participation rate nito. $4 kada order ang gastos ng model na naniningil ng 2 basis points; $20 naman kada order sa model na naniningil ng 10 basis points. Sa 500 round trip, $16,000 ang agwat bago isama ang mga komisyon. Kung $18,000 ang gross profit ng backtest ng strategy, halos kasinglaki ng epekto ng signal ang palagay sa execution.
Bumuo ng range na tugma sa nakikita ng datos mo
Magsimula sa baseline na tugma sa uri ng order ng strategy at sa resolution ng datos. Kailangan ng market order ng spread at impact. Kailangan naman ng limit order ng panuntunan kung mapupunan ba ito; ibang pagkakamali sa execution ang pag-aakalang mapupunan ang bawat order kapag naabot ang presyo.
Pagkatapos, patakbuhin ang parehong backtest gamit ang ilang tahasang kaso. Panatilihing pareho ang signal, laki ng posisyon, at timestamp para maiugnay mo ang mga pagbabago sa execution:
| Kaso | Palagay sa execution | Ano ang sinusubok nito |
|---|---|---|
| Paborable | Baseline na spread at mababang impact | Gaano nakadepende ang strategy sa maayos na kalakalan? |
| Base | Karaniwang spread at impact na nakaayon sa participation | Ano ang ipinahihiwatig ng piniling palagay na gagamitin? |
| Hindi paborable | Mas malapad na spread, mas mataas na impact, at naantalang fill | Nananatili ba ang edge sa isang mahirap pero makatotohanang merkado? |
Hindi ito confidence interval maliban kung kinakalibrate mo ang mga ito gamit ang estadistika. Mga pagsubok ito ng mga senaryo. Ipaliwanag sa ulat kung ano ang kahulugan ng mga ito, at huwag kunin ang average ng mga ito para makagawa ng inimbentong “inaasahang slippage” kung wala kang ebidensiya tungkol sa mga posibilidad.
Ipaayon ang model sa order
Maaaring sapat na panimulang hakbang ang nakapirming singil sa basis points para sa maliliit na order. Hindi na ito magandang paglalarawan habang lumalaki ang participation. Itala man lang ang notional ng order, available na volume ng bar, at participation rate. Kung futures ang tine-trade ng strategy, itala ang halaga ng kontrata at ang kaugnay na mga yunit ng volume; kung spot crypto naman, linawin ang quote currency at venue.
Makapaglilitaw ng limitasyon sa kapasidad ang isang simpleng impact curve nang hindi nagpapanggap na ginagaya nito ang order book. Halimbawa, itakda ang gastos bilang baseline na singil sa spread kasama ang impact term na lumalaki ayon sa square root ng participation. I-fit lang ang mga parameter nito kung mayroon kang angkop na execution data. Kung wala, baguhin ang mga parameter at ipakita kung gaano kabilis humihina ang resulta.
At tiyaking hindi palihim na inililigtas ng fill model ang strategy. Kung dumarating ang long signal matapos ang matinding pagtaas, hindi dapat makuha nito ang low ng bar dahil lang nasa loob iyon ng candle. Gumamit ng fill convention na nakabatay sa impormasyong alam sa oras na iyon, saka subukin ang epekto ng presyo at pagkaantala. Kung hindi naabutan ng naantalang order ang galaw, resulta iyon ng execution, hindi abalang dapat pakinisin.
Kapaki-pakinabang na tanong: sa anong spread, impact, pagkaantala, o participation rate babagsak sa zero ang net performance? Madalas, mas magagamit ang break-even point na iyon kaysa sa iisang Sharpe ng backtest.
Gamitin ang paper trading para paliitin ang range
Hindi malalaman ng paper trading kung anong fill ang matatanggap mo sana sa live matching engine. Gayunman, masasabi nito kung kahawig ng aktuwal na mga desisyon ng sistema ang order stream ng backtest: kung kailan ginagawa ang mga order, gaano kalaki ang mga ito, at gaano katagal nananatiling maisasagawa.
Ihambing ang kunwaring presyo ng order sa mga quote sa parehong oras o sa anumang market data na itinatala ng paper system mo. Subaybayan ang agwat ayon sa instrumento, oras ng araw, laki ng order, at uri ng order. Makakatulong ang mga obserbasyong iyon na paliitin ang mga palagay para sa setup na iyon. Hindi awtomatikong maililipat ang mga ito sa ibang venue, market regime, o mas malaking order.
Tama ang mga kritiko na maaaring maging arbitraryo ang mga pesimistang senaryo. Kayang tanggihan ng sadyang mabagsik na model ang isang gumaganang strategy, gaya ng kayang pagandahin ng paborableng model ang isang mahinang strategy. Kaya huwag ituring na katotohanan ang pinakamabagsik na kaso. Ilathala ang mga palagay, ipakita ang sensitivity, at mangalap ng datos na kailangan para mapalitan ang mga hula ng mga tantiya na nakalibrate sa aktuwal na datos.
Hindi malalaman ng backtest ang naging puwesto nito sa pila noon batay lang sa candle. Maipapakita nito kung kapani-paniwala pa rin ang ideya kapag lumala ang execution sa mga paraang hindi maitatanggi ng datos mo. Mas kapaki-pakinabang na sagot iyon kaysa sa dagdag na decimal place.
← Lahat ng post


