Lumaktaw papunta sa nilalaman
Lahat ng estratehiya

Mga Estratehiya

ETH OKX vn.py AtrRsiStrategy — Tapat na Salin ng Nakatakdang Default ng Source

Resulta: Inabandona

EthOkxFrozenAtrRsiStrategy

Buod ng Resulta

Sinubukan ng EthOkxFrozenAtrRsiStrategy ang tapat na salin ng strategy na ATR/RSI ng vn.py, gamit ang sizing na kaugnay ng kapital. Nagbigay ang limang-araw na smoke test para sa beripikasyon ng -0.139% bawat trade sa 38 saradong posisyon at profit factor na 0.626. Pagkaraan ng tatlong iteration, nakita pa rin ng QA na hindi tugma sa source ang execution ng entry at trailing stop, kaya inabandona ito bago ang buong backtest o optimization.

Hypothesis

Tapat na salin ng mga signal at order ng AtrRsiStrategy ni 用Python的交易员, lisensiyado sa ilalim ng MIT. Source: https://github.com/vnpy/vnpy_ctastrategy/blob/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/strategies/atr_rsi_strategy.py. Panatilihin ang atr_length=22, atr_ma_length=10, rsi_length=5, rsi_entry=16, trailing_percent=0.8 at fixed_size=1. Gamitin ang perpetual na ETHUSDT.OKX na may mga nakumpletong 1-MINUTE bar, alinsunod sa default na tick-to-minute BarGenerator ng source. Huwag mag-aggregate……Magpakita ng higit paMagpakita ng mas kaunti

Tapat na salin ng mga signal at order ng AtrRsiStrategy ni 用Python的交易员, lisensiyado sa ilalim ng MIT. Source: https://github.com/vnpy/vnpy_ctastrategy/blob/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/strategies/atr_rsi_strategy.py. Panatilihin ang atr_length=22, atr_ma_length=10, rsi_length=5, rsi_entry=16, trailing_percent=0.8 at fixed_size=1. Gamitin ang perpetual na ETHUSDT.OKX na may mga nakumpletong 1-MINUTE bar, alinsunod sa default na tick-to-minute BarGenerator ng source. Huwag mag-aggregate ng mas mataas na timeframe, magdagdag ng filter o mag-fit ng parameter. Ang sizing ng platform ang tahasang pinahintulutang pag-angkop: kumakatawan ang fixed_size=1 sa isang alokasyong kaugnay ng kapital, na sine-size sa entry sa 10% ng kasalukuyang equity ayon sa notional at niroround pababa sa precision ng dami ng instrumento. Panatilihin ang daming iyon hanggang exit; huwag magdagdag ng posisyon. Leverage ng config=1.0. Ang panimulang equity ay $100,000. Humihiling ang initialization ng source ng sampung araw na makasaysayang bar; panatilihin ang umiikot na buffer na katumbas ng 100-bar ArrayManager at huwag mag-trade hangga't hindi ito nai-initialize. Hindi lumilikha ng signal ang logging at mga event callback; wala ring ginagawa ang mga order at stop-order callback.

Nagbibigay ang submission ng mga executable na tuntunin sa entry at exit. Mas mahalaga ang hinihingi ng user na tapat na reproduksiyon kaysa mag-imbento ng ibang mekanismo para maabot ang diversity quota. Kulang sa kinatawan ang OKX sa 2.3% kumpara sa target nitong 5%, at pinapayagan ng strategy ang parehong direksiyon habang 82.6% long-only ang portfolio. Walang laman ang field ng konsentrasyon sa corpus, kaya hindi matitiyak ang pagiging bago sa antas ng instrumento. Ginagawang mas proporsiyonal ng ETH ang literal na limang-yunit-ng-presyong offset ng order kaysa sa murang altcoin. Sinusubok nito ang momentum sa paglawak ng volatility, hindi ang bigong mean reversion ng BTC Connors-RSI. Hindi pa beripikado ang ekonomikong kakayahang mabuhay; dapat hayaang mabigo ang mga default ng source nang walang pagsagip pagkatapos ng pagsusuri.

