Zaključak: NE-GO. Model nema merljiv signal na našim podacima, a na pola univerzuma uopšte ne proizvodi validan izlaz. Na 644 nasumična slučaja iz naše istorije: pogađanje smera 0/15 ćelija tuče trivijalni baseline, tačnost magnitude 0/15. Na 4h — timeframe-u na kom radigrowth_threshold_cycle— model je značajno gori od baselina (−8 do −9.5 pp, p=0.007–0.016). Jedini obećavajući nalaz (1h, IC +0.18 uz kontrolu momentuma) nije se replicirao: na svežem uzorku obrnuo je znak u −0.150. Na BTC-kotiranim parovima do 13.8% predikcija je ≤ −100%, dakle negativne cene. Dopuna 2026-09-09: testiran je i 4× većiKronos-base(102.3M) nad identičnim slučajevima — pada na istom kriterijumu (0/10 ćelija sa značajno boljim IC-om), a na 1h je čak lošiji. Njegov jedini kandidat (4h/h=1, IC +0.315) ispario je na held-out skupu: IC +0.005, hit 50.0% naspram majority 60.9%. Testirana je i anti-pattern strategija (raditi suprotno od modela): 0/15 ćelija tuče baseline, jer „gori od baselina" nije isto što i „pouzdano pogrešan".
Kronos je otvoreni foundation model za sveće (Tsinghua, MIT licenca, AAAI 2026, arXiv 2508.02739): decoder-only nad diskretizovanim OHLCV tokenima, pretreniran na ~12B K-line zapisa sa 45 berzi. Testiran je Kronos-small (24.7M parametara, kontekst 512) — large (499M) je zatvoren.
Bitno pre svega: rad ne sadrži trading backtest. Prijavljuje RankIC, MAE volatilnosti i generative fidelity — statistiku prognoze. Autori u README-u sami pišu da to nije production trading sistem.
klines_cache, tri TF-a (1h/4h/1d)sample_count=5; iz jedne inferencije mereno pet horizonata (h=1,3,6,12,24)Sirov hit-rate je bezvredan podatak. Ako je tržište u uzorku raslo u 60% slučajeva, model koji uvek kaže „gore" ima 60% i nula znanja. Zato svaka ćelija ide protiv tri baselina:
| Metrika | Meri se protiv |
|---|---|
hit% | majority — uvek češći smer |
MAE | „predvidi nulu" — nema promene |
IC (Spearman) | nule, pa protiv trivijalnog momentum pravila |
Treći red je najoštriji: ako je MAE > MAE0, model je gori nego da ne kažeš ništa.
| TF | h | N | hit% | majority% | razlika | p | IC | MAE% | MAE0% |
|---|---|---|---|---|---|---|---|---|---|
| 1h | 1 | 241 | 48.1 | 56.4 | −8.3 pp | 0.009 | +0.078 | 0.78 | 0.70 |
| 1h | 3 | 241 | 50.6 | 51.9 | −1.2 pp | 0.699 | +0.074 | 1.39 | 1.23 |
| 1h | 6 | 241 | 54.8 | 50.2 | +4.6 pp | 0.156 | +0.107 | 1.78 | 1.76 |
| 1h | 12 | 241 | 56.0 | 55.6 | +0.4 pp | 0.897 | +0.226 | 2.56 | 2.47 |
| 1h | 24 | 241 | 55.2 | 53.5 | +1.7 pp | 0.605 | +0.195 | 5.53 | 3.55 |
| 4h | 1 | 200 | 55.5 | 55.5 | +0.0 pp | 1.000 | +0.057 | 1.61 | 1.23 |
| 4h | 3 | 200 | 51.0 | 57.0 | −6.0 pp | 0.087 | +0.042 | 2.66 | 2.25 |
| 4h | 6 | 200 | 47.0 | 55.5 | −8.5 pp | 0.016 | +0.038 | 4.11 | 3.63 |
| 4h | 12 | 200 | 45.0 | 54.5 | −9.5 pp | 0.007 | −0.035 | 6.55 | 5.41 |
| 4h | 24 | 200 | 47.0 | 56.0 | −9.0 pp | 0.010 | −0.074 | 12.69 | 7.75 |
| 1d | 1 | 203 | 51.2 | 50.2 | +1.0 pp | 0.779 | +0.045 | 8.19 | 3.17 |
| 1d | 3 | 203 | 52.2 | 51.7 | +0.5 pp | 0.888 | +0.004 | 12.55 | 6.27 |
| 1d | 6 | 203 | 52.7 | 51.2 | +1.5 pp | 0.674 | −0.064 | 19.12 | 9.38 |
| 1d | 12 | 203 | 51.2 | 51.7 | −0.5 pp | 0.888 | −0.054 | 27.55 | 14.03 |
| 1d | 24 | 203 | 52.7 | 59.1 | −6.4 pp | 0.063 | +0.018 | 34.73 | 22.02 |
Nijedna ćelija ne tuče majority. Nijedna ne tuče „predvidi nulu". Na 4h su tri ćelije značajno gore od baselina — a 4h je TF na kom radi naš najveći generator.
Na 1h/h=12 i h=24 IC je bio +0.226 i +0.195. Kontrolisao sam ga parcijalnom korelacijom na trivijalni momentum (trailing prinos poslednjih 6 sveća) — i preživeo je:
| h | IC Kronos | IC trivijalnog pravila | IC uz kontrolu | 2·SE |
|---|---|---|---|---|
| 6 | +0.107 | +0.169 | +0.066 | 0.130 |
| 12 | +0.226 | +0.227 | +0.176 | 0.130 |
| 24 | +0.195 | +0.131 | +0.181 | 0.130 |
Zanimljivo: trivijalno pravilo ima IC −0.227, dakle model ne ekstrapolira momentum nego predviđa povratak na sredinu — a to je ono što se stvarno dešava na tom horizontu.
Ali: to je 1 od 15 testiranih ćelija, na 2.7–2.8 σ, a Bonferroni prag za 15 poređenja je ~2.9 σ. Pokrenuta je potvrda na svežem uzorku — drugi seed, N=250, samo 1h USDT, jedna unapred određena hipoteza (bez problema višestrukog poređenja):
| h | Prvi uzorak (N=241) | Svež uzorak (N=250) | 2·SE |
|---|---|---|---|
| 12 | +0.176 | −0.150 | 0.127 |
| 24 | +0.181 | −0.025 | 0.127 |
Znak se obrnuo, i to preko praga značajnosti; hit-rate je istovremeno pao sa 56.0% na 47.2%. Udžbenički potpis lažnog nalaza. Da je zaustavljeno na prvom rezultatu, bio bi ugrađen meta-score feature bez ikakvog signala — sa „izmerenom" potvrdom iza sebe.
Prvi pooled rezultat je bio MAE 5.92% naspram 0.51% za „predvidi nulu" — 11× gore, i delovalo je kao čist zaključak „model je katastrofalno neprecizan". U raspodeli su bile predikcije od −123% i −221%, što je nemoguće — negativna cena. Sve na BTC-kotiranim parovima, gde cene reda 0.00000123 razbiju z-score normalizaciju preko konteksta.
| Kvota | med. greška h=1 | med. stvarni potez | predikcije ≤ −100% |
|---|---|---|---|
| BTC | 1.79% | 0.30% | do 13.8% |
| USDT | 0.45% | 0.36% | 0% |
Na USDT-parovima je izlaz uredan i istog reda veličine kao stvarni potez. Ceo agregat je obarala šačica slomljenih serija. Čitanje samo proseka dalo bi pogrešan zaključak u obe smere: precenilo bi neupotrebljivost na USDT-u, a potpuno prikrilo da na pola univerzuma model ne daje validan izlaz.
Mereno na našem hardveru (Intel Haswell-EP iz 2014, 48 logičkih jezgara, bez GPU):
| Konfiguracija | Vreme | Ubrzanje |
|---|---|---|
| small, pred_len=24, sample_count=5 | 8.04 s | — |
| sample_count 5 → 1 | 2.52 s | 3.2× |
| pred_len 24 → 12 | 1.28 s | 6.3× |
| kontekst 512 → 256 | 1.33 s | 6.1× |
| Kronos-mini | 0.74 s | 10.9× |
| mini + pred_len 12 | 0.39 s | 20.8× |
| threads 24 → 48 | 2.57 s | ništa |
| int8 kvantizacija | 3.21 s | sporije |
Dve negativne stavke su najinformativnije. Threadovi ne pomažu jer je 48 logičkih = 24 fizička + HT i posao je memorijski ograničen. int8 je sporiji od fp32 jer Haswell nema VNNI instrukcije, pa se kvantizacija emulira; na CPU-u sa VNNI (Cascade Lake+) ili AMX (Sapphire Rapids+) dala bi 2–4×. predict_batch postoji ali na CPU ne pomaže.
Realan teret nije 135 simbola nego broj signala koji stvarno opale — izmereno iz signal_events__growth_threshold_cycle: prosek 4.3, p99.3 = 30, maksimum 47 u istoj sveći. Najgori slučaj prema budžetu sveće:
| TF | small/pl24/sc5 | mini/pl12 |
|---|---|---|
| 4h | 2.6% budžeta | 0.1% |
| 1h | 10% | 0.5% |
| 15m | 42% | 2% |
| 5m | 126% ✗ | 6% |
| 1m | 630% ✗ | 31% |
Dakle 4h i 1h prolaze sa ogromnom rezervom bez ijedne izmene, a i 1m je izvodljiv sa mini + pred_len=12, bez kupovine hardvera. Prepreka je signal, ne brzina.
trades.entry_time je close-time, ne open. I dalje: od 7.924 zatvorena gtc trejda samo ~2.264 ulazi tačno na zatvaranju sveće — 71% su live signali opaljeni usred sveće. Ispravan anti-look-ahead rez je open_time <= entry_ms − interval_ms + 1, tačan u oba slučaja.
KronosPredictor.predict() interno usrednjava putanje (np.mean(preds, axis=1)), pa se pojedinačne moraju presresti da bi se dobila disperzija. Presretnute su u z-score prostoru — prvi izlaz je tvrdio prinos od +6171%. Rešeno denormalizacijom istim x_mean/x_std uz samoproveru: prosek presretnutih putanja mora se poklopiti sa zvaničnim izlazom do 1e-4.
Kronos-base, 102M) — dopuna 2026-09-09Prvobitno je testiran samo small, uz procenu da 4× veći model verovatno neće preokrenuti ishod. Ta procena je proverena, ne pretpostavljena. large (499M) je zatvoren, pa je base plafon besplatnog.
Dizajn je jači nego u prvom krugu: base prolazi kroz identične slučajeve kao small — isti simbol, isti trenutak, isti kontekst, ista budućnost. Smer se zato poredi McNemar testom (informaciju nose samo slučajevi gde se modeli ne slažu), a IC razlika uparenim bootstrap-om. Cena: 40 s po slučaju naspram 12 s za small.
| TF | h | N | hit small | hit base | majority | IC small | IC base | razlika IC (95% CI) |
|---|---|---|---|---|---|---|---|---|
| 1h | 1 | 83 | 49.4% | 48.2% | 63.9% | +0.048 | −0.120 | −0.169 |
| 1h | 3 | 83 | 45.8% | 42.2% | 50.6% | +0.063 | −0.137 | −0.196 |
| 1h | 6 | 83 | 49.4% | 56.6% | 53.0% | +0.059 | +0.073 | +0.011 |
| 1h | 12 | 83 | 59.0% | 47.0% | 54.2% | +0.316 | −0.010 | −0.322 [−0.617, −0.028] |
| 1h | 24 | 83 | 56.6% | 50.6% | 56.6% | +0.210 | +0.067 | −0.139 |
| 4h | 1 | 77 | 54.5% | 62.3% | 51.9% | +0.129 | +0.315 | +0.181 |
| 4h | 3 | 77 | 55.8% | 49.4% | 50.6% | −0.052 | +0.045 | +0.095 |
| 4h | 6 | 77 | 42.9% | 54.5% | 50.6% | −0.061 | +0.074 | +0.135 |
| 4h | 12 | 77 | 45.5% | 53.2% | 54.5% | +0.031 | +0.062 | +0.031 |
| 4h | 24 | 77 | 46.8% | 51.9% | 55.8% | +0.005 | +0.052 | +0.046 |
Kriterijum postavljen pre testa: base prolazi ako ima IC značajno iznad small-a u većini ćelija, ili ako tuče majority baseline na smeru. Ishod: 0/10 na prvom, a McNemar ne nalazi značajnu razliku smera ni u jednoj ćeliji. Jači model pada na kriterijumu.
Na 1h je base čak lošiji: na h=1 pogađa 48.2% naspram majority 63.9% (−15.7 pp, p=0.003). Vredi primetiti i red 1h/h=12: tu je small imao onaj nagoveštaj koji se nije replicirao (+0.316), a base ga uopšte ne vidi (−0.010) — treći nezavisan dokaz da je bio šum.
Na 4h je base u svih 5 ćelija bolji od small-a po IC-u, ali nijedna razlika nije značajna (svi intervali poverenja prelaze nulu).
Ćelija 4h / h=1 je bila jedina vredna pomena: base pogađa 62.3% naspram majority 51.9% (+10.4 pp, p=0.068) uz IC +0.315 (2.7 σ). Isti statistički profil kao nalaz small-a na 1h/h=12 koji je već jednom umro — jedna ćelija od deset, na ~2.7 σ.
Po pravilu granicni-nalaz-replikuj-na-svezem-uzorku pokrenuta je replikacija na held-out skupu (slučajevi 78–197, disjunktni sa otkrivačkima), sa jednom unapred prijavljenom hipotezom — dakle bez problema višestrukog poređenja:
| Skup | N | hit | majority | p | IC | IC/SE |
|---|---|---|---|---|---|---|
| Otkrivački (1–77) | 77 | 62.3% | 51.9% | 0.068 | +0.315 | 2.7 |
| Held-out (78–197) | 110 | 50.0% | 60.9% | 0.019 | +0.005 | 0.0 |
Potpuni slom. IC je pao sa +0.315 na +0.005 — nula. Hit-rate je iz „tuče baseline za 10.4 pp" prešao u „gubi od baselina za 10.9 pp", i to značajno (p=0.019). Nijedan drugi horizont na held-out skupu ne pokazuje ništa (IC od −0.109 do +0.023).
Ovo je drugi put u istom istraživanju da ćelija na ~2.7 σ ispari na held-out podacima — prvi put small na 1h/h=12, sada base na 4h/h=1. Dva različita modela, isti obrazac. Bez replikacije bi oba puta bio ugrađen feature bez signala, sa „izmerenom" potvrdom iza sebe.
Pošto je model na 4h bio značajno gori od baselina, logično je pitanje isplati li se kladiti protiv njega. Predikcija je invertovana (pred → −pred) i merena protiv istih baselina.
| TF | h | model | inverzija | majority | p (inv vs maj) | prinos inv | prinos „uvek long" |
|---|---|---|---|---|---|---|---|
| 1h | 12 | 56.0% | 42.7% | 55.6% | 0.000 (gore) | −0.62% | −0.26% |
| 4h | 12 | 45.0% | 55.0% | 54.5% | 0.887 | +0.06% | −0.20% |
| 4h | 24 | 47.0% | 52.5% | 56.0% | 0.319 | +0.94% | +0.14% |
Rezultat: 0/15 ćelija gde inverzija značajno tuče majority — a nekoliko gde je značajno gora. Isto i na base modelu (0/5). Razlika prinosa prema prostom držanju pozicije ima interval poverenja koji prelazi nulu u svih 15 ćelija, i to pre provizije.
Razlog je važan i lako se previdi: „gori od baselina" nije isto što i „pouzdano pogrešan". Ako tržište ide gore u 55% slučajeva a model pogađa 45%, inverzija daje 55% — tačno izjednačenje sa baselinom, nula prednosti. Model ne greši zbog anti-veštine koja bi se mogla iskoristiti, nego zato što ne hvata asimetriju tržišta. Obrtanje ne stvara informaciju koje nema.
Usputni nalaz, primenljiv izvan ove teme. Na 1d, h=24: majority baseline pogađa smer u 59.1% slučajeva — i gubi novac (−4.44%), dok prosto držanje pozicije zarađuje (+4.44%). Češći smer je dole, ali su potezi gore krupniji. Dakle tačnost smera i profitabilnost su razdvojene na našim podacima: strategija može pogađati smer u 59% slučajeva i biti gubitaška. Za projekat čiji je cilj „koji generator zarađuje", optimizacija hit-rate-a gađa pogrešnu metu.
Testirani su small (24.7M) i base (102.3M), oba zero-shot. large (499M) je zatvoren i ne može se testirati. Nije rađen fine-tuning na našim podacima (repo ima finetune/).
Fine-tuning je zaseban projekat sa sopstvenim rizikom preprilagođavanja — uz istoriju ovog projekta (meta-score v1 AUC ~0.5, offset sweep = šum, qcv2 overfit) najverovatniji ishod je isti zaključak, skuplje. Skaliranje sa 24.7M na 102.3M nije donelo ništa, što je najjači dostupan pokazatelj da problem nije u veličini modela.