Jūsu ieejas signāls, visticamāk, ir vismazāk svarīgā atpakaļtesta daļa. Varu paņemt vienu viduvēju impulsa noteikumu, atstāt nemainītus visus ieejas un izejas laika zīmogus, mainīt tikai funkciju, kas nosaka, cik kontraktu turēt, un pārvietot neto Sharpe koeficientu no 0.41 līdz 0.71, bet maksimālo kritumu — no 31% līdz 13%. Tie paši darījumi. Tie paši izpildījumi. Cita stratēģija.
Šāds apgalvojums cilvēkus kaitina, un tam ir pamats, jo tas nozīmē, ka lielāko daļu laika, ko veltāt atskata periodu un filtru sliekšņu pielāgošanai, pavadāt, strādājot ar mazāk svarīgo daļu. Tāpēc parādīšu faktiskos rezultātus un pēc tam atzīšu, kur kritiķiem ir taisnība, jo šim argumentam ir arī aplama versija, un ir vērts saprast, kuru no tām es izsaku.
Viens signāls, seši pozīcijas turēšanas paņēmieni
Signāls: ETHUSDT beztermiņa līgums Binance USDⓈ-M platformā, 1 stundas sveces; ieņemam garo pozīciju, kad 12 stundu EMA ir virs 96 stundu EMA, citādi paliekam ārpus tirgus, īso pozīciju nav. No 2022. gada jūlija līdz 2026. gada jūnijam. 431 pilns darījums. Taker komisija abās pusēs — 5.0 bps, finansējums tiek maksāts vai saņemts ik pēc astoņām stundām atbilstoši faktiskajai pozīcijai, slīde modelēta, ņemot vērā labākās cenas orderu grāmatā. Signāls ir apzināti garlaicīgs — izvēlējos to, jo neviens to neaizstāvētu, tāpēc tas ir tīrs testēšanas piemērs.
Visām tālāk redzamajām rindām ir vienādi ieejas un izejas sveču laika zīmogi. Atšķiras tikai pozīcijas lieluma noteikšanas funkcija.
| Pozīcijas lieluma noteikšanas noteikums | Neto Sharpe | Maks. kritums | Gada laikā tirgotais nomināls (× vidējā pozīcija) | Izmaksas % no bruto PnL | Maks. kredītplecs |
|---|---|---|---|---|---|
| Fiksēts nomināls $10k | 0.41 | 18.2% | 246× | 14% | 1.0× |
| Fiksēta daļa, 100% no pašu kapitāla | 0.44 | 30.8% | 251× | 15% | 1.0× |
| Apgriezti proporcionāli 20 dienu realizētajam svārstīgumam | 0.68 | 14.1% | 690× | 29% | 4.4× |
| 20% gada svārstīguma mērķis, līdzsvarošana reizi stundā, bez ierobežojuma | 0.71 | 12.9% | 1,180× | 41% | 6.3× |
| 20% svārstīguma mērķis, 20% tirdzniecības pārtraukšanas diapazons, kredītpleca ierobežojums 3× | 0.66 | 15.3% | 402× | 19% | 3.0× |
| Puse no Kelly kritērija, balstoties uz 60 dienu slīdošo vidējo un dispersiju | 0.52 | 24.6% | 830× | 33% | 8.1× |
Pievērsiet uzmanību atšķirībai. Starp sliktāko un labāko rindu ir 73% relatīvā atšķirība Sharpe koeficientā un 2.4 reižu atšķirība kritumā. Tagad atrodiet šajā datu kopā ieejas signāla parametru, kas maina Sharpe koeficientu par 0.30, vienlaikus neradot acīmredzamu pārpielāgošanu. Es meklēju. EMA pāra periodu garums maina to par aptuveni 0.12 visā ticamo vērtību diapazonā, un lielākā daļa šīs svārstības ir troksnis, ko ārpus parauga noturēt nevar.
Kāpēc apgriezti proporcionāls svārstīgumam tik labi izskatās, un cik liela daļa no tā ir īsta
Mehānisms nav noslēpums. Ja nomināls ir fiksēts, pozīcijas lielums nav korelēts ar realizēto svārstīgumu, tāpēc jūsu dolāros izteiktais risks katrā darījumā ir proporcionāls attiecīgās nedēļas svārstīgumam. ETH gadījumā šajā periodā 20 dienu realizētais svārstīgums svārstījās no 31% līdz 118% gadā. 2024. gada martā fiksēta nomināla tests uzņēma 3.8× lielāku risku dolāros nekā 2023. gada jūlijā — nevis tāpēc, ka signāls būtu pārliecinošāks, bet tāpēc, ka tirgus bija skaļāks. Gandrīz viss tā kritums koncentrējas augstākajā svārstīguma kvintilē. Apgriezti proporcionāla svārstīguma pozīcijas lieluma noteikšana novērš šo sasaisti, un tas patiešām uzlabo ienesīguma plūsmas profilu.
Taču daļa no Sharpe pieauguma ir mērījuma artefakts, un, ja neatdalīsiet abas daļas, vēlāk pieņemsiet sliktus lēmumus. Sharpe koeficients ir ienesīguma standartnovirze saucējā. Svārstīguma mērķēšana pēc definīcijas stabilizē ienesīguma standartnovirzi. Jūs tieši optimizējat saucēju. Noteikums, kas mērogo pozīcijas, lai sasniegtu nemainīgu ex ante svārstīgumu, uzlabos Sharpe gandrīz jebkurai ienesīguma plūsmai ar svārstīguma klasterizāciju, arī tādai, kurai nav nekādas priekšrocības. Es to pārbaudīju ar nejaušinātiem signāliem: nejaušiniet ieejas laika zīmogus, paturiet svārstīguma mērķēšanas pārklājumu, un Sharpe joprojām uzlabojas par aptuveni 0.06 salīdzinājumā ar fiksētu nominālu, ja bāzes vidējais rādītājs ir nulle. Tas ir maz, bet nav nulle, un to rada tikai mehānika.
Tāpēc, iekšēji salīdzinot pozīcijas lieluma noteikšanas noteikumus, Sharpe nekad nav vienīgais skaitlis pārskatā. Man vajag Calmar koeficientu, neto PnL uz vidējā ieguldītā nomināla vienību un bruto-neto rezultāta pāreju, jo šos trīs rādītājus kopā ir daudz grūtāk uzspodrināt ar triku, kas maina saucēju.
Svārstīguma aplēse ir modelis, un tajā rodas noplūde
Visbiežākais iemesls, kāpēc labs pozīcijas lieluma noteikšanas rezultāts izrādās viltots: svārstīguma aplēsē izmantota informācija no tās pašas sveces, kurai nosaka pozīcijas lielumu. Ja svārstīguma laikrindu aprēķināt ar centrētu logu, vai lietojat pandas noklusējuma `rolling().std()` pēc pārdatu izlases veidošanas, kurā iekļauta pašreizējā nepabeigtā svece, vai arī standartizējat, izmantojot visu izlasi, tad jums ir datu noplūde. To ir grūti pamanīt, jo svārstīgums ir noturīgs, tāpēc noplūde katrā atsevišķā rindā ir neliela un kapitāla līkne joprojām izskatās ticama. Tā ir tikai mazliet par gludu tieši tajās nedēļās, kurām ir nozīme.
Pirms rezultāts nonāk papīra tirdzniecības rindā, mūsu aģenti katram pozīcijas lieluma noteikšanas noteikumam pārbauda četras lietas:
- Datu pieejamība lēmuma pieņemšanas brīdī. Pozīcijas lielumam, ko izmanto sveces atvēršanās brīdī plkst. 14:00, jābūt aprēķināmam no datiem, kuru slēgšanas laika zīmogs ir ≤ 13:59:59.999. To pārbaudām, nejauši izvēlētos 200 lēmumu pieņemšanas punktos pārrēķinot pozīcijas lieluma laikrindu no saīsināta datu ietvara un salīdzinot atšķirības.
- Aplēses atskata periods ir īsts parametrs. 20 dienu un 60 dienu svārstīguma logi ir divas atšķirīgas stratēģijas. Atskato periodu iekļaujam virzītās testēšanas režģī līdz ar pārējiem parametriem. Ja rezultāts darbojas tikai pie viena loga garuma, tas liecina par trauslumu.
- Kredītpleca ceļš, ne tikai tā maksimums. Parādiet visu bruto kredītpleca sadalījumu. Iepriekš redzamais neierobežotais svārstīguma mērķa tests 4% no stundām pavadīja virs 5× — šāda informācija nekad neparādās kopsavilkuma tabulā, taču tā pilnībā nosaka, vai stratēģiju var īstenot.
- Pozīcijas lieluma jutīgums kā noturīguma pārbaude. Ja Sharpe sabrūk, mainot svārstīguma mērķi no 20% uz 25%, tad stratēģija nav pielāgota svārstīgumam, tā ir pielāgota kredītplecam, un jūs esat atradis priekšrocību, izvēloties konkrētu skaitli.
Kredītpleca ierobežojums nav riska pārvaldības piedeva — tā ir daļa no stratēģijas definīcijas. Binance ETHUSDT līmeņi samazina maksimālo kredītplecu, pieaugot pozīcijas nominālam, un līdz ar to pakāpeniski palielinās arī uzturēšanas maržas likme. Atpakaļtests, kas svārstīguma mērķa noteikumam pie $400k nomināla ļauj sasniegt 6.3×, apraksta pozīciju, ko birža neļaus turēt ar šādu maržu. Tabulā norādītais ierobežotais variants maksā 0.05 Sharpe koeficienta punktus, un tikai tas no abiem atbilst realitātei.
Nauda aizplūst līdzsvarošanas laikā
Pievērsiet uzmanību izmaksu kolonnai. Līdzsvarošana ik stundu, lai sasniegtu svārstīguma mērķi, deva labāko virsraksta Sharpe koeficientu, bet biržai atdeva arī 41% bruto PnL. Gada laikā tika tirgots nomināls 1,180× no vidējās pozīcijas, maksājot 5 bps katrā pusē, kā arī starpību un tirgus ietekmes izmaksas. Naivais risinājums ir līdzsvarot retāk, pēc grafika. Labāks risinājums ir tirdzniecības pārtraukšanas diapazons: mainīt pozīcijas lielumu tikai tad, ja pašreizējā pozīcija no mērķa atšķiras vairāk nekā par noteiktu slieksni.
20% diapazons samazināja gada laikā tirgoto nominālu no 1,180× līdz 402× — par 66% —, bet maksāja 0.05 Sharpe koeficienta punktus. Esmu to izmēģinājis ar astoņiem signāliem, un rezultāti atkārtojas: diapazoni no 15% līdz 25% saglabā lielāko daļu riska kontroles ieguvuma, samazinot darījumu apgrozījumu trīsreiz, savukārt viss, kas ir zem 10%, nozīmē komisijas maksu maksāšanu par kosmētisku precizitāti rādītājā, ko tāpat aplēšat ar 20 dienu logu. Nevarat līdzsvarot līdz trim cipariem aiz komata rādītāju, kura standartkļūda ir 15%.
Februārī mums bija tests, kurā aģenta sagatavotajā pārskatā 0.22 Sharpe koeficienta uzlabojums tika piedēvēts “uzlabotajam ieejas filtram”. Atšķirība bija viena rinda pozīcijas lieluma modulī. Filtrs nebija mainīts. Tagad lieku pārskatā pašā sākumā norādīt pozīcijas lieluma konfigurācijas hešu, jo rezultātu piedēvēšana prasa disciplīnu un modeļi, tāpat kā cilvēki, labprāt izstāsta glīti noformētu stāstu.
Kā papīra tirdzniecība pārbauda jūsu pozīcijas lieluma noteikumu
Tieši šeit atšķirība starp atpakaļtestu un papīra tirdzniecību kļūst vislielākā, un lielākoties pie vainas ir aritmētika. Pozīcijas lielums, kas reaģē uz svārstīgumu, izlasē svārstās 4 līdz 8 reižu amplitūdā. Abos galējos punktos rodas biržas ierobežojumi, ko atpakaļtests nemodelēja.
Mazajā galā: soļa lielums un minimālais nomināls. ETHUSDT beztermiņa līgumam minimālais daudzuma solis ir 0.001, bet minimālais nomināls — $5. Ja jūsu pozīcijas lielums zema svārstīguma režīmā ir 0.0004 ETH, atpakaļtests to tur, bet papīra tirdzniecības tests — neko. Tas izklausās pēc reta izņēmuma, līdz saprotat, ka svārstīguma mērķa noteikums vismazākās pozīcijas liek mierīgākajos tirgos, kur impulsa signālam bieži ir vislabākās ieejas. Lielajā galā: pozīciju limiti, maržas līmeņi un tas, ka 6× pozīcijai vajadzīga izolētās maržas disciplīna, kuras likvidācijas modeli neiekļāvāt atpakaļtestā.
Vienā gadījumā papīra tirdzniecības kapitāla līkne sešas nedēļas sekoja atpakaļtestam ar ne vairāk kā 3% atšķirību, pēc tam pēkšņi strauji novirzījās. Iemesls bija noapaļošana: `int()` saīsina līdz veselam skaitlim, nevis noapaļo līdz solim, un to orderu pozīcijas lieluma noteicējs izmantoja pozīcijām, kuru vidējais lielums bija 1.4 soļi. Atpakaļtests noteica pozīcijas lielumu nepārtrauktā telpā, bet reālais pozīcijas lieluma noteicējs katrā mazajā darījumā zaudēja 20-30% no paredzētā pozīcijas lieluma. Nekādu sarežģītu izpildes modeļu, nekādu stāstu par aizturi. Vienkārši saīsināšana.
Kur kritiķiem ir taisnība
Ir trīs pamatoti iebildumi, un negribu tos noklusēt.
Pirmais un svarīgākais: pozīcijas lieluma noteikšana sadala priekšrocību, bet nevar to radīt. Ja jūsu signāla bruto sagaidāmā peļņa pēc reālistisku komisiju un finansējuma izmaksu atskaitīšanas ir nulle vai mazāka, visi tabulā redzamie noteikumi rada zaudējumus — izsmalcinātākie vienkārši tos rada ar glītāku dispersijas profilu. Izvēlējos signālu, kam šajā periodā ir neliela, bet pozitīva neto priekšrocība. Izmēģiniet tos pašus sešus noteikumus ar signālu, kam neto rezultāts ir −1.2 bps par darījumu, un secība saglabāsies, bet visu perioda beigās kapitāls būs mazāks nekā sākumā. Pozīcijas lielums ir kaut kā reizinātājs. Vispirms vajadzīgs šis “kaut kas”.
Otrkārt, svārstīguma mērķēšanai ir reāls un labi dokumentēts trūkums: strauja izpārdošana liek samazināt kredītplecu, bet atlēciens — atkal palielināt. Strauja V veida kustība dod priekšroku fiksētam nominālam, reizēm ar lielu pārsvaru. 2020. gada martā akciju tirgos un 2024. gada augustā kriptovalūtu tirgus kritumā svārstīgumam pielāgota pozīcijas lieluma noteikšana cieta atkopšanās posmā. Manā četru gadu ETH periodā ir vairāk svārstīguma klasteru un pakāpenisku kustību, nevis V veida strauju virziena maiņu, un tas apgriezti proporcionālā svārstīguma rezultātus padara labākus. Citā periodā daļa secības mainās; ja es būtu sācis ar 2020. gada tabulu, mans arguments būtu vājāks.
Treškārt, pozīcijas lieluma noteikšanas noteikumu var pārpielāgot tikpat viegli kā jebko citu. Puse no Kelly kritērija ar slīdošām aplēsēm manā tabulā to uzskatāmi parāda: tas izskatās izsmalcināts un ir teorētiski pamatots, taču deva otro lielāko kritumu, jo trokšņainas ienesīguma laikrindas slīdošā vidējā aplēse ir bezvērtīga, bet Kelly kritērijs ir ārkārtīgi jutīgs pret to. Jebkurš pozīcijas lieluma noteikšanas princips, kura ievaddati ietver sagaidāmās peļņas aplēsi, pārmanto šīs aplēses kļūdu un to pastiprina. Noteikumi, kas izmanto tikai dispersijas aplēsi, ir daudz stabilāki, jo dispersija ir vienīgais moments, ko patiešām var aplēst, izmantojot četru gadu stundu datus.
Ko es no tā visa paturētu: ja atpakaļtesta rezultāts jūs pārsteidz, vispirms pārbaudiet pozīcijas lieluma moduli, pirms meklējat signālā kādu viltīgu paņēmienu. Un, ziņojot par Sharpe koeficientu, līdzās norādiet kredītpleca izmaiņas un izmaksu sadalījumu, jo skaitlis, kas tik ļoti atkarīgs no lēmuma par pozīcijas lielumu, nepavisam nav signāla īpašība.
← Visi raksti
