Ebben a bejegyzésben folytatjuk az utunkat a demokratizált (Tudatos KisBefektetők számára is elérhető) AI által támogatott data science alapú adatelemzés világában.
Emlékeztetőül:
- az adatelemzés, mint eszköz célja a mi esetünkben a hosszútávú (buy-and-hold) részvénybefektetésekhez szükséges fundamentális elemzés operatív támogatása, habár, ahogy a blog introja is sugallja, az itt leírtak a szélesebb értelemben vett üzleti döntésekhez is hasznosak lehetnek
- a tartalom továbbra sem a teljes folyamat oktatása (azt egy későbbi tanfolyam keretén belül tervezem), így itt csak a legelső lépést, az adatgyűjtést demonstrálom a SimFin példáján keresztül.
A szervesen idekapcsolódóelőző részben azt néztük meg, hogy a tipikus Tudatos Kisbefektető, aki kezelni szeretné a módszertani kockázatot is, de semmilyen data science és kódolási előképzettséggel nem rendelkezik, hogyan hívhatja segítségül a GenAI-t. Ott is rögzítettem, itt is megteszem, hogy annak ellenére, hogy műszakilag működhet az az út is, nem ajánlom senkinek. Fogsz látni később példát az AI (generatív és diszkriminatív) szerintem helyes használatára (az AI jelenlegi fejlettségi fokán). Ebben a részben azonban azt nézzük meg, hogy emberi (SimFin support) segítséggel hogyan néz ki az adatgyűjtés (pénzügyi adatok letöltése). Ezt rögtön össze is vetheted az előző részben leírtakkal.
Kezdjünk is bele! A cél tehát, hogy a részvényelemzés első lépéseként pénzügyi adatokat tudjunk letölteni egy erre szakosodott FinTech szolgáltatótól, a példa esetén a SimFin-től. Ahogy azt a korábbi részekből (ajánlott adatforrások, valamint a demokratizált pénzügyi adatgyűjtés) láthattuk, számos szolgáltató lehetővé teszi már az adathozzáférést, de ezek vagy eleve korlátozottak és/vagy a szolgáltató által képviselt befektetési irányzatra „szabottak”, vagy olyan kódolási ismereteket igényelnek, amivel az átlagos Tudatos KisBefektető nem rendelkezik. A SimFin azon kevesek közé tartozik, akik gondolnak erre a rétegre, és olyan támogatást adnak, amivel az adatletöltés (és sok minden más is) végrehajtható minimális IT-képzettséggel is. Előre szólok, hogy bár ezt az utat már akár ajánlani is lehet (SimFin felelősség) az előző részben leírtakkal szemben, igen hamar itt is belefuthatunk a módszertani kockázatba, tehát véleményem szerint azért elkerülhetetlen egy egyszerűsített data science és kódolási ismerethalmaz. Egyszerűen azért, hogy értsd, hogy mit csinálsz, és pláne, ha alapjaiban változtatni szeretnél valamin ahhoz képest, amit a szolgáltatód csinál, akkor ezt felelősséggel meg tudd tenni.
Itt is azzal indítunk, hogy a demo erejéig regisztrálunk az ingyenes SimFin accountra (ha még nem tetted volna meg). Az ingyenes accounttal korlátozott adatokat fogsz kapni, ezeket értelemszerűen NE használd konkrét részvényelemzéshez. Az adatelemzés gyakorlásához azonban ideálisak.:

A baloldalon megnyíló sávban leszaladsz a „Data API” menüponthoz, és kiválasztod.

Ezen a felületen megtalálod a személyesen számodra generált API-kódot, amit én most kitakartam. Te se propagáld ezt, hanem mentsd el.

Kattints a „bulk download page”-re, majd görgess le és válaszd ki a “Companies” adategyüttest.

Kattints a “Companies”-en belül a ”Python Code+” gombra:

…éééés újra helyben vagyunk (a saját API-kulcsomat kitakartam, ezért a fekete sáv):

Eddig minden pontosan úgy zajlott, mint az előző részben, és csakúgy, mint akkor, most is itt fogy el a tipikus Tudatos KisBefektető tudománya (és türelme). Ott azonban tisztán a GenAI-hoz fordultunk. Most a SimFin csapata vezeti a kezünket. Kiterjedt dokumentációval és videó tutorialokkal (ezeket a bejegyzés végén megtalálod) látnak el, ami alapján folytatni tudod a munkát, amihez – megdöbbentő módon – valamilyen Python környezetre lesz szükséged. Ehhez a SimFin is ajánl a saját gépedre letöltött megoldást (mint a GenAI az előző részben), de ahogy egy Kedves Olvasónk egy kommentben megjegyezte, „a helyi manuális pythonban fűrészelgetés” helyett gondolhatunk valamilyen felhőalapú megoldásra is. És a SimFin gondol is kifejezetten azokra, akik tényleg írtóznak még az „installálás” szótól is. Ők a Google ingyenes Colab szolgáltatását ajánlják (be kell jelentkezned a használathoz):

A Colab felhőalapú szolgáltatás, ami távoli szervereket ad a kezed alá – a kettő itt igazából együtt jár. A böngészőben futó Jupyter notebook felületen dolgozol, de a kód valójában a Google szerverein (virtuális gépeken, GPU-n, TPU-n) fut, nem a saját gépeden. A háttérinfrastruktúrát (hardver, driver, környezet) a Google adja és kezeli, te „csak” használod. A lényeg, hogy nincs telepítés és bonyolult beállítások a részedről, és ingyenesen (némi használati korláttal) férsz hozzá a GPU-erőforrásokhoz (nagyon gyorsan tudsz sok feladatot elvégezni).
Itt egy pillanatra álljunk meg! Ha ránézel a Colab felületén a parancsmezőre (kódcella), akkor nem lehet nem észrevenni az AI-támogatás felkínálását. Ezzel most nem lesz dolgunk, de előrevetíti a blog mondanivalójának a vezérfonalát és a következő bejegyzések egyikét: végül is hogyan használhatod felelősséggel az AI-t ilyen alkalmazásokhoz.