verification_loop: Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Nagbalik ang limang-araw na smoke test ng -0.139% bawat trade sa 38 saradong posisyon, na may PF 0.626. Dapat suriin sa pagsusuri ng buong kasaysayan ang turnover at pagbawi mula sa trailing stop; hindi sapat ang mga resultang ito para harangin nang mag-isa ang estratehiya. - [critical] Hindi napapanatili ng fallback para sa tumawid na stop ang pagpapatupad ng pinagmulan. Agad na tinatawag ng……Magpakita ng higit paMagpakita ng mas kaunti

verification_loop: Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Nagbalik ang limang-araw na smoke test ng -0.139% bawat trade sa 38 saradong posisyon, na may PF 0.626. Dapat suriin sa pagsusuri ng buong kasaysayan ang turnover at pagbawi mula sa trailing stop; hindi sapat ang mga resultang ito para harangin nang mag-isa ang estratehiya. - [critical] Hindi napapanatili ng fallback para sa tumawid na stop ang pagpapatupad ng pinagmulan. Agad na tinatawag ng _submit_exit() ang close_position(); walang nakatakdang latency ang OKX, kaya isinasagawa ng Nautilus ang transaksyon laban sa kasalukuyang merkado sa pagsasara ng decision bar, sa halip na sa pagbubukas ng susunod na bar. Bukod dito, sinusuri ng vn.py ang muling naaktibang stop batay sa saklaw ng susunod na bar: maaaring hindi ma-trigger ang long stop kapag nag-gap pabalik sa itaas nito ang presyo. Binabago ng walang-kondisyong market exit ang oras at mga kundisyon ng pag-trigger. Pinagmulan: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py (linya 163) — ayusin: Magpatupad ng mga nakabinbing stop na gaya ng sa pinagmulan at sinusuri batay sa kasunod na datos ng merkado, habang pinananatili ang kondisyunal na pag-trigger at pagpapatupad sa presyo ng gap. Magdagdag ng engine execution hook kung kailangan; huwag itong palitan ng agarang market close. Beripikahin ang mga kaso ng karaniwang pagtawid, gap-through, at gap-away sa parehong direksiyon. - [critical] Agad na maisasagawa ang mga limit ng BUY sa close+$5 at ng SELL sa close-$5 kapag isinumite sa kasalukuyang order book ng Nautilus na nakabatay sa presyo ng close. Dahil post_only=False at walang latency ang OKX, maaari silang mapunan sa signal bar. Itinutugma ng source backtester ang mga umiiral na order bago tawagin ang on_bar, kaya unang nagiging kuwalipikado ang mga bagong likhang limit sa kasunod na bar, habang ipinapatupad pa rin ang limitasyon sa presyo ng mga ito. Binabago nito ang mga entry, paghawak sa gap, at kasunod na estado ng trailing stop. Pinagmulan: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py (linya 144) — ayusin: Ipatupad ang pag-activate sa kasunod na bar gamit ang orihinal na limit price at daming itinakda para sa entry. Tiyaking walang entry na mapupunan sa signal bar at na pinipigilan ng gap sa susunod na bar na lampas sa limit ang fill sa pagbubukas, maliban kung umabot sa limit ang saklaw ng kasunod na bar.

Implementasyon

Salin ng vn.py AtrRsiStrategy na hindi na babaguhin, sa mga bar na ETHUSDT.OKX 1 minuto. Kapag ang ATR(22) ay nasa itaas ng karaniwang halaga nito sa loob ng 10 bar at ang RSI(5) ay nasa itaas ng 66 (o nasa ibaba ng 34), pumapasok ito gamit ang limit order sa pagsasara +/- $5 (o ang katumbas na kabaligtaran para sa mga short). Lumalabas lamang ito sa pamamagitan ng 0.8% trailing stop na nire-renew kada bar. Itinatakda ang laki ng bawat pagpasok sa 10% ng equity ayon sa notional.

