Blockchain elemzés Pythonnal

Most, hogy a kripto piacok erősen az egyet előre, egyet hátra elv szerint működnek (mindezt napi akár 10-15%-os elmozdulásokkal, amiket azért lehet rendesen nyerészkedni) és lényegében már mindenki enerváltan várakozik a augusztusi drámatagozatos óvodások előadására, ahol bal oldalon az UASF család mérhetetlen haragot táplál a jobb oldalon elhelyezkedő BitcoinABC család iránt, mely haragnak az eredeti okára már senki sem emlékszik, de a két család egy-egy sarja… oké, elkalandoztam.

Szóval a nagy rápihenésben végre van időm elővenni a kis házi barkács projektemet. Aki olvasta a self-info postomat, annak ismerős lehet az alábbi rész: “Amivel leginkább szeretnék foglalkozni, az ezen kettő témának (márhogy az Machine-Learning és a Cryptocurrency) összehozatala egy nagy projektté. Persze még messze a cél, de sikerül komolyabb eredményeket felmutatni egy olyan automatizált platform elkészítése kapcsán, ami segíthet hasznos predikciókat készíteni.

Ahol tartok:  az a blockchainek értelmezése és abból hasznos adatok kinyerése. Mivel mapság mindenki blockchain kóder akar lenni (már persze leszámítva azokat akik nem…), ezért gondoltam megosztok néhány nagyon egyszerű példát ami hasznos lehet azoknak akik tényleg csak most ismerkednek a témával. A továbbiakban két minta projektet mutatok be, az első egy egyszerű block explorer és statisztikáció, ami a legyűjti az utolsó 5 block (elmúlt egy óra) teljes tranzakció listáját és abból leválogatja azon bitcoin addresseket, amik az elmúlt egy órában a legtöbb bitcoint szerezték és azokat akik a legtöbbet vesztették el. A második projekt egy egyszerű address explorer, amivel le lehet kérdezni egy konkrét address teljes tranzakció történetét aggregálva blockonként.

Ezek a példák persze önmagukban kb semmit sem érnek, azonban beleillesztve ezeket egy keretbe nagyon is hasznosak lehetnek. Nézzük egy egyszerű példát:

  • Ismeretesek a nagyobb tőzsdék (kraken, bitfinex, pol, stb.) wallet addressei. Ha az elmúlt időszakban ezen addressek irányába nagy mennyiségű bitcoin áramlik olyan privát addressekről amik jelentősebb tranzakciós múlttal rendelkeznek, akkor jogosan lehet feltételezni, hogy ezeket azért rakják oda be, mert el akarják adni vagy fiatra/más kriptora váltani. Ez ugye azt jelentheti, hogy csökkenni fog az adott crypto pénz piaci kapitalizációja. Nyilván ez vice-versa is igaz.

Ennél több részletet egyelőre nem osztanék meg a projektről, de megígérem, hogy folyamatosan közölni fogom a részleteket itt a blogon, ahogy haladok előre. Előbb utóbb tisztulni fog a kép 🙂

Continue reading

NumPy (Python) és a Sharpe ratio barátsága

Kissé nagy fába vágtam fejszémet a Machine Learning cikksorozatom kapcsán, amikor az előző fejezetben azt ígértem, hogy hamarosan konkrét alkalmazást fogok bemutatni a gépi tanuláshoz. Már persze nem az okozza fejtörőt, hogy élő példát mutassak az alkalmazásra, hanem, az hogy miként lehet ezt normálisan a blog keretei között bemutatni. Az ezzel kapcsolatos cikk vagy iszonyatosan hosszú lesz és szinte lehetetlen lesz követni, vagy pedig olyan tudásra kell hagyatkoznom, amivel az olvasó vagy rendelkezik, vagy nem. Ez utóbbi eléggé lutri. Ezért néhány kitekintő cikkel mutatom be a NumPy alapjait, ami egyébként lényegében az összes python alapú tudományos számítási és machine learning megoldás alapját is adja.

A numpy néhány alap funkcióját egy nagyon tipikus pénzügyi metóduson keresztül (Sharpe ratio számítás) mutatom be: Ennek lényege, hogy valamilyen ismert kockázatmentes portfolióhoz/termékhez képest kerül mérésre egy adott eszközalap vagy részvénypiaci termék teljesítményének szórását. Sharpe ratio lényegében egy referencia értéket ad meg, ami egységesen mutatja az adott eszközalap kockázat-hozam mutatóját.
Continue reading