OK. Szóval itt a felület, ahol futtathatod azokat a Python API-kódokat, amivel pénzügyi adatokat tölthetsz le további elemzéshez. Feljebb már egyszer meg is nyitottuk a demónak választott “Companies” adategyüttes Python API-kódját, most emlékeztetőül ideteszem újra.

No, és itt már jön is az első dolog, ami miatt hangoztatom, hogy miért van szükség legalább alapvető data science és azon belül kódolási ismeretekre és/vagy AI-supportra. Ha ugyanis ezt a kódot lefuttatod, hibaüzenetre fogsz futni. Továbbra sem kell feketeöves Python-guruvá válni, de annyit érdemes felismerni egy ilyen kódegyüttesben, hogy a # után írt szöveg nem része a kódnak, hanem csak megjegyzések az olvasóknak. Tipikusan arról, hogy mit csinál a kód. Csak ebben az esetben pont a kód (SimFin csomag installálása) hiányzik, ami csinálna valamit. Nem azért, mert rossz, hanem mert feltételezik, hogy tudod (a tutorialban le is írják ezt a lépést). Tehát mielőtt a fenti teljes kódegyüttest futtatjuk, telepítsük a SimFin-t. A Colab felületén nyisd meg a parancsmezőt:

Majd írd be, hogy: !pip install simfin és nyomd meg a futtatás gombot (kis háromszög a parancsmező elején). Ha minden jól megy, ezt kapod:

Most már gond nélkül bemásolhatod és futtathatod az előzőekben a “Companies”-ra megadott Python API-kódot. Az új parancsmezőhöz egyszerűen csak kattints újra a „+ Code” gombra.

A végrehajtás után ezt kapod (jobb oldala a képnek). Az eredményfájlt pedig a Colab bal oldali sávjában, a fájlkezelőben találod.:

Ez ugye még a felhőben van, tehát vagy itt dolgozol majd vele tovább, vagy letöltöd a gépedre:

Ennyi. Idáig ugye eljutottunk az előző részben is az AI-vel. És megegyeztünk abban, hogy bár a most bemutatott emberi támogatáshoz hasonlóan az is teljesen korrektül működött, mégsem ajánlatos tisztán a mesterséges intelligenciára hagyatkozni, hiszen a fájlletöltés még csak az első lépés a számtalan további közül (adatelemzés folyamata). És bár elvben azok végrehajtására is képes az AI, de ha ezzel saját szakmai ismeretek nélkül kísérletezel, inkább katasztrofális kimenetele lesz, mint nem. A SimFin emberi támogatása azonban ezekben a további lépésekben is segít az indexeléstől kezdve a mélyebb Machine Learning alkalmazásokig bezárólag. Ez mind briliáns és a legtöbb felhasználó számára elégséges is, ám vedd észre, hogy itt meg tisztán erre az emberi segítségre hagyatkozva a módszertani kockázattal fogsz futni (függni fogsz a szolgáltatótól). Ha tehát olyan ultrakonzervatív vagy, mint én, akkor konstatálod, hogy a SimFin megoldását akár használhatnád is (figyelem, ez nem ajánlás a részemről, hanem csak személyes vélemény!), de szeretnél felvérteződni olyan eszköztárral, ami legalább részben biztosítja a függetlenségedet. Ehhez kell szerintem némi data science és kódolási alap (diszkriminatív AI), valamint a GenAI helyes használata.
Mindenesetre azok számára, akik itt megállnának és kísérleteznének, itt található a SimFin oktatási anyag (menj vissza ahhoz a lépéshez, mikor az adatszetteket listáztattuk):

Ha az oldalon lejjebb görgetsz, találsz videókat (szerintem ezekkel kezdj), majd lejjebb egy Tutorial-összesítőt, ami kezd az alapokkal (Basics), és ahogy látod, eljuthatsz egészen a neurális hálózatokig (Neural Networks) is. Ha már ebbe az irányba indultunk el, válaszd a Colab-tartalmat. Ha tehát csak ezt az anyagot dolgozod fel, önmagában sokat fogsz tanulni arról, hogy mit jelent az AI-val támogatott data science alapú adatelemzés kifejezetten a részvényelemzés céljából. Tervezek én is meríteni ezekből is, majd beszámolni róla, ám ahogy számtalanszor jeleztem, a mi utunk a teljes függetlenség, ezért számunkra ez csak egy állomás.

A blog indulásakor azt ígértem, hogy a tartalmat kiegyensúlyozom, és a tech és kvant fősodor mellett a tőzsdei befektetések legalább ennyire fontos emberi oldalára (pl. tőzsdepszichológia) is figyelmet fordítok. Ennek megfelelően jön most egy-két ilyen írás, aztán visszatérünk az AI-hoz. 😊
Jogi disclaimer: A blogban szereplő információk általános jellegű oktatási, tájékoztató célú tartalmak, nem minősülnek befektetési tanácsadásnak, befektetési ajánlásnak vagy adótanácsadásnak. Továbbá a poszt nem ajánlás a SimFin használatára. Bármely adatszolgáltató, így a SimFin használata is a te döntésed. A blog a részvénybefektetésekhez szükséges adatelemzési módszerekkel kapcsolatos személyes véleményemről szól, amelyhez szemléltetésként a SimFin adatgyűjtési folyamatát választottam ki. Módszertani személyes tapasztalatmegosztás és nem befektetési ajánlás.