Googlen internethaun perusteella Suomessa ei juuri tunnuta harrastavan sijoittamiseen liittyvää VBA-koodailua. Ajattelin laittaa oman koodini jakoon pääsääntöisesti siitä syystä, että ehkä joku voisi siitä saada inspiraatiota ja ideaa oman ohjelman kehittämiseen (sitä muiden blogien lukeminen on minulle). Ohjelmasta on ollut myös itselle iloa niin ehkä muillekin. Viime vuoden keväällä aiempi versio ohjelmasta lakkasi toimimasta, kun yahoo muutti tai pikemmin esti tavan, jolla historialliset osakekurssit saa VBA:han.
Siitä lähtien olen silloin tällöin etsinyt netistä toimivaa koodin pätkää, jolla saisi haettu osakkeiden kurssitiedot exceliin. Ohjelman TA-kuvaajia en katsonut tarpeelliseksi muuttaa. Lopulta tärppäsi osaketietojen kanssa ja http://www.signalsolver.com/download-historical-stock-price-data-excel/ löytyi moduli, jolla yahoosta saa ulos osaketiedot vanhaan tapaan. Koodi on mielestäni monimutkaista, sillä yahoo on tehnyt tietojen siirtämisen mahdollisimman vaikeaksi. Omat taidot eivät olisi ikinä riittäneet vastaavan tekemiseen. Tekijät tuntuvat päivittävin koodia vielä tasaisesti, joten toivottavasti oma työkaluni pysyy nyt toimintakuntoisena.
Oman ohjelman hyödyt
Kirjoitin jo jokin aika sitten ajatuksiani teknisestä analyysistä ja sen hyödyistä sijoittamisesta. Verkosta löytyy toki laadukkaita teknisen analyysin sivustoja (kuten stockcharts.com). Koen kuitenkin oman TA-excelin hyödylliseksi eniten siitä syystä, että siihen saa eri maiden pörssien kurssitiedot yahoo.financen kautta. Monet TA- sivustot rajoittuvat vain tiettyihin pörsseihin. Toiseksi tickerin vaihtaminen nopeutuu huomattavasti, kun sen voi tehdä excelissä soluviittauksena. Tämä helpottaa selvästi usean osakkeen yhtäaikaista seuraamista. Kolmanneksi muokattavuus on paljon helpompaa. Esimerkiksi trendiviivan piirtäminen excelissä on helpompaa, kun nettipohjaisessa sovelluksessa.
Koodin toimivuudesta
Koodailen VBA:ta ihan harrastusmielessä, minkä vuoksi TA-ohjelman laatu on Nokian vanhojen puhelinten ohjelmien tasoa. Monista puutteistaan huolimatta ohjelma toimii pääosin ainakin omilla kotikoneilla (Win7&Win10). Suurimmat ongelmat syntyvät, kun yhtiö on ollut vasta vähän aikaa listautuneena. Sorvasin Signalsolverin koodin omaan vanhaan TA-ohjelmaan sopivaksi. Jotta osaketiedot saa haettu oikeassa formaatissa päivämäärän ja pilkun osalta, piti seuraavat asetukset laittaa voimaan:
- Singalsolverin koodin sisällä on ohje, joka piti asettaa voimaan. VBA DEVELOPER – > Tools -> References… MENU AND CHECK OFF “Microsoft WinHTTP Services”
- Windowsin Control Panel -> Region and Language piti laittaa niin, että Format -> English (UK) / Additional Settings -> Decimal Symbol “,”
- Excelin asetuksia pitu muuttaa niin, että Options -> Advanced -> Use System Sepator pitää ruksata pois päältä ja Decimal Separator pitää olla “,”.
Ohjelma lataaminen ja vastuurajoitus
Ohjelman voi ladata tästä Technical analysis tool_BETAv01092018
Netistä ladattavissa makroissa voi aina olla viruksia. Itse en luonnollisesti ole mitään haitallista koodia kirjoittanut (en edes osaa). Ohjelmassa käytetään kuitenkin Signalsolverin koodin pätkää, joka ei parhaan ymmärrykseni mukaan sisällä mitään haitallista. Tämä koodi on kuitenkin monimutkaista, joten haitallisen koodin olemassa oloa ei voi täysin sulkea pois. Ohjelman voi ladata ja käyttää omalla vastuulla.
Pikku vihje. Sen sijaan että keskityt tutkimaan excelin macroja, niin tutustu python koodaukseen. Voit hämmästyä, kun ymmärrät, miten paljon enemmän yksinkertaisella skriptikielellä voi todella tehdä finanssiasioita analysoidessa.
Mutta sinulla on hieno blogi! Nostan hattua. Itse en ole jaksanut pakertaa näin kovasti sijoitusasioista kirjoittaen.
Jatka samaa tietä.
Olen myös ymmärtänyt, että excel ei ole paras mahdollinen työkalu vaativampaan analyysiin. Pythonin opiskelu sinänsä olisi mielenkiintoista ja varmasti näppärämpi koodikieli. Ehkä tämä kevyt TA-työkalu menee vielä excelillä mutta astetta vaikeammat jutut (esim. tekniseen analyysiin perustuva screenaus) tarvisi jo muuta koodikieltä. Realistisesti omat vapaa-ajan tunnit ei juuri nyt oikein riitä uuden opetteluun.
Ajattelen, että sijoitusblogin kirjoittaminen on ensisijaisesti oman ajattelun työstämistä. On ollut itselle yllättävän tehokasta, minkä vuoksi suosittelen. Aluksi kokeilin kirjoitella pelkkään wordiin mutta siinä into lopahtaa helposti. Tietää ainakin itse, mitä hakee sijoittamiselta.
Moi! Hei mä just alottelen tutustumaan VBA maailmaan, mutta kiinnostaisi tietää miten tää excel toimii. Eli jos haluun jonkun suomalaisen osakkeet tuohon sheetille, niin mitä mun täytyy tehdä?
Sain signalsolverin koodipätkän toimimaan yllä olevan “Koodin toimivuudesta” ohjein. Pitää siis vähän muuttaa Windowsin ja Excelin asetuksia. Harmi kun pisteet ja pilkut sekä päivämäärät eivät ole UKssa/USAssa samassa formaatissa kuin meillä. Tietty suomalaisten yhtiöiden ticker-tiedot joutuu erikseen hakemaan finance.yahoo.comista, josta koodi kaivaa osakedatan. En ole löytänyt parempaakaan tapaa kurssidatan tuomiseen exceliin.
Toivottavasti saat koodin toimimaan ja innostot VBA-koodailusta. Siitä on mielestäni erityisesti hyötyä, jos haluaa sijoittamista ja yksittäisen osakkeen valintaan tarkastella koko portfolion näkökulmata.
Sen haluan vielä sanoa, että oma oppiminen oli paljon googlausta ja valmiin koodin metsästystä. Laitoin oman työkaluni jakoon, jos valmiin koodin näkemisestä olisi edes jollain tavoin hyötyä muille oppimisesta.