Inaayos ng Iteration 3 ang kritikal na depekto ng QA. Tinatanggihan ng venue ang muling isinumiteng trailing stop na lampas na sa pagsasara ng bar (reject_stop_orders=True), kaya walang exit ang posisyon. Ngayon, kapag tumawid na ang antas ng stop (stop >= close para sa long, stop <= close para sa short), isinasara ng strategy ang posisyon gamit ang market order na reduce-only sa susunod na bar. Katugma ito ng vn.py, kung saan nagti-trigger ang ganitong stop sa susunod na bar sa presyong malapit sa open. Kung hindi, nakahimpil sa venue ang muling isinumiteng STOP_MARKET gaya ng dati. Bilang pananggalang, isinasara ng on_order_rejected ang posisyon kapag tinanggihan ang anumang STOP_MARKET. Hindi nagbago ang entry logic, mga indicator, sizing at bawat nakapirming parameter. Nagbangon din ng usapin sa gilid ang QA: mga 1-minutong bar, taker sa parehong leg, at hanggang 0.8% na ibinabalik sa bawat trade. Katangian ito ng mga nakapirming default ng source; ayon sa hypothesis, dapat itong hayaang mabigo nang walang pagsagip. Walang ginawang tuning.

Mga Resulta ng Beripikasyon

Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Nagbalik ang limang-araw na smoke test ng -0.139% bawat trade sa 38 saradong posisyon, na may PF 0.626. Dapat suriin sa pagsusuri ng buong kasaysayan ang turnover at pagbawi mula sa trailing stop; hindi sapat ang mga resultang ito para harangin nang mag-isa ang estratehiya. - [critical] Hindi napapanatili ng fallback para sa tumawid na stop ang pagpapatupad ng pinagmulan. Agad na tinatawag ng _submit_exit() ang……Magpakita ng higit paMagpakita ng mas kaunti

Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Nagbalik ang limang-araw na smoke test ng -0.139% bawat trade sa 38 saradong posisyon, na may PF 0.626. Dapat suriin sa pagsusuri ng buong kasaysayan ang turnover at pagbawi mula sa trailing stop; hindi sapat ang mga resultang ito para harangin nang mag-isa ang estratehiya. - [critical] Hindi napapanatili ng fallback para sa tumawid na stop ang pagpapatupad ng pinagmulan. Agad na tinatawag ng _submit_exit() ang close_position(); walang nakatakdang latency ang OKX, kaya isinasagawa ng Nautilus ang transaksyon laban sa kasalukuyang merkado sa pagsasara ng decision bar, sa halip na sa pagbubukas ng susunod na bar. Bukod dito, sinusuri ng vn.py ang muling naaktibang stop batay sa saklaw ng susunod na bar: maaaring hindi ma-trigger ang long stop kapag nag-gap pabalik sa itaas nito ang presyo. Binabago ng walang-kondisyong market exit ang oras at mga kundisyon ng pag-trigger. Pinagmulan: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py (linya 163) — ayusin: Magpatupad ng mga nakabinbing stop na gaya ng sa pinagmulan at sinusuri batay sa kasunod na datos ng merkado, habang pinananatili ang kondisyunal na pag-trigger at pagpapatupad sa presyo ng gap. Magdagdag ng engine execution hook kung kailangan; huwag itong palitan ng agarang market close. Beripikahin ang mga kaso ng karaniwang pagtawid, gap-through, at gap-away sa parehong direksiyon. - [critical] Agad na maisasagawa ang mga limit ng BUY sa close+$5 at ng SELL sa close-$5 kapag isinumite sa kasalukuyang order book ng Nautilus na nakabatay sa presyo ng close. Dahil post_only=False at walang latency ang OKX, maaari silang mapunan sa signal bar. Itinutugma ng source backtester ang mga umiiral na order bago tawagin ang on_bar, kaya unang nagiging kuwalipikado ang mga bagong likhang limit sa kasunod na bar, habang ipinapatupad pa rin ang limitasyon sa presyo ng mga ito. Binabago nito ang mga entry, paghawak sa gap, at kasunod na estado ng trailing stop. Pinagmulan: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py (linya 144) — ayusin: Ipatupad ang pag-activate sa kasunod na bar gamit ang orihinal na limit price at daming itinakda para sa entry. Tiyaking walang entry na mapupunan sa signal bar at na pinipigilan ng gap sa susunod na bar na lampas sa limit ang fill sa pagbubukas, maliban kung umabot sa limit ang saklaw ng kasunod na bar.

