📐 Metodika bez čiernej skrinky

Rank ponuky

Číslo od 0 do 100 pri každom inzeráte na mape aj na detaile. Hovorí, aká dobrá je tá ponuka podľa toho, čo o nej vieme — nie koľko nehnuteľnosť stojí a nie či sa ti bude páčiť. Celý vzorec je na tejto stránke a nižšie si ho môžeš prekliknúť.

Čo rank je

Zhrnutie šiestich merateľných vecí: cena voči trhu v okolí, úplnosť údajov, fotka, popis, čas v ponuke a pohyb ceny.

🚫

Čo rank nie je

Nie je to odhad hodnoty ani odporúčanie kúpiť. Nevie o ťarchách, stave rozvodov, susedoch ani o tom, ako je v byte počuť električku.

⚖️

Prečo mu možno veriť

Ku každému ranku ide aj dôveryhodnosť — koľko percent váhy sme vedeli reálne vyhodnotiť. Rank 78 z 55 % dát je iné číslo než 78 z 90 %.

🔁

Rovnaké číslo všade

Rank počíta backend jedným vzorcom pre mapu aj pre web. Stránka si nič nedopočítava — inak by tá istá ponuka mala dve čísla.

Šesť zložiek a ich váhy

Váha platí len vtedy, keď na zložku máme dáta. Ak nie, zložka zo vzorca vypadne aj s váhou — nedostane nulu.

ZložkaVáhaAko sa počítaKeď údaj chýbaPokrytie
Cena voči trhu35 Cena za m² inzerátu delená mediánom €/m² porovnateľných ponúk. Plný počet od 25 % pod mediánom nižšie, nula od 35 % nad mediánom vyššie. Pod 40 % mediánu je to nula — taká cena býva chyba, podiel alebo „dohodou". Bez ceny, bez plochy alebo bez dosť veľkého referenčného koša sa nehodnotí.
Úplnosť údajov25 Päť rovnocenných signálov: cena, plocha, izby (pri pozemku stavebnosť), stav a poloha. Poloha z GPS inzerátu ráta celá, poloha odvodená od stredu obce na polovicu. Nikdy nechýba celá — chýbajúci signál je nula bodov v rámci zložky.
Fotka10 Má inzerát použiteľnú fotku? Áno 10, nie 0. Ak portál fotky nedodáva vôbec (pod 5 % ponúk), zložka sa jeho inzerátom nehodnotí — je to náš výpadok, nie ich chyba.
Popis10 Dĺžka popisu, plný počet od 300 znakov. Ak je medián dĺžky popisov portálu pod 40 znakov, nehodnotíme — to nie je krátky popis, ale žiadny.
Čerstvosť10 Do 30 dní plný počet, potom lineárne k nule na 180. dni. Bez dátumu zverejnenia sa nehodnotí.
Vývoj ceny10 Zlacnená ponuka 10 bodov (predávajúci je ochotný hýbať sa), cena bez pohybu 5. Kým nemáme aspoň dva zápisy ceny, nehodnotíme. Pri novom inzeráte je to bežné.

Pokrytie v poslednom stĺpci je zo živej vzorky ponúk na tomto webe — ukazuje, ako často sa zložka vôbec dá vyhodnotiť. Práve preto rank bez dôveryhodnosti nedáva zmysel.

Vzorec — dva kroky

Prvý krok spočíta rank z toho, čo vieme. Druhý prizná, že to nie je všetko.

1. Prepočet na dostupné zložky

Sčítame body zložiek, ktoré sa dali vyhodnotiť, a vydelíme ich súčtom ich váh. Chýbajúca zložka nie je nula, len tam nie je.

rank_hrubý = 100 · Σ(váha · podiel) / Σ(váha)      … len cez zložky s dátami
dôvera     = Σ(váha) / 100                        … koľko váhy sme vedeli posúdiť

2. Stiahnutie k priemeru

Ponuka hodnotená z polovice zložiek nesmie v poradí preskočiť kompletne popísanú len preto, že to málo, čo o nej vieme, vyzerá dobre. Neznáme preto ťaháme k neutrálnej päťdesiatke — nie k nule (to by trestalo portál za náš scraper) a nie k stovke.

rank = dôvera · rank_hrubý + (1 − dôvera) · 50

Skús si to

Prepni čokoľvek a sleduj, ako sa rank aj dôveryhodnosť menia. Počíta to js/rank.js — ten istý vzorec, aký beží na backende.

na úrovni trhu

Voči čomu cenu porovnávame

Zložka „cena voči trhu" má najväčšiu váhu, tak nech je jasné, čo je ten trh.

Okres + typ + predaj/prenájom

Prvá voľba. Byt v Nitre sa porovnáva s bytmi v Nitre na predaj — nie s pozemkami a nie s nájmami. Kôš musí mať aspoň 5 ponúk.

Celoštátny medián typu

Keď okresný kôš nemá päť ponúk, spadneme na celoštátny medián rovnakého typu. Menej presné, ale stále to niečo hovorí.

Inak nič

Bez dosť veľkého koša sa cena nehodnotí. Predtým sa inzerát porovnával aj s košom, v ktorom bol sám — a vyšiel presne priemerne.

Jemnejší pohľad na to isté nájdeš na cenovej mape €/m² — tam je medián počítaný po zónach a pri každej vidíš, z koľkých inzerátov je a akú má odchýlku.

Čo rank nevidí

Rank pracuje s tým, čo je v inzeráte a v našich dátach. Nevie o ťarchách na liste vlastníctva, o exekúcii predávajúceho, o vlhkosti v pivnici ani o tom, že sa o dva roky vedľa začne stavať obchvat. Časť z toho pridávame na detaile nehnuteľnosti ako samostatné dátové vrstvy (záplavové zóny, radón, hluk, environmentálne záťaže, vybavenosť v okolí) — do jedného čísla ich zámerne nemiešame, lebo riziko sa nedá sčítať s dĺžkou popisu.

Rank tiež nie je odhad ceny. Ak chceš vedieť, koľko nehnuteľnosť reálne stojí, použi kalkulačku odhadu ceny, ktorá pracuje s mediánmi €/m² pre mesto a typ a s parametrami, ktoré doplníš sám.

Čo sa vo výpočte zmenilo

Prvá verzia ranku dávala nulu bodov za každý údaj, ktorý sme nemali. Vyzeralo to nevinne, ale v praxi to znamenalo, že zložka „cena voči trhu" — s najväčšou váhou — bola nulová pri 74 % ponúk, lebo im chýbala vyparsovaná plocha. Rank tak neporovnával ponuky, ale kvalitu nášho scrapera: inzertné portály s dlhým textom viedli, realitné portály so štruktúrovanými poľami prehrávali. Zároveň sa inzerát mohol porovnávať s mediánom koša, v ktorom bol jediný — teda sám so sebou.

Súčasná verzia chýbajúce zložky vypúšťa aj s váhou, priznáva dôveryhodnosť, vyžaduje aspoň päť ponúk v referenčnom koši, nehodnotí zložky, ktoré daný portál vôbec nedodáva, a cenu hlboko pod trhom už neberie ako výhru, ale ako podozrenie na chybu v inzeráte.