Port ng Leeks Reaper (FMZ #34388 ni Zero, mula sa richox/okcoin-leeks-reaper): Paghahabol sa Biglang Galaw ng Presyo + Unti-unting Rebalance tungo sa Neutral, Long-Short sa BTCUSD_PERP.BINANCE_CM 1H, Burst Threshold na Muling Isina-scale mula sa 280ms na Sampling gamit ang sqrt(time)
Resulta: Inabandona
BtcCmLeeksReaperBurstRebalanceLS
Buod ng Resulta
Inilipat ng estratehiyang ito sa hourly bars ang lohika ng walang-bayad na OKCoin na 'Leeks Reaper' para humabol sa biglang galaw ng presyo at mag-rebalance tungo sa neutral na posisyon, sa COIN-M BTC perpetual; pinanatili ang bawat tuntunin at ang burst threshold lang ang muling isina-scale gamit ang sqrt(time). Pagkaraan ng 2 iteration, nagpakita ang backtest ng negatibong inaasahang kita mula pa sa mga unang buwan (nalulugi na noong Sep hanggang Nov 2020). Nasa 94% ang exposure sa halip na planong 35-45%, at na-liquidate ang account noong Pebrero 2021 (-100%, Sharpe -3.71, PF 0.80, -0.26% bawat trade). Iniwan ito ng analyst sa pagsusuri ng backtest nang walang optimization, at binanggit ang posibleng anomalyang inverse-sizing na hindi pa nabeberipika at hindi nagbago sa direksiyon ng edge.
Port ng estratehiyang FMZ na '移植 OKCoin 韭菜收割机' ni Zero (port ng richox/okcoin-leeks-reaper). Pagkilala: sa mga may-akda ang estratehiya; sarili naming muling pagsasakatuparan ito ng mga tuntunin, hindi ang code nila. CLASSIFICATION: (a) kongkretong ideya sa trading. May dalawang bahagi ito: (1) TREND: kapag lumagpas ang depth-weighted mid price sa saklaw ng kamakailang sample nang higit sa maliit na porsiyentong threshold, mag-all-in sa direksiyon ng burst ('habulin ang pagtaas, patayin ang pagbaba'), na……Magpakita ng higit paMagpakita ng mas kaunti
Port ng estratehiyang FMZ na '移植 OKCoin 韭菜收割机' ni Zero (port ng richox/okcoin-leeks-reaper). Pagkilala: sa mga may-akda ang estratehiya; sarili naming muling pagsasakatuparan ito ng mga tuntunin, hindi ang code nila. CLASSIFICATION: (a) kongkretong ideya sa trading. May dalawang bahagi ito: (1) TREND: kapag lumagpas ang depth-weighted mid price sa saklaw ng kamakailang sample nang higit sa maliit na porsiyentong threshold, mag-all-in sa direksiyon ng burst ('habulin ang pagtaas, patayin ang pagbaba'), na binabawasan ang laki kapag manipis ang kamakailang traded volume at binabawasan pa pagkatapos mismo ng dating burst trade; (2) BALANCE: tuwing lumalayo ang book sa neutral na posisyon ng 50% (na para sa may-akda ay sero net exposure dahil balanse ang account gamit ang hiniram na coin), patuloy na magbawas ng maliliit na bahagi hanggang bumalik ito sa neutral, para maipon ang kita at hindi mahawakan ang posisyon sa pagtatapos ng trend. HONEST VIABILITY NOTE: ayon sa may-akda ng orihinal, tumigil itong gumana nang magsimulang maningil ng bayarin ang OKCoin. Hindi praktikal ang literal na port gamit ang orihinal na mga numero dahil kinakain ng bayarin at hindi ito maaaring i-backtest: 0.005% ng presyo ang burst threshold (5e-5), sinusuri kada 280 ms, kumpara sa taker round trip na ~0.10%. Kailangan din nito ng mga snapshot ng order book na antas-3, na wala tayo bilang kasaysayan sa loob ng maraming taon. Humiling ang user ng tapat na port pero pinayagan ding iangkop ang ideyang hindi praktikal, kaya binago ang ONLY TIME SCALE at VENUE. Napanatili ang bawat tuntunin (anyo ng burst test, 0.7/0.3 volume EMA, volume scaling, post-trade damping na 0.8x/0.64x, all-in sizing, pagbaligtad sa kasalungat na burst, neutral band na 0.48/0.52, at pag-rebalance sa maliliit na clip). Ang nag-iisang numerikong pagbabago ay sa threshold, at sumusunod ito sa nakasaad na tuntunin sa halip na pag-fit: lumalaki ang galaw ng random walk ayon sa square root ng oras, kaya nagiging 5e-5 * sqrt(3600/0.28) = 0.567% kada sample na 1 oras ang galaw na 5e-5 kada sample na 280 ms. Walang saysay sa venue ng kontratang 2026 ang threshold ng volume na 10 BTC kada 280 ms poll sa OKCoin na 2016, kaya ginagawa itong pagsubok na relatibo: ikinukumpara ang volume EMA sa trailing median nito sa loob ng 30 araw. VENUE: BTCUSD_PERP.BINANCE_CM (inverse COIN-M perp, mula 2020-08 hanggang ngayon sa 1H, mga 6 taon). Estratehiyang BTC ang orihinal, kaya pinanatili ang BTC kahit mabigat na ang paggamit sa BTC sa corpus. Kapag inilagay ito sa COIN-M, lilipat ang run mula sa bucket na 68%-share na BINANCE USD-M papunta sa bucket na COIN-M na wala pang quota (3.1% kumpara sa target na >=5%). Tugma rin ang inverse BTC-margined account sa balanseng coin-plus-cash account ng orihinal, kung saan nangangahulugang walang pagbabago sa fiat P&L ang neutral na punto. Presyo at volume lang ang gamit ng trigger, walang karagdagang feed, kaya hindi saklaw ang problema ng lesson-160 COIN-M (walang tagakolekta ng funding/OI). Flat ang estado: flat ang estratehiya kapag naibalik ng rebalance ang exposure sa loob ng neutral band. Inaasahang oras sa merkado ay ~35-45% (mga 2-4 burst kada linggo, na bawat isa'y inaalis sa loob ng humigit-kumulang 24 oras).
Itinatama ng Iteration 2 ang kritikal na QA: ginamit sa sizing ang nakapirming balanse na USDT, na hindi nagbabago sa inverse account dahil sa BTC isinasettle ang PnL at mga bayarin. Bunga nito, naging palagian ang notional na ~$100k, 187% ang average exposure at na-liquidate ang account. Ginagamit na ngayon sa sizing ang mark-to-market na equity na USD = stable balance + (BTC balance - BTC baseline na kinunan sa unang bar + unrealized BTC PnL) * close. Nililimitahan nang mahigpit ang mga contract sa……Magpakita ng higit paMagpakita ng mas kaunti
Itinatama ng Iteration 2 ang kritikal na QA: ginamit sa sizing ang nakapirming balanse na USDT, na hindi nagbabago sa inverse account dahil sa BTC isinasettle ang PnL at mga bayarin. Bunga nito, naging palagian ang notional na ~$100k, 187% ang average exposure at na-liquidate ang account. Ginagamit na ngayon sa sizing ang mark-to-market na equity na USD = stable balance + (BTC balance - BTC baseline na kinunan sa unang bar + unrealized BTC PnL) * close. Nililimitahan nang mahigpit ang mga contract sa equity*alloc_frac*leverage/multiplier, na <=1x equity sa leverage na 1, kaya lumiliit ang exposure habang bumababa ang equity. Itinama ang neutral band sa 0.02 (ang 0.48/0.52 band ay +/-2% ng mga asset). Pagkatapos mag-restart, muling binubuo ang damping clock mula sa ts_opened ng bukas na posisyon, at itinatama ang docstring. Pinananatili ang burst threshold sa paunang itinakdang halaga ng sqrt(time) na 0.567% para sa hypothesis, sa halip na i-fit, kaya nananatili ang dalas ng burst ayon sa ibinubunga ng tuntuning iyon. Sumasang-ayon ako sa pangamba ng QA na sa 1H BTC, malapit ang threshold na ito sa karaniwang ingay kada oras (~2 burst/araw, hindi 2-4/linggo). Kung kumpirmahin ng itinamang backtest ang epekto ng mga bayarin, ang tapat na pagbasa ay hindi napapanatili ng sqrt-time rescaling ang katangian ng orihinal na 'bihirang burst'. Hindi binago ang lohika ng signal, polarity at mekanismo ng rebalance.
negative_expectancy: sa mapagkakatiwalaang sampol na 640 trade, -0.26% ang return bawat trade (ang floor ng COIN-M ay +0.10%), PF ang 0.80 at -3.71 ang Sharpe (CI -6.74 hanggang -2.22); na-liquidate ang account noong Peb 2021. Pasok sa karaniwang ingay ng BTC kada oras ang paunang itinakdang sqrt(time) threshold na 0.567% kada oras. Nagbunga ito ng 94% exposure sa halip na 35-45% na bihirang-burst, at nagbabayad ng taker cost ang bawat flip o clip kahit halos zero na ang gross edge. Pinatutunayan nito ang pangamba ni QA tungkol sa edge. Kapag inayos muli ang threshold, tatalikuran ang paunang itinakdang tuntunin, kaya hindi makatwiran ang optimization (aral 141: negatibong Sharpe sa mahigit 100 trade). Binanggit ang posibleng anomalyang inverse-sizing (-29% arawang galaw sa 1x) pero hindi ito nabeberipika, at hindi nito binabago ang direksiyon ng edge, na negatibo na noong Sep-Nov 2020. Code ng pagkabigo sa unang ulat: fee_edge / no_edge.
Implementasyon
Port ng Leeks Reaper sa BTCUSD_PERP COIN-M 1H. Nagti-trigger ng all-in na posisyon sa direksiyon ng burst kapag lumagpas ang close sa dating saklaw na 5 close nang higit sa 0.567% (5e-5 kada 280 ms na iniayon sa sqrt(time)). Nililimitahan ang laki sa 1x ng mark-to-market USD equity, at isinusukat ito batay sa volume EMA kumpara sa median nito sa loob ng 30 araw, saka binabawasan nang 0.8x/0.64x pagkatapos ng kamakailang burst. Binabaligtad ng kasalungat na burst ang book. Kung hindi, unti-unting binabawasan ang posisyon nang ~1/24 clip bawat bar hanggang mapasok ito sa neutral band na +/-2% ng equity, saka isinasara.
Mga Resulta ng Beripikasyon
Ipadala ang mga refill sa _submit_entry_instrument, o tingnan ang self._market_ready(self.instrument_id) bago magsumite.
Direktang tumatawag sa self._market() ang mga refill na kapareho ng direksiyon at mga rebalance clip, kaya nilalampasan ang _submit_entry/_submit_exit. Dahil dito, hindi nasusunod ang mga guard ng base template para sa min-notional at kahandaan ng market. Walang epekto ito sa backtest (clip >= 1 contract = $100 > $5), pero sa live/paper, maaaring maipadala ang clip o refill bago maging handa ang market.
Itakda ang burst state sa on_order_filled / on_position_opened sa halip na sa position_size().
Binibigyan ng position_size() ng halaga ang _last_burst_ts, _entry_contracts at _pos_dir bilang side effect bago magpasiyang magsumite ang base template. Kapag tinanggihan ng base ang entry (min notional, hindi pa handa ang market), uusad pa rin ang damping clock at clip base na para bang may burst trade.
Iwan ito gaya nito, o itaas sa vol_median_window kung dapat may buong median na 30 araw bago ang unang trade.
Natatabunan ng override na min_bars_required (48) ang method ng framework. Mas mababa sa 48 ang dalawang gate ng estratehiya (7 close, 24 sample ng volume-EMA), kaya ligtas ito. Pero 24-720 sample lang ang ginagamit ng volume median sa unang 30 araw, kaya mas maingay ang maagang volume scaling kaysa sa nakasaad na median sa loob ng 30 araw.
Umabot ang smoke test sa -100% (tracker liquidation noong 2025-07-10). Sa equity na <=1x, kailangang bumaba ang equity hanggang sa 0.5% maintenance buffer bago ito mangyari, kaya bunga ito ng pagkaubos dahil sa gastos, hindi ng pagsabog ng sizing. $55.6k ang mga komisyon at $25.3k ang impact sa $100k, turnover 504x, 1312 posisyon sa 715 araw (~1.8 bursts/araw kumpara sa 2-4/linggo ng hypothesis), exposure na 85% kumpara sa 35-45%, PF 0.77. Nasa loob ng karaniwang hourly BTC ingay ang paunang itinakdang sqrt(time) threshold na 0.567%, kaya hindi nananatili ang palagay na 'bihira ang burst' matapos ang pagsasaayos. Buong 1x round trip ang bawat pagbaligtad, at dagdag na gastos sa taker ang mga reduce-only clip na ~24. Bahagya lang lampas sa sona ng hinala sa polarity ang PF 0.77 sa mahigit 1000 trades. Suriin muna ang dalas ng bursts kada taon at ang PnL bago ang mga gastos kada burst. Kung mas mababa sa ~0.2% ang gross edge kada burst, itigil ito sa halip na muling iakma ang threshold, dahil maaalis sa gayon ang paunang itinakdang tuntunin.
Pagsusuri ng Backtest
Sharpe
-3.71
Kabuuang Return
-100.00%
Max Drawdown
100.00%
Kabuuang Trade
640
Win Rate
41.7%
Profit Factor
0.80
Tapat na port: pinanatili ang paunang itinakdang pagsasaayos ng threshold ayon sa sqrt(time), hindi ito ini-fit
Dalawang direksiyon ang mga trade (322 long / 318 short), na tugma sa disenyong humahabol sa pagtaas at pumipigil sa pagbagsak
Na-liquidate ang account (total_return -100%, liquidation 2021-02-17): hindi kailanman nasubok ang buong kasaysayan lampas sa unang ~5 buwan
Negatibo ang inaasahang kita sa maaasahang sample: 640 trades, PF 0.80, avg_trade_return_pct -0.26% (ang BINANCE_CM cost floor ay +0.10%), Sharpe -3.71, bootstrap CI [-6.74, -2.22]
Nagsimula ang mga lugi bago pa ang anumang pag-compound ng sizing: -6.4% ang buwanang return (Sep), -7.8% (Oct) at -16.4% (Nov 2020) habang normal ang equity, at negatibo ang rolling Sharpe halos mula pa sa simula
Hindi tugma ang dalas/exposure sa palagay: 94% ang exposure kumpara sa nakasaad na 35-45%, at entry_signaled ang 5354 sa humigit-kumulang 150 araw. Nasa loob ng karaniwang ingay kada oras ng BTC ang 0.567% na hourly threshold, kaya hindi bihirang pangyayari ang mga 'burst'
Mabigat ang mga gastos bukod pa sa gross edge na halos sero o negatibo na: komisyon na $29.9k at impact na $26.7k sa panimulang kapital na $100k; turnover 1340x
Mabigat ang kaliwang buntot ng distribusyon ng returns: skew -7.75, tail_ratio 0.34, CVaR95 26.9%. Malaki ang mga lugi sa araw-araw na -29% at -30% noong Ene 2021 para sa book na nililimitahan sa <=1x equity, kaya maaaring may depekto rin sa landas ng equity/sizing ng inverse contract (hindi pa nabeberipika). Gayunman, negatibo na ang direksiyon ng edge bago ang mga araw na iyon
Kasaysayan ng Iterasyon
Bigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=code_defect]: - [edge_concern] Mas madalas mag-trigger ang estratehiya kaysa sa inaasahan ng hypothesis. Nakasulat dito ang 2-4 bursts kada linggo at 35-45% oras sa merkado; ipinapakita ng sandbox ang 659 posisyon sa loob ng 342 araw (~2 kada araw), 88.65% exposure, at komisyong katumbas ng 22.56% ng gross (bawat 1/24 rebalance clip ay nagbabayad ng taker fee). Malapit na sa sona ng hinala sa polarity ng lesson-125 ang PF 0.75 sa 659 trades. Tama ang……Magpakita ng higit paMagpakita ng mas kaunti
Bigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=code_defect]:
- [edge_concern] Mas madalas mag-trigger ang estratehiya kaysa sa inaasahan ng hypothesis. Nakasulat dito ang 2-4 bursts kada linggo at 35-45% oras sa merkado; ipinapakita ng sandbox ang 659 posisyon sa loob ng 342 araw (~2 kada araw), 88.65% exposure, at komisyong katumbas ng 22.56% ng gross (bawat 1/24 rebalance clip ay nagbabayad ng taker fee). Malapit na sa sona ng hinala sa polarity ng lesson-125 ang PF 0.75 sa 659 trades. Tama ang polarity (ang paglagpas sa dating max ay BUY), kaya mas malamang na nasa loob ng karaniwang ingay ng 1H BTC ang sqrt(time)-rescaled na threshold ng 0.567% (mga 0.4-0.7% ang hourly sigma). Ginagawa nitong noise trigger ang 'burst' na may 24-clip na buntot ng bayarin. Pagkatapos ayusin ang sizing, tingnan kung gaano kadalas nagti-trigger ang bursts kada linggo kumpara sa 2-4 ng hypothesis bago gamitin dito ang optimizer.
- [critical] Hindi nakaayon sa equity ang sizing na 'all-in 1x equity' sa venue na ito. Sinesukat ng _target_contracts() ang laki bilang get_account_equity() * alloc_frac * leverage. Sa BINANCE_CM, ibinabalik ng resolve_account_equity() ang balanse ng USDT ng venue, na sinisimulan ng runner sa 100,000 USDT. Sa BTC nase-settle ang inverse PnL at mga komisyon (nagsisimula rin ang runner ng 50 BTC para rito), kaya hindi nagbabago ang balanse ng USDT. Dahil dito, laging nakapirmi sa halos $100k notional (1000 kontrata) ang laki ng bawat burst at refill, gaano man karami ang nalugi. Ipinapakita ng sandbox ang resulta: avg_position_pct 187% sa itinakdang leverage na 1.0, liquidated=true noong 2025-05-01, total_return -100%, DD 100%. Tinutukoy ng hypothesis ang all-in sizing sa 1x equity na may post-trade damping. Ang aktuwal na tumakbo ay isang constant-notional book na tumataas ang tunay na leverage habang bumababa ang equity, nang walang stop. Ito ang pattern ng pagkalugi dahil sa compounding na nasa lessons 148/156, at hindi nito nasusunod ang itinakdang sizing. (line 131) — ayusin: Gamitin ang mark-to-market equity sa USD para sukatin ang laki. Halimbawa: equity_usd = balanse ng USDT + (balanse ng BTC - panimulang BTC) * close, o subaybayan sa loob ng estratehiya ang realized at unrealized PnL ng inverse position sa USD (nasa BTC ang pos.unrealized_pnl / realized_pnl, kaya imultiply sa close). Limitahan ang target para hindi lumampas ang contracts * multiplier sa equity_usd * alloc_frac * leverage, at tiyaking hindi ito lalampas sa 1.0x equity sa leverage na 1. Suriin pagkatapos ang sandbox avg_position_pct: dapat hindi ito lumampas sa ~100%, at walang liquidation.
- [warning] 4% ng equity ang neutral band (neutral_band_frac=0.04). Ang band na 0.48/0.52 ng orihinal ay +/-2% ng kabuuang asset sa paligid ng ratio ng 50%. Kung susukatin bilang notional na layo mula sa neutral, ito ay 2%, hindi 4%, maliban kung itinuturing na 50% ng mga asset ang 'all-in' leg. Maliit ang epekto (maaga nang isa o dalawang clip nagfa-flat ang book), pero dapat ipaliwanag o itama ang pagtutumbas. (line 176) — ayusin: Gamitin ang 0.02, o idokumento kung bakit ginagamit ang buong lapad ng band.
- [warning] Tinatawag ng bawat same-direction burst ang _mark_burst(), na nagre-reset sa _last_burst_ts at nagtatakda sa _entry_contracts bilang max(target, held). Kaya nagsisimula ulit ang refills at damping sa bawat magkakasunod na burst bar. Tugma ito sa kilos sa bawat tick ng orihinal, pero sa dalas ng burst sa sandbox (~2 kada araw), nananatiling malapit sa buong laki ang book sa halos lahat ng oras (88.65% exposure) sa halip na unti-unting lumiit sa loob ng ~24h. (line 150) — ayusin: Sinusunod ng kilos ang port, kaya walang kailangang baguhin. Kung muling itatakda ang burst rate, suriin ulit ang exposure kumpara sa 35-45% ng hypothesis.
- [warning] Sinasabi ng docstring na 'restart-safe/persisted' ang per-position scalar state. Gayunman, mga plain attribute ang _entry_contracts, _pos_dir at _last_burst_ts. calculate_signal lamang ang pinapatakbo ng live warmup replay, kaya pagkatapos ng restart ay 0 ang mga ito. Babalik sa held size ang clip base, na tama, pero mawawala ang damping nang hanggang 10 bars. Maliit na isyu. (line 60) — ayusin: Buuin muli ang _last_burst_ts mula sa ts_opened ng bukas na posisyon sa pagsisimula, o tanggapin ito at itama ang docstring.
Buod ng Resulta
Hindi napapanatili ng pagsa-scale sa hourly bars gamit ang sqrt(time) ng threshold na wala pang isang segundo para sa microstructure ang pagiging filter ng bihirang pangyayari; tiyaking nasa hulihan ng distribusyon ng galaw sa target na timeframe ang trigger pagkatapos itong muling i-scale bago ito gawing batayan.
Sa pagsusuri ng backtest, pinili ng analyst na itigil ito dahil negatibo ang inaasahang kita: -0.26% kada trade kumpara sa floor na +0.10% COIN-M. Nasa loob ng karaniwang ingay ng BTC ang hourly threshold na 0.567%, kaya tuloy-tuloy ang pag-trigger ng bursts at kinain ng mga bayarin ang gross edge na halos sero na. Kung muling iaakma ang threshold, mawawala ang paunang itinakdang tuntunin, kaya hindi isinagawa ang optimization.
Port ng 'Leeks Reaper' ng FMZ/richox sa BTCUSD_PERP.BINANCE_CM 1H: mag-all-in sa direksiyon ng pag-alon ng presyo (na may volume scaling at post-trade damping), saka unti-unting bawasan ang posisyon hanggang neutral sa maliliit na clip, gamit ang paunang itinakdang burst threshold na 0.567% kada oras (ang orihinal na threshold na 280 ms ay iniayon sa sqrt(time)).
Nawala ang lahat sa unang backtest: -100% ang kabuuang return at na-liquidate ang account noong 2021-02-17, -3.71 ang Sharpe (CI -6.74 hanggang -2.22), 640 trade na may 41.7% win rate, 0.80 ang profit factor at avg_trade_return_pct -0.26%. 94.3% ang exposure, at mabigat ang mga gastos: $29.9k na komisyon at $26.7k na impact sa panimulang kapital na $100k, na may turnover na 1340x.
Ang Stratmill ay isang tool para sa pananaliksik at paper trading, hindi payo sa pananalapi o isang broker. Ang mga resulta ng backtest at paper trading ay hypothetical. May panganib ng pagkalugi ang pangangalakal.