Magpatupad ng mga nakabinbing stop na gaya ng source at sinusuri laban sa kasunod na market data, habang pinananatili ang kondisyonal na pag-trigger at execution sa presyo ng gap. Magdagdag ng execution hook sa engine kung kailangan; huwag itong palitan ng agarang market close. Beripikahin ang karaniwang pagtawid, pag-gap lampas at pag-gap palayo para sa parehong direksiyon.

Hindi napapanatili ng fallback para sa tumawid na stop ang execution ng source. Agad na tinatawag ng _submit_exit() ang close_position(); walang naka-configure na latency ang OKX, kaya nag-eexecute ang Nautilus sa kasalukuyang market sa pagsasara ng decision bar, sa halip na sa pagbubukas ng susunod na bar. Bukod dito, sinusuri ng vn.py ang muling itinakdang stop laban sa range ng susunod na bar: maaaring hindi ma-trigger ang long stop kapag nag-gap pabalik sa ibabaw nito ang presyo. Binabago ng walang-kondisyong market exit ang timing at mga kondisyon ng pag-trigger. Source: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py

Ipatupad ang pag-activate sa kasunod na bar gamit ang orihinal na limit price at daming sineize sa entry. Tiyaking walang entry na mapupuno sa signal bar at na kapag nag-gap ang susunod na bar lampas sa limit, walang fill sa pagbubukas maliban kung umabot sa limit ang kasunod na range.

Agad na maisasagawa ang mga limit ng BUY sa close+$5 at ng SELL sa close-$5 kapag isinumite sa kasalukuyang order book ng Nautilus na nakabatay sa presyo ng close. Dahil post_only=False at walang latency ang OKX, maaari silang mapunan sa signal bar. Itinutugma ng source backtester ang mga umiiral na order bago tawagin ang on_bar, kaya unang nagiging kuwalipikado ang mga bagong likhang limit sa kasunod na bar, habang ipinapatupad pa rin ang limitasyon sa presyo ng mga ito. Binabago nito ang mga entry, paghawak sa gap, at kasunod na estado ng trailing stop. Pinagmulan: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py

Kasaysayan ng Iterasyon

