Noong Lunes, nakahanap ang AI research agent namin ng crypto futures strategy na may 4.1 Sharpe ratio. Pagsapit ng Huwebes, matapos naming bilangin ang mga eksperimento at pigilang mag-tune ang agent gamit ang iisang validation window, naging 0.8 ang resulta. Hindi nagbago ang strategy. Ang nagbago ay ang pagtatantiya namin sa nagawa ng paghahanap.
Isinagawa namin ito bilang maikling research diary dahil madaling ipayo ang “mag-optimize nang maingat,” pero mahirap itong isagawa kapag kayang magsulat ng code ng isang agent, magpatakbo ng backtest, tumingin sa score, at sumubok muli sa loob lang ng ilang minuto. Narito ang mga pumalya, ayon sa pagkakasunod.
Lunes: Magbigay sa agent ng tanong na may malinaw na hangganan
Hiniling namin sa agent na subukan ang isang payak na hourly trend idea sa isang likidong perpetual futures market: pumasok kapag tumawid ang maikling moving average sa mas mahabang moving average, magtakda ng laki ng posisyon batay sa nakapirming volatility target, at isara ang posisyon kapag lumitaw ang kabaligtarang signal. Tinukoy namin ang instrumento, mga petsa, fee schedule, kasaysayan ng funding, palagay sa execution, at mga saklaw ng parameter na maaari nitong galugarin.
Mula 2021 hanggang 2025 ang makasaysayang sample. Itinalaga namin ang 2021–2023 para sa development, ang 2024 para sa validation, at itinago ang 2025 bilang panghuling holdout. Nakatakda ang hatiang ito sa job configuration, kaya nababasa ng agent ang mga resulta sa development at ang mga score sa validation, pero hindi nito makuha ang mga return sa holdout.
Ang una naming pagkakamali ay pahintulutan ang 300 kombinasyon ng parameter sa iisang job nang hindi itinatala ang search budget bilang resulta ng pananaliksik. Ibinalik ng agent ang pinakamahusay na resulta: 9-hour fast average, 73-hour slow average, at 0.8% volatility target. 4.1 ang validation Sharpe nito. Alam naming maraming setting ang sinubukan ng agent. Hindi pa namin naitatala ang katotohanang iyon sa paraang imposibleng makalimutan.
Martes: Nagbago ang nanalo nang ulitin namin ang run
Inulit namin ang parehong job mula sa malinis na environment. Nagbago ang nangungunang setting, at bumaba sa 2.7 ang Sharpe nito. Naghatid ng na-update na funding series ang market-data cache sa unang run, samantalang gumamit ang muling pinatakbong job ng naka-pin na snapshot. Parehong nagsabing iisang saklaw ng petsa ang ginamit nila; isa lang ang may reproducible na bersyon ng data.
Itinigil namin ang paghahambing ng mga score at sinimulang itala ang buong eksperimento: code revision, data snapshot, fees, funding, mga setting ng execution, mga halaga ng parameter, at bawat pagsubok na inilunsad ng agent. Ipinakita nitong hindi misteryosong bentahe sa merkado ang 4.1. Galing iyon sa iisang setting sa paghahanap na may 300 pagsubok sa parehong taon ng validation.
Miyerkules: Itigil ang paghahanap bago buksan ang holdout
Inulit namin ang eksperimento gamit ang nakapirming data snapshot at mas maliit na grid na itinakda na bago magsimula: 24 na kombinasyon. Maaaring rangguhan ng agent ang mga ito batay sa development period na 2021–2023. Minsan lang namin ipinakita rito ang 2024 para mamili ito, pagkatapos ay ni-lock namin ang napiling mga setting at ang code.
0.8 Sharpe ang score ng napiling strategy sa validation. Sa nakatagong 2025 holdout, 0.3 ang score nito matapos isama ang taker fees, funding, at ang parehong 1-bar na pagkaantala sa execution na ginamit sa buong pag-aaral. Kapaki-pakinabang ang sagot na iyon. Hindi iyon patunay na kikita ang strategy sa isang live account.
Isang dagdag na obserbasyon mula sa linggong ito: mas matagal kaming nagkasundo kung ano ang ibig sabihin ng “isang pagsubok” kaysa sa ginugol namin sa pagsulat ng moving-average code. Itinuring naming pagsubok ang binagong set ng parameter, pati ang mga run na nagbago ng signal o tuntunin sa pagtatakda ng laki ng posisyon. Hiwalay na run record naman ang ginawa namin para sa bagong data snapshot o palagay sa execution, dahil maaari ring magbago ang mga ito sa ranggo.
Huwebes: Ano ang hindi na namin gagawin sa susunod
Hindi na namin uulitin ang unang job na walang malinaw na hangganan. Kailangan ng research agent ng search budget at talaan ng mga sinubukan nito, lalo na kung magagamit nito ang bawat resulta para magpasya kung ano ang susubukan sa susunod. Kailangan ding protektahan ang holdout laban sa di-pormal na pagsilip: kapag may nakabasa na ng resulta nito at binago ang strategy, nagiging panibagong validation set na ito.
Para sa maliit na paghahanap, sapat na ang simple at malinaw na talaan ng eksperimento:
| Itala | Bakit mahalaga |
|---|---|
| Mga bersyon ng code at data | Para pareho ang mga input at lohika sa muling pagpapatakbo |
| Bawat variant na sinubukan | Para maunawaan ang nanalo ayon sa lawak ng paghahanap |
| Mga gamit ng development, validation, at holdout | Para hindi palihim na magamit muli sa pag-tune ang panghuling score |
| Mga palagay sa fees, funding, at execution | Para ilarawan ng iniulat na resulta ang simulation na maaaring subukan |
Pagkabukas ng holdout, bumalik sa development na may bagong tanong sa pananaliksik at panatilihin ang lumang resulta bilang ebidensiya mula sa nakaraan. Huwag patuloy na pakinisin ang parehong strategy gamit ang period na nakita na nito.
Ginawa ng agent ang trabaho nito: mabilis itong naghanap at nakakita ng configuration na dapat suriin. Trabaho naman naming gawing malinaw ang paghahanap, panatilihin ang isang hindi pa nagagalaw na pagsubok, at ituring ang score bilang pagsukat na may kasaysayan. Hindi ang 4.1 o 0.3 ang pinakakawili-wiling resulta. Ang mahalaga ay nakita namin nang eksakto kung paano nabuo ang unang numero.
← Lahat ng post