Nabigo ang beripikasyon (Layer 1.5 — pagkakatugma ng hypothesis/config) [class=hypothesis_mismatch]: - Itinatakda ng optimization_plan ang leverage sa 1.0

Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=code_defect]: - [edge_concern] Sandbox: 38 trade sa loob ng 5 araw, avg_trade_return_pct -0.139%, PF 0.63, komisyon na 43% ng gross. Parehong nagbabayad ng taker fee ang entry (limit sa close±$5, kaya tumatawid ito at napupuno bilang taker) at exit (stop-market), humigit-kumulang 0.10% sa round trip. Ibinabalik ng bawat trade ang hanggang 0.8% sa pamamagitan ng trailing stop, at kailangang malampasan ng 1-minutong signal na RSI(5)>66 ang gastos na iyon……Magpakita ng higit paMagpakita ng mas kaunti

Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=code_defect]: - [edge_concern] Sandbox: 38 trade sa loob ng 5 araw, avg_trade_return_pct -0.139%, PF 0.63, komisyon na 43% ng gross. Parehong nagbabayad ng taker fee ang entry (limit sa close±$5, kaya tumatawid ito at napupuno bilang taker) at exit (stop-market), humigit-kumulang 0.10% sa round trip. Ibinabalik ng bawat trade ang hanggang 0.8% sa pamamagitan ng trailing stop, at kailangang malampasan ng 1-minutong signal na RSI(5)>66 ang gastos na iyon nang humigit-kumulang 7 beses kada araw. Asahan ang libo-libong trade sa humigit-kumulang 2,444-araw na kasaysayan. Pagkatapos ayusin ang stop, suriin muna ang gross return bawat trade laban sa minimum na 0.15%. Sa ganito karaming trade, ang PF na malapit sa 1 ay mangangahulugan ng maling sukat, hindi ng bagay na dapat i-tune. - [critical] Isinusumite muli ang trailing stop sa bawat bar bilang standalone na STOP_MARKET sa intra_trade_high*(1-0.8%) para sa long (o intra_trade_low*(1+0.8%) para sa short). Kasama sa antas na iyon ang high (o low) ng kasalukuyang bar. Kung magsara ang bar nang mahigit 0.8% sa ibaba ng sarili nitong high, nasa market na ang bagong long stop pag-isumite nito. Gumagana ang OKX backtest venue nang naka-on ang default na reject_stop_orders=True ng NautilusTrader; sa engine.pyx _process_stop_market_order, ang na-trigger na stop ay REJECTED, hindi napupuno. Palaging nagbabalik ng False ang should_exit(), kaya walang exit ang posisyon sa bar na iyon. Sa mga susunod na bar, maaari lamang tumaas ang antas ng stop (long) o bumaba (short), kaya nananatili ito sa market at patuloy na tinatanggihan hanggang makabawi ang presyo. Maaari itong patuloy na malugi nang walang limitasyon. Sa vn.py, nagti-trigger ang kaparehong stop sa susunod na bar at napupuno sa presyong malapit sa open. Samakatuwid, hindi maaasahang naipapatupad ang tanging exit ng hypothesis, ang 0.8% trailing stop. Tumatama ito mismo sa pabagu-bagong rehimeng ATR>ATR_MA na pinipili ng strategy, pati sa signal bar na may mahabang wick bilang unang stop bar. Hindi ito nagkataong nangyari sa 5-araw na sandbox (pinakamalaking lugi na -0.96% ng notional), pero mangyayari ito sa humigit-kumulang 2,444 araw ng 1-minutong ETH. (linya 186) — ayusin: Bago tawagin ang _submit_stop_market, tiyaking hindi pa tumawid ang presyo sa stop. Para sa long, suriin kung stop >= current_close; para sa short, kung stop <= current_close. Kung tumawid na, tawagin ang self._submit_exit(position) (market close na reduce-only), na tumutugma sa pag-trigger ng stop sa susunod na bar sa vn.py. Kung hindi, isumite ang nakahintong stop gaya ng kasalukuyan. Bilang pananggalang, subaybayan din ang mga tinanggihang stop order, halimbawa sa on_order_rejected, at isara ang posisyon. - [warning] Nakatakda sa takdang $5 ang entry_price_offset. Humigit-kumulang 0.13-0.33% iyon ng presyo ng ETH sa buong kasaysayan nito, kaya palaging tumatawid ang entry limit at napupuno bilang taker sa susunod na bar. Tapat ito sa source at hindi depekto. Tandaan na pinupuno ng vn.py sa min(limit, next open), at kahalintulad ang kilos ng Nautilus. (linya 133) — ayusin: Walang kailangang baguhin; itinala ito para sa analyst.

Bago tawagin ang _submit_stop_market, tiyaking hindi pa tumawid ang presyo sa stop. Para sa long, suriin kung stop >= current_close; para sa short, kung stop <= current_close. Kung tumawid na, tawagin ang self._submit_exit(position) (market close na reduce-only), na tumutugma sa pag-trigger ng stop sa susunod na bar sa vn.py. Kung hindi, isumite ang nakahintong stop gaya ng kasalukuyan. Bilang pananggalang, subaybayan din ang mga tinanggihang stop order, halimbawa sa on_order_rejected, at isara ang posisyon.

Muling isinusumite ang trailing stop sa bawat bar bilang hiwalay na STOP_MARKET sa intra_trade_high*(1-0.8%) para sa mga long (o intra_trade_low*(1+0.8%) para sa mga short). Kasama sa antas na iyon ang pinakamataas na presyo ng kasalukuyang bar (o pinakamababa). Kung magsara ang bar nang mahigit 0.8% sa ibaba ng sarili nitong pinakamataas na presyo, nasa merkado na ang bagong long stop sa oras na isumite ito. Gumagana ang OKX backtest venue gamit ang default na reject_stop_orders=True ng NautilusTrader; sa……Magpakita ng higit paMagpakita ng mas kaunti

Muling isinusumite ang trailing stop sa bawat bar bilang hiwalay na STOP_MARKET sa intra_trade_high*(1-0.8%) para sa mga long (o intra_trade_low*(1+0.8%) para sa mga short). Kasama sa antas na iyon ang pinakamataas na presyo ng kasalukuyang bar (o pinakamababa). Kung magsara ang bar nang mahigit 0.8% sa ibaba ng sarili nitong pinakamataas na presyo, nasa merkado na ang bagong long stop sa oras na isumite ito. Gumagana ang OKX backtest venue gamit ang default na reject_stop_orders=True ng NautilusTrader; sa engine.pyx _process_stop_market_order, tinatanggihan ang na-trigger na stop bilang REJECTED, sa halip na mapunan. Laging nagbabalik ng False ang should_exit(), kaya walang exit ang posisyon sa bar na iyon. Sa mga susunod na bar, maaari lamang tumaas ang antas ng stop (para sa mga long) o bumaba (para sa mga short), kaya nananatili ito sa merkado at patuloy na tinatanggihan hanggang makabawi ang presyo at lumampas dito. Maaaring patuloy na malugi ang posisyon habang walang hangganang naiipon ang lugi. Sa vn.py, nati-trigger ang parehong stop sa susunod na bar at napupunan sa humigit-kumulang presyo ng pagbubukas. Samakatuwid, hindi maaasahang naipapatupad ang trailing stop na 0.8%, na tanging exit ng hypothesis. Tumatama ito mismo sa pabagu-bagong rehimen na ATR>ATR_MA na pinipili ng estratehiya, kabilang ang signal bar na may mahabang wick bilang unang stop bar. Hindi ito nagkataong nangyari sa 5-araw na sandbox (pinakamalaking lugi na -0.96% ng notional), ngunit mangyayari ito sa loob ng humigit-kumulang 2,444 araw ng 1-minutong ETH.

Walang kailangang baguhin; itinala ito para sa analyst.

Nakatakda ang entry_price_offset sa $5. Katumbas iyon ng humigit-kumulang 0.13-0.33% ng presyo ng ETH sa kabuuan ng kasaysayan nito, kaya palaging tumatawid sa spread ang entry limit at napupunan bilang taker sa susunod na bar. Tapat ito sa pinagmulan at hindi ito depekto. Tandaan na pinupunan ng vn.py sa mas mababa sa limit price at susunod na presyo ng pagbubukas, at kahalintulad ang kilos ng Nautilus.

Buod ng Resulta

Dapat mapanatili ng tapat na salin ang pagiging karapat-dapat ng order sa kasunod na bar, kondisyonal na pag-trigger ng stop at execution sa gap, pati ang mga kalkulasyon ng indicator.

Matapos ang tatlong pag-ulit, tinanggihan ng Layer 4 QA ang salin dahil hindi tumutugma ang haypotesis: binago ng mga paglabas sa merkado na na-trigger kapag natawid ang stop ang oras at mga kondisyon ng pag-trigger sa orihinal, samantalang maaaring mapunan ang mga limit order sa pagpasok na maipapatupad agad sa bar ng signal. Ang mga pagkalugi sa paunang pagsusuri ay usapin sa bentahe sa pangangalakal, hindi isang hiwalay na hadlang.

Isalin ang strategy na ATR/RSI na itinakda bilang default sa source ng vn.py para sa ETHUSDT.OKX na mga perpetual bar na tig-isang minuto, habang pinananatili ang mga signal at order nito at itinatakda ang laki ng mga entry sa 10% ng equity gamit ang leverage na 1.0.

Naitala ng limang-araw na smoke test para sa beripikasyon ang -0.139% bawat trade sa 38 saradong posisyon, na may profit factor na 0.626. Hindi naisagawa ang buong backtest, pag-optimize, pagsusuri ng analyst, at pagsusuri ng panganib.

Dahilan ng Pag-abandona

verification_loop: Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Nagbalik ang limang-araw na smoke test ng -0.139% bawat trade sa 38 saradong posisyon, na may PF 0.626. Dapat suriin ng ebalwasyon sa buong kasaysayan ang turnover at ibinalik na kita ng trailing stop; hindi sapat ang mga resultang ito para harangin ang strategy. - [critical] Hindi napapanatili ng fallback para sa tumawid na stop ang execution ng source. Agad na tinatawag ng _submit_exit() ang……Magpakita ng higit paMagpakita ng mas kaunti

verification_loop: Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Nagbalik ang limang-araw na smoke test ng -0.139% bawat trade sa 38 saradong posisyon, na may PF 0.626. Dapat suriin ng ebalwasyon sa buong kasaysayan ang turnover at ibinalik na kita ng trailing stop; hindi sapat ang mga resultang ito para harangin ang strategy. - [critical] Hindi napapanatili ng fallback para sa tumawid na stop ang execution ng source. Agad na tinatawag ng _submit_exit() ang close_position(); walang naka-configure na latency ang OKX, kaya nag-eexecute ang Nautilus sa kasalukuyang market sa pagsasara ng decision bar, sa halip na sa pagbubukas ng susunod na bar. Bukod dito, sinusuri ng vn.py ang muling itinakdang stop laban sa range ng susunod na bar: maaaring hindi ma-trigger ang long stop kapag nag-gap pabalik sa ibabaw nito ang presyo. Binabago ng walang-kondisyong market exit ang timing at mga kondisyon ng pag-trigger. Source: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py (linya 163) — ayusin: Magpatupad ng mga nakabinbing stop na gaya ng source at sinusuri laban sa kasunod na market data, habang pinananatili ang kondisyonal na pag-trigger at execution sa presyo ng gap. Magdagdag ng execution hook sa engine kung kailangan; huwag itong palitan ng agarang market close. Beripikahin ang karaniwang pagtawid, pag-gap lampas at pag-gap palayo para sa parehong direksiyon. - [critical] Marketable ang mga limit na BUY sa close+$5 at SELL sa close-$5 kapag isinumite sa kasalukuyang order book ng Nautilus na nasa presyo ng close. Kapag post_only=False at walang latency ang OKX, maaari silang mapuno sa signal bar. Itinutugma ng backtester ng source ang mga kasalukuyang order bago tawagin ang on_bar, kaya nagiging karapat-dapat lang ang mga bagong ginawang limit sa kasunod na bar, habang ipinapatupad pa rin ang limitasyon ng presyo. Binabago nito ang mga entry, paghawak sa gap at kasunod na estado ng trailing stop. Source: https://raw.githubusercontent.com/vnpy/vnpy_ctastrategy/6ef76981624bf55b2ea978f8587f74d633aafc72/vnpy_ctastrategy/backtesting.py (linya 144) — ayusin: Ipatupad ang pag-activate sa kasunod na bar gamit ang orihinal na limit price at daming sineize sa entry. Tiyaking walang entry na mapupuno sa signal bar at na kapag nag-gap ang susunod na bar lampas sa limit, walang fill sa pagbubukas maliban kung umabot sa limit ang kasunod na range.

Pagsusuri

AtrRsiStrategy

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.