KUUKAUSITTAISET ARKISTOT: February 2016

Osinkosijoittajan tie on lopulta se oikea

27/02/2016

Mikä olisi järkevin tapa sijoittaa siten, että saadut tuotot toisivat leivän pöytään? Voisin tietysti ostaa kustannustehokasta osakeindeksiä ja realisoida sitä tarvittaessa. Toisaalta indeksin arvo saattaa heilua voimakkaasti. Sama ongelma on mielestäni kasvuosakkeissa. Niiden arvo saattaa romahtaa yhdessä hetkessä, jos kasvutavoite ei täyty. En myöskään ymmärrä kasvuosakkeiden arvostusta. Kirjoitushetkellä Netfilixin P/E oli 333x, miksei 400x tai 200x? Molemmat vaihtoehdot ovat yhtä hyvin perusteltavissa. Voisin sijoitta tasaista ja melko turvattua korkotuottoa tarjoavaan bondirahastoon. Itse ainakin haluan saada konkreettista palkintoa tehdystä sijoituksesta ainakin kerran vuodessa. Toisaalta tässä vaihtoehdossa häviää mahdollisuus kasvattaa sijoituksen tuottoprosenttia.

Olisiko järkevintä yhdistää osakeindeksin sekä bondirahaston parhaat ominaisuudet siten, että oma salkku muodostuisi laadukkaista kasvavaa osinkoa maksavista yhtiöstä? Oikein valitun laadukkaan yhtiön markkina-arvo pitäisi teoriassa liikkua samaan suuntaan kuin osakeindeksi. Lisäksi laadukas yhtiö maksaa (kasvavaa) osinkoa, minkä vuoksi sillä on bondisijoituksen piirteitä mutta osingon määrä voi kasvaa toisin kuin bondin koron. Kutsuttakoon tällaista sijoitusstrategiaa osinkosijoittamiseksi.        

Menetelmä on suosittu osakesäästäjien keskuudesta. Verkosta löytyy kasapäin blogeja (esimerkiksi hyvä sellainen), jotka keskittyvät osinkosijoittamiseen. Sivustojen punaisena lankana on muodostaa hajautettu salkku kasvavaa osinkoa maksavista yhtiöistä. Ajatuksena on saada kasvavaa osinkotuottoa, eikä niinkään kasvattaa salkun rahamääräistä arvoa. Tavoitteena voi olla ”taloudellisen riippumattomuuden” saavuttaminen siten, että osakesäästämisellä saavutetaan riittävän iso salkku jauhamaan osinkotuottoa, joka ylittää kuukausikohtaiset menot.

Oma empiirinen havaintoni on se, että normiosinkosijoittajan salkun paino on yleensä yhdysvaltalaisissa osakkeissa. Yleensä ne pystyvät kasvattamaan osinkoaan vuosi vuodella, koska jenkkiyhtiöt palkitsevat omistajiaan myös omien osakkeiden takaisinostoilla, jonka suuruus tarvittaessa joustaa osingon maksun edessä. Näin pystytään varmistamaan tasainen osingon kasvu. Puhutaankin osinkoaristokraattiyhtiöistä, jotka ovat jatkuvasti pystyneet lisäämään osingon määrää. Osinkoaristokraatiksi pääseminen vaatii yhtiöltä myös kannattavaa kasvua sekä liiketoiminnan stabiilisuutta lisäten niiden houkuttelevuutta sijoituskohteena.

Vastaavasti eurooppalaisilla yhtiöillä omien osakkeiden takaisinostot ovat vähemmällä käytöllä. Osingon maksu on enemmän riippuvaista tuloksesta, mikä todennäköisesti myös laskee jossain vaiheessa. Tämän vuoksi osingon yhtäjaksoinen kasvu on harvinaisempaa.

Laadukkaita osingonmaksajia metsästämässä

Koen sijoittamisen olevan enemmän maraton kuin sprintti, sillä tavoittelemani osinkosalkun rakentaminen vie vuosia. En ole asettanut mitään päivämäärätavoitetta vaan pyrin ostamaan osakkeita strategiani mukaisesti, jos rahaa jää säästöön palkasta. Mistä sitten löytyisi hyviä osingonmaksajia?

Osinkoaristokraatit

Sijoittaminen pelkästään osinkoaristokraatteihin kuulostaa alkuun erinomaiselta idealta. Lukemieni blogien perusteella monet näin tekevätkin. Itse suhtaudun tähän vähän kriittisesti, sillä yhtiön löytyminen osinkoaristokraattilistalta ei mielestäni ole automaattisesti tae hyvästä sijoituksesta. Vanhat meriitit eivät takaa loistavaa tulevaisuutta. Onko Coca-Cola hyviä sijoitus, vaikka sen nimi kyseiseltä listalta löytyy? Ei ainakaan lukujen valossa, sillä yhtiön liikevaihto ja käyttökate on laskenut joka vuosi 2011 – 2015. Laskeva kannattavuus ei tue mielestäni osingon kasvua tulevaisuudessa. Silti yhtiön kurssi on nyt lähellä kaikkien aikojen korkeinta tasoa, vaikka muu markkina on laskenut. Tämän ristiriidan voi ymmärtää järjellisesti vain sillä, että Coca-Cola kuuluu osinkoaristokraatteihin (ja löytyy Warren Buffettin salkusta, jota monet jostain syystä haluavat matkia).

Meuhkaamisesta huolimatta osinkoaristokraateista (ja Buffetin salkusta) löytyy monta hyvää osinkosijoitusideaa. Pitää yrittää seuloa vaan ne oikeat aristokraatit, jotka pystyvät säilyttämään kasvavan osingon myös tulevaisuudessa. Ostohetki on syytä ajoittaa seuraavaan markkinalaskuun. Alla on kerännyt alustavia ajatuksia sopivista ostokohteista, joita olen miettinyt. Ennen ostoa pitää luonnollisesti katsoa tarkemmin, miltä yhtiön luvut näyttävät ja mitä johto ohjeistaa kuluvalle vuodelle.

Yhdysvallat

ADM: Maataloustuotteiden prosessointiin ja valmistukseen erikoistunut globaaliyhtiö. Toiminta on globaalia ja syklistä. Kurssin alhainen arvostus sekä 4% lähentelevä osinkotuotto houkuttaa. Kannattavuuden lasku aiheuttaa paineita myös osakekurssille, minkä vuoksi ostohetkeä kannattaa malttaa ehkä odottaa.

Sonoco Products: Pakkausmateriaalien tuottaja. 2015 tulos näytti kasvavan ja yhtiö ohjeistaa 2016 kasvavaa EPSiä.  Osinkotuotto on noin 3,3%.   

PepsiCo: Toisin kuin Coca-Cola niin Pepsin kannattavuus on pysynyt melko stabiilina. Virvokkeiden lisäksi sipsien valmistusta.  Nykykurssilla osinkotuotto on karvan alle 3%.

Protecter and Gamble: Yhtiön valmistaa hyvillä brändeillä siivous ja hygieniatuotteita, joita tarvitaan varmasti myös jatkossa. Osinkotuotto on noin 3,3%.   

Johnson & Johnson: Globaali sairaalalaitteiden valmistaja. Nykykurssilla osinkotuotto on karvan alle 3%.

Täydellinen lista yhdysvaltalaisista osinkoaristokraateista löytyy oheisen linkin takaa.

Eurooppa

Sanofi: Ranskalainen lääkevalmistaja, joka toimii globaalisti. Nykykurssilla saa kohtuullisen osinkotuoton noin 4%. Kannattavuus on laskunut, mikä vähän mietityttää.         

Täydellinen lista eurooppalaisista osinkoaristokraateista löytyy oheisen linkin takaa.

Osinkorahastot

Olen havainnut, että rahastojen sisältöä tutkiskelemalla pystyy löytämään hyviä sijoitusideoita. Itseäni kiinnostavat erityisesti osinkorahastot. Käytännössä alkuun pääsee, kun googlaa esimerkiksi ”dividend fund australia”.  Ruudulle pamahtaa liuta Australialaisia osinkorahastoja, joiden salkun koko sisältö tai ainakin viisi suurinta yhtiötä on julkisesti nähtävissä. Alla joitain poimintoja, jotka ovat herättäneet kiinnostukseni. Tarkempi analyysi on luonnollisesti taas tarpeen ennen ostopäätöstä.

RenoNorden: Norjalainen yhtiö, joka tekee jätteenkäsittelyä kaikissa Pohjoismaissa. Toiminta on ollut kasvussa. Velkainen mutta tarjoaa hyvää osinkotuottoa.

KnowIT: Ruotsalainen IT-alan yhtiö, joka tehnyt muiden muassa Ahlstromin nettisivut. Q4/2015 kannattavuus on hyvällä tasolla. Osinkotuotto on hyvää.

Telstra: Johtava teleoperaattori Australiassa. Kurssi vaikuttaa menevän muun indeksin mukana. Liiketoiminta on melko stabiililta.

Primary Health Care: Australialainen Pihlajalinna, jonka kurssilasku on tehnyt houkuttelevan ostokohteen.

Extendicare: Kanaladaista vanhusten hoivapalvelua tarjoava yhtiö. Yhtiön liikevaihto on kasvu-uralla ja osinkotuotto noin 5,4%:ssa. Bonuksena on kuukausittainen maksettava osinko.

VIX30-strategiani volatiilissä markkinaympäristössä

20/02/2016

compass-429772_1280Markkinatunnelma on tällä hetkellä erittäin hapan. Vanhan viisauden mukaan laskumarkkinassa osakkeiden välinen korrelaatio lähenee yhtä. Tämä tarkoittaa, että pääsääntöisesti kaikkien osakkeiden hinta laskee riippumatta osakkeen alla olevasta tuloskunnosta (yhtiön fundamenteista). Vallitseva tilanne tarjoaa kärsivälliselle osakesäästäjälle mahdollisuuden ostaa ”laadukkaita” osakkeita halpuutettuun hintaan, kuten kulunut neuvo kuuluu. Itse olen tätä ”neuvoa” miettinyt käytännössä Ahlstromin ja Omega Healthcaren ostopäätöksen yhteydessä.

Helpointa olisi vaan olla sijoittamatta ja pitää rahat turvassa pankin säästötilillä. Kaikesta synkistelystä huolimatta en kuitenkaan usko, että markkinoiden nousu olisi poissuljettu vaihtoehto loppuvuoden osalta. Markkinoiden lasku ei tarkoita, että kaikkien osakkeiden hinta tippuu. On vaan löydettävä ne nousevat osakkeet. Lisäksi laskumarkkinaan tasaisesti sijoittamalla saa todennäköisesti ostettua myös pohjilta.

Laatuosakkeen oikea aikaiseen ostoon olen kehittänyt säännöstön, jota aloin soveltaa vuoden vaihteen markkinoiden syöksyn jälkeen. En kuitenkaan näe, että omaa strategiaani pitäisi dramaattisesti muuttaa. Pyrin sijoittamaan small cap value / dividend yhtiöihin, joiden liiketoiminta kasvaa ja yhtiö maksaa edes kohtuullista osinkoa. Laskumarkkinassa osakekurssin nousutrendivaatimuksen voi varmaan unohtaa eli riittää toiminnan ja kannattavuuden kasvu, minkä todentamiseen riittää yhtiön antama ohjeistus vuodelle 2016.

Ajallisen hajauttaminen pyrin toteuttamaan VIX30-strategialla (paremman nimen puutteessa), jossa osakkeen ostohetki ajoitetaan päivään, jolloin VIX (S&P volatility index) saa arvon noin 30 (+-2). 30 on valittu ihan satunnaisesti ja luku elää markkinakehityksen mukaan. Ajatuksena on kuitenkin ostaa silloin, kun VIX-indeksi on teknisen analyysin perusteella yliostettu.

Otsikkoa mukaillen sijoitusstrategiani nykyisessä (2/2016 – 5/2016) volatiilissä markkinaympäristössä johtaa ostoon, kun seuraavat ehdot täyttyvät yhtäaikaisesti:

  1. VIXin arvo on lähellä tai yli 30 (teknisen analyysin perusteella yliostettu). Ostettavan yhtiön kurssi on liikkunut alaspäin muun markkinan mukana, minkä ansiosta saan ostettua osakkeen halpuutettuun hintaan.
  2. Yhtiö ohjeistaa 2016 liikevaihdon ja kannattavuuden kasvua. Tämä on erityisesti ajankohtainen tällä hetkellä yhtiöiden tullessa ulos tulostensa kanssa.
  3. muut strategiani ehdot täyttyvät.  

Kohdan 1) tavoitteena on minimoida markkinariski. Kohtien 2) sekä 3) ajatuksena on ostaa ”laadukas” yhtiö eli hinnan lasku ei perustu yhtiön fundamenteissa tapahtuneisiin muutoksiin. Kolme sinänsä yksinkertaista ehtoa mutta ”laadukkaan” yhtiön löytäminen on mielestäni juuri nyt erittäin vaikeaa. Toisaalta osakemarkkina vaikuttaa olevan juuri nyt hyvin hermostunut, minkä vuoksi otollisia ostohetkiä pitäisi syntyä tiuhaan.

Case studina Omega Healthcaressa koin, että kaikki yllä mainitut kolme ehtoa täyttyivät. Yhtiön kurssi laski voimakkaasti mutta mielestäni yhtiön toiminnassa ei ollut tapahtunut muutoksia, jotka selittäisivät hinnan romahdusta. Lisäksi Q4/2015 tuloksen yhteydessä yhtiö ohjeisti kannattavuuden nousua.

Omega Healthcare

13/02/2016

11.2.2016 ostin 36 kappaletta hintaan 27,31 dollaria. Kokonaiskustannus oli noin 983 dollaria (870 euroa). Oman sijoitusstrategian mukaisesti pyrin ajoittamaan ostoni hetkeen, jolloin VIXin arvo on lähellä tai yli 30. Olen seurannut Omega Healthcarea (OHI) pidempään ja yhtiön osakekurssi on laskenut pitkään ja melko voimakkaasti johtuen kilpailijoiden julkaisemista vaisuista kasvunäkymistä sekä markkinoiden negatiivisesta sentimentistä. OHI:lta tuli 10.2.2016 markkinoiden sulkeuduttua Q4-raportti, jossa yhtiö ohjeisti kilpailijoista poiketen lievää kasvua jaettavalle kassavirralle. Korkean VIXin ja positiivisen ohjeistuksen myötä uskaltauduin ostaa putoavaa puukkoa.    

Omega Healthcare on kiinteistösijoitusyhtiö (REIT), jonka toiminta on keskittynyt pääsiassa vanhusten palveluasuntojen (skilled nursing facility) omistamiseen. Yhtiön sijoitussalkku käsittää yhteensä 932 operatiivista yksikköä, jotka ovat jakaantuneet tasaisesti 42 osavaltioon. Yhtiön tavoitteena on tarjota asumista mahdollisimman kustannustehokkaasta.         

Investment thesis

  • Kannattavuuden momentum:Yhtiö ennustaa FADin (Funds Available for Distribution) nousua vuodelle 2016. Väestön kasvu ja vanheneminen takaa markkinakasvun pitkällä aikajänteellä.
  • Hyvä osinkosijoitus: Osinkotuotto 0,57 dollaria kvartaalissa per osakkeelta vastaa noin 8 % dividend yieldiä.  Funds Available for Distribution oli 2,95 – 3,00 $, kun koko vuoden osinko olisi yhteensä 2,28 $ eli noin 76% FADsta tai kääntäen 24% turvamarginaali, jos ei päästäkään ennusteeseen.
  • Portfolio on jakaantunut hyvin sekä maantieteellisesti (44 osavaltiota) että operaattorien (suurin 7%) suhteen.
  • Verrokkeihin nähden OHI:lla alhaisin velkavipu.  Suurin osa veloissa on erässä vasta 2024 jälkeen.
  • Catalyst:  1) Seuraavan FEDin koronnoston siirtyminen pienentää OHIn kaltaisten korkeasti vivutettujen kiinteistösijoittajien korkokuluja. Kurssilaskua käsittääkseni selittää osittain korkokulujen oletettu nousu.  2) positiivisen tuloskehityksen jatkuminen tukee myös osakekurssia.   

Keskeiset riskitekijät

Liiketoiminta

  • OHIn merkittävin asiakas on Genesis Healthcare noin 8 prosentin osuudella. Osakekurssin perusteella Genesiksellä on ongelmia johtuen korkeasta velkataakasta. Toisaalta yhtiön kannattavuus näytti olevan ihan ok. Lukujen perusteella ei vaikuttanut heti menevän konkurssiin. Tämä riski kaikkien tiedossa, mikä on otettu osakkeen hinnassa huomioon.
  • En ymmärrä täysin USA:n sote-säädäntöä. Medicare/Medicaid muutokset eivät käsittääkseni vaikutta suoraan vuokriin vaan operaattoreihin, kuten yllä mainittu Genesis, joiden mahdolliset vaikeudet pienentävät vuokria ja voivat aiheuttaa luottotappiota vuokran menetyksen muodossa Omega Healthcarelle. Operaattorit laskuttavat valtiota Medicaren / Medicaid järjestelmän kautta.  
  • Kilpailijalla HCP:lla on ollut haasteita ja yhtiö näkee vaikeuksia markkinassa. Yhtiö kirjoittaa Q4/2015 osarissa:

The post-acute/skilled nursing (“SNF”) industry and HCRMC continued to experience a challenging operating environment in 2015, due to the ongoing change in reimbursement models which reduces rates and lowers census, the result of shorter lengths of stay. 

Riskiä pienentää se, että OHI toimii entuudestaan matalakatteisessa SNF-segmentissä.

Rahoitus

Omage_debtcomps

  • Velat per käyttökate korkea 4,7x mutta kiinteistöyhtiöksi melko maltillinen, jos suhteuttaa kilpailijoihin.  Yhtiön tavoite on 4,0x – 5,0x.
  • Yhtiö pääsi Investment Grade luokkaan ratingparannuksen myötä. S&P:n kommentit:

“The upgrade acknowledges Omega’s smooth integration of the merger with Aviv REIT that was completed on April 1, 2015, as well as an improved competitive position bolstered by increased scale and tenant diversification. We also acknowledge the company’s progress in further strengthening its balance sheet and reducing leverage”.

  • Korot nousevat USA:ssa, mikä kasvattaa OHIn korkokuluja, pienentää osingonmaksukykyä ja laskee osakekurssia.

Checklist

Kvalitatiiviset tekijät

  • Liiketoiminnan ymmärrettävyys: hallita vanhusten palveluasumisen kiinteistösalkkua. Yhtiön tuotot perustuvat vanhustenhoitoon erikoistuneilta operaattoreilta saatuihin vuokriin.     

Omage_market

  • Markkinoiden ennustettu kehitys: Myös Yhdysvalloissa vanhusten määrä kasvaa tasaisesti, mikä synnyttää luontaista kysyntää yhtiön tuotteille. Yhtiön toiminta on keskittynyt halvimpaan vanhusten asumispalvelusegmenttiin.   

 

Omega_comps

  • Markkina-asema ja kilpailutilanne:  Yhtiö on markkinajohtaja skilled nursing facility -segmentissä, jossa on yhtiön ydinosaaminen. Aviv-yrityskaupan jälkeen yhtiö on selvästi suurin alan toimija. Toisaalta portfolio on keskittynyt voimakkaasti yhteen segmenttiin. Alalla on edelleen paljon toimijoita, millä saattaa olla alentava vaikutus vuokrien tasoon. Yhtiö toteaa tilinpäätöksessään kilpailun edelleen kiristyvän.
  • Ennuste yhtiön toiminnan kehittymisestä:  Yhtiö ennustaa kassavirran kasvun jatkumista myös vuodelle 2016, mikä oli ostoni peruste. 2015 toimintaa on laajennettu tasaisesti pienin yritysostoin.

2016 ennuste: AFFO 3,25 -3,30 (3,08 2015) $ ja FAD 2,95 -3,00 (2,79 2015).

  • Johdon toiminta: Vaikea sanoa. Julkisen tiedon perusteella Aviv-kauppa näyttää menneen suunnitellusti (S&P rating). Aina luotettavien seekingalphan keskustelupalstojen mukaan pitäisi olla keskimääräistä pätevämpi johto.

Kvantitatiiviset tekijät

Omage_sales

  • Liikevaihdon kasvu ja stabiliteetti: Portfolio on jakaantunut hyvin sekä maantieteellisesti (44 osavaltiota) että operaattorien (suurin 7%) suhteen. 2015 yhtiö on onnistunut kasvattamaan toimintaansa selittyen pääasiassa Aviv-yritysjärjestelyllä mutta myös uusien yksiköiden avauksilla.
  • Yhtiön kannattavuus: Vaikea analysoida muuten kun, että dollarimääräisesti EBITDA, FFO ja FAD ovat kasvaneet vuosi vuodelta.

Omage_debt

  • Yhtiön velkaisuus ja sen kehitys:  Omega Healthcare tavoittelee velka per EBITDA tasoa 4x – 5x, mihin se on päässytkin viime aikoina.
  • Kassavirran generointikyky: Yhtiön FAD (Funds Available for Distribution) on kasvanut tasaisesti. 2016 FAD ennuste oli 2,95 – 3,00 $, kun koko vuoden osinko olisi yhteensä 2,28 $ eli noin 76% FADsta tai kääntäen 24% turvamarginaali, jos ei päästäkään ennusteeseen.
  • Osinkopolitiikka: Yhtiö on pystynyt kasvattamaan osinkoa vuodesta 2003 lähtien. Ostohetkellä osinkotuotto 0,57 euroa kvartaalissa per osakkeelta vastaa noin 8 % dividend yieldiä.
  • Yhtiön valuaatio: REITin valuaatio ei ole itselle tuttua. EV / Adjusted annualised 2015 EBITDA olisi noin 10,8x,  osake per 2015 FAD noin 10x ja P/E noin 21,5.

Tekninen analyysi

Omaga_TA

Kohti parempaa salkun hajautusta sekä sijoitusstrategian mittausta

06/02/2016

Hajauttaminen

Sijoittamisessa usein puhutaan hajauttamisen tärkeydestä. Tyypillinen neuvo on, että älä sijoita kaikkia munia samaan koriin. Ajatuksena on se, että yhden osakkeen heikko kehitys ei saisi tuhota koko salkun tuottoa. Mielestäni hajautuskeskustelu jää usein hyvin pintapuoliseksi, eikä sano juuri mitään käytännön tekemisen kannalta. Itse ymmärrän hajauttamisen korrelaation kautta tarkoittaen sitä, että osakkeet eivät saisi kovin vahvasti liikkua samaan suuntaan tietyn draiverin vetämä. Joskus kausaliteetin ymmärtäminen vaatii vähän miettimistä. Esimerkiksi öljyn hinnan romahtaminen vaikuttaa negatiivisesti Tikkurilaan sekä Stockmannin osakkeeseen samalla tavalla Venäjän talouden heikkouden kautta. Jotta korrelaatio olisi mahdollisimman heikkoa jopa negatiivista, tulisi salkkuyhtiöiden koostua usealta toimialta ja mieluiten vielä eri markkina-alueilta.

Osakesäästäjällä on harvoin käytössä matemaattisia malleja ja dataa, joilla omasta salkusta saisi näppärästi laskettua korrelaatiota yms. muita tunnuslukuja (oma tavoitteeni on luoda VBA:lla työkalut tätä varten). Hajauttamisen laadun kuvaamiseksi käytössä on kuitenkin menetelmä, jossa osakkeet luokitellaan toimialan sekä maantieteellisen alueen perusteella. Ajatuksena on se, että prosentuaalisesti salkussa yhdenkään toimialan tai alueen suhteellinen osuus ei saisi nousta kovin suureksi, jotta hajautus olisi mahdollisimman tehokasta.

Strategia

Joku voisi väittää, että salkku pitäisi hajauttaa yhtiön tyylin mukaan (pieni vai iso tai kasvu vai arvo). Koen sijoitustyylin olevan enemmän strateginen valinta. Small cap value momentum -strategian pitäisi tutkitusti tarjota parempaa tuottoa.

Jotenkin strategian toteutumista pitäisi kuitenkin pystyä mittaamaan erityisesti tilanteessa, jossa salkkuun lisätään uusi yhtiö. Olen ihmetellyt miten harva small cap value -rahasto todella noudattaa rahaston nimen mukaista strategiaa Morningstarin Style Matrixilla katsottuna. Musta Wärtsilä ei ole small cap value sijoitus. Tämä on yksi syy, miksi haluan itse tehdä omat sijoitusvalintani ajatuksella ”teen sen vittu sitten itse”.

Käytännössä tyylikartan muodostan Morningstarin tietojen perusteella. Tavoitteena on se, että style matrixista small cap valuen osuus pitäisi olla yli puolet. Morningstar ei mielestäni kuitenkaan aina luokittele yhtiötä oikein. Joskus yhtiö on omasta mielestäni small cap value, vaikka ei tyylikartassa osukkaan tähän ruutuun. Toinen ja ehkä tärkeämpi osa strategian toteutumisen seuraamista on mitata salkun keskeisiä taloudellisia tunnuslukuja. Salkun pitäisi keskimäärin toteuttaa checklistissä kvantitatiivisessa osiossa asettamiani taloudellisia tavoitetasoja.

Salkun profiilin kuvaus kuuden muuttujan avulla

Osakkeen luokitteluksi käytän pääasiassa Morningstarin tietoja. Yhtiön verkkosivulta pystyy poimimaan kunkin yhtiön tyylin sekä toimialan. On olemassa muitakin tapoja luokitella yhtiöitä kukin omalla tapaa oikein. Käytän kuitenkin systemaattisesti Morningstarin sivulta löytyvää tietoa sen helppouden vuoksi. Keskeiset tunnusluvut saa laskettua yhtiöiden taloudellisten raporttien kautta. Yhtiön maantieteellinen alue on yleensä yhtiön päälistauksen maa.

1 Keskeiset tunnusluvut

Salkun keskeisiä tunnusluja ei usein näe esitettävän rahastojen esitteissä. Mielestäni tämä on kuitenkin tärkein tieto salkun keskimääräisten taloudellisten indikaattorien ymmärtämisessä. Checklistin kvantitatiivisessa osiossa määrittelin sijoituskriteerini eri muuttujien kautta.  Olen asettanut salkun keskeiselle tunnusluvuille tavoitetasot. Uuden salkkuun lisättävän yhtiön tulisi täyttää ainakin kolme alla mainittua kriteeriä. Ajatuksena on se, että joskus korkeammasta kasvusta tai kassavirran generointikyvystä voi joutua maksamaan vähän kovempaa hintaa arvostusmielessä.

Liikevaihdon stabiliteetti ja kasvu: Tavoitteena portfolion keskimääräiselle liikevaihdon kasvulle on min. 2 %.

Yhtiön velkaantuneisuus: Tavoitteena portfolion keskimääräiselle Net debt / EBITDA tunnusluvulle on max 1,5x. Skaalataan prosenteiksi jakamalla sadalla.

Kassavirran generointikyky: Tavoitteena portfolion keskimääräiselle FCFF / Value tunnusluvulle on min 9 %.

Osinkopolitiikka: Tavoitteena portfolion keskimääräiselle dividend yieldille min 3%.

Yhtiön valuaatio: Tavoitteena portfolion keskimääräiselle EV / EBITDA –tunnusluvulle on max 6x. Skaalataan prosenteiksi jakamalla sadalla.

2 Tyylikartta

Style Box

Tyylikartasta näkee yhdellä silmäyksellä sijoituksen luonteen.  Se on jaettu yhdeksään ruudukkoon koon sekä arvostuksen/kasvun suhteen. Vertikaalinen asteikko kuvaa kokoa. Yhtiö voi saada kolme arvoa small, medium ja large. Morningstar luokittelee large cappiin yhtiöt, jotka edustavat 70 % kunkin markkinan arvosta. Vastaavasti mid cap -osakkeet muodostavat seuraavan 20 % ja small cap –yhtiöt loput.  Vaaka-akselin tyylin määrittelee osakkeen ennustettu ja historiallinen kasvu liikevaihdolla ja kannattavuudella mitattuna sekä arvostustaso P/E:llä mitattuna. Oma strategiani on sijoittaa pääasiassa small cap – value –yhtiöihin, joten tyylikartan avulla pystyn seuraamaan strategiani onnistumista

3 Toimiala

Portfolion hajauttamisella toimialan suhteen tavoitellaan salkkuyhtiöiden välisen korrelaation vähentämistä. Esimerkiksi taloudelliset suhdanteet vaikuttavat yhtiöihin eri tavalla. YIT:n osakekurssi nousee voimakkaasti noususuhdanteen aikana rakentamisaktiviteetin vilkastumisen myötä. Vastaavasti Orionin lääkkeiden kysyntään taloudellisten suhdanteiden ei juuri pitäisi vaikuttaa. Hajauttamisen lisäksi yhtiöiden ryhmitteleminen toimialoihin mahdollistaa näkemyksen ottamisen salkun toimialakohtaisia painoja muuntelemalla. Esimerkiksi uskomalla laskusuhdanteen alkamiseen kannattaa painottaa salkussa defensiivisiä osakkeita.

Käytän toimialakohtaisessa luokittelussa Morningstaria, joka listaa yhtiöt hierarkisesti kolmessa tasolla. Ylätasolla on Super sektorit. Ne muodostuvat sektoreista/toimialoista.  Vastaavasti alatasolla on vielä useita toimialaryhmiä, jotka kuuluva tiettyyn sektoriin.

Cyclical

Yleistaloudellinen kehitys vaikuttaa merkittävästi syklisen sektorin yhtiöihin. Näiden beta-kerroin ylittää tyypillisesti yhden. Alla on esitetty syklisen sektorin toimialoja.

– Basic Materials

– Consumer Cyclical

– Financial Services

Defensive

Defensiivisella toimialla olevat yhtiöt ovat yleensä immuuneja taloudellisille suhdanteille. Yhtiöiden palveluja ja tuotteita käytetään niin hyvinä kuin huonoina aikoina. Osakkeiden beta-kerroin on yleensä alle yhden. Alla on esitetty defensiivisen sektorin toimialoja.

– Consumer Defensive

– Healthcare

– Utilities

Sensitive

Herkän sektorin yhtiöt sijoittuvat defensiivisen sekä syklisen sektorin välimaastoon. Osakkeiden beta-kerroin on yleensä lähellä yhtä.  Alla on esitetty herkän sektorin toimialoja.

– Communication Services

– Energy

– Industrials

– Technology

 4 Maantiede

Maantiellinen hajauttamiseen on kaksi hyvää syytä. Ensinnäkin ainakin teoriaan mukaan rahoitusmarkkinoiden tai pörssien pitäisi edetä vauhtiin eri maissa, minkä vuoksi eri alueiden pörsseistä ostettujen osakkeiden välinen korrelaatio ei ole niin vahvaa verrattuna saman pörssin osakkeiden korrelaatioon. Tämä on siis vain teoriassa.  Yhtiötasolla monet suomalaiset firmat toimivat jo globaalisti, joten hajauttaminen on osin sisäänrakennettu valmiiksi osakkeisiin. Tämä selittää Helsingin pörssin nousun, vaikka Suomen taloudella menee heikosti. Yhtä kaikki salkun maantieteellinen hajauttaminen ainakin varmistaa sen, että sijoitukset eivät lepää yhden alueen taloudellisen kehityksen varassa.

Toiseksi maantieteellinen hajauttaminen mahdollistaa sijoitusuniversumin laajentaminen. Hyvien sijoituskohteiden löytäminen on siten entistä todennäköisempää.

5 Valuutat

Valuutat liittyvät vähän samaan asiaan kuin maantieteellinen hajauttaminen. Valuuttaposition säätö mahdollistaa pienen valuuttakauppavoiton tekemisen mielestäni suhteellisen pienellä riskillä. Käytännössä tämä tapahtuu siten, että vaihdan euron kohdevaluutaksi ajallisesti ennen tai jälkeen varsinaista vieraassa valuutassa tapahtuvaa osakeostoa. IB:llä negatiivinen valuuttatili ei minusta ole ollut ongelma matalan korkotason vuoksi, mikä mahdollista suotuisan kurssitason odottamisen.

 6 Salkun keskittyminen

70-luvulla Lawrence Fisherin ja James H. Lorien klassikkotutkimuksen mukaan 30 osakkeella saavutetaan 95% hajautusvaikutus, jos kaikki NYSEn osakkeet sisältävällä salkulla saadaan 100% hajautus. Mitä tulos ikinä tarkoittaakaan käytännössä mutta 30 osaketta kuulostaa hyvältä määrältä. Jos salkussa olevien osakkeiden lukumäärä ylittää tämän selvästi, on niiden seuraaminen melko työlästä. Jos joskus saan muodostettua 30 osakkeen salkun, niin yhden osakkeen paino ei saisi ylittää 10 prosenttia liian suuren osakekeskittymän välttämiseksi. Lisäksi viisi suurinta osaketta ei saisi muodostaa liian suurta osuutta salkusta. Keskittymän tunnistamiseksi pyrin esittämään viiden suurimman osakkeen painon koko salkusta.

Ajallinen hajauttaminen (6.2.2016 markkinatilanteessa)

Sijoitusten ostohetket kannattaa hajauttaa ajallisesti samalla tavalla kuin salkun sisältö maantieteen ja toimialan perusteella. Markkina-ajoitus on luonnollisesti vaikea haaste. Sijoittamisen ikivihreät neuvot, kuten osta halvalla ja myy kalliilla tai osta veren virratessa kaduilla, eivät käytännössä autamitään ajoittamisen onnistumisessa.

Voisiko kuitenkin olla järjestelmä, jota orjallisesti noudattamalla osakkeita saisi ostettua halvalla? Omaan ajatteluun järkevältä kuulosti systeemi, jossa sijoitusten ostohetki ajoitetaan VIX:in ollessa teknisen analyysin perusteella yliostettu. Tyypillisesti RSI on lähellä 70, VIXin arvo on lähellä tai yli 30 ja Bollinger Bandsin yläkäyrällä. Todellisessa elämässä tällöin ollaan tyypillisesti markkinatilanteessa, jossa veri virtaa kaduilla. Voin jo nyt kertoa, mitä tulee tapahtumaan: osakekurssit syöksyvät voimakkaasti, Kauppalehden otsikossa on Marc Faberin ennustukset ja sen hetkistä tilannetta verrataan Wall Streetin romahdukseen 1929 tai finanssikriisin 2008. Tällöin pitää vaan kärsivällisesti seurata VIXiä ja systeemin mukaan ajoittaa ostohetki raja-arvojen puitteissa.

Yllä kuvattu ajallinen hajauttamisen strategian on vähän tylsä, sillä kaupankäynti aktiviteetti on vähäistä ja ostohetkien välinen ajanjakso saattaa venyä pitkäksi. Systeemissä ostohetkien välissä on tarkoitus säästää ja kerryttää sotakassaa seuraavaa markkinaromahdusta varten. Tällöin säästömäärää pystyy myös säätämään oman elämän tilanteen mukaan. Odotteluajan voi käyttää hyväksi uusien sijoituskohteiden etsintään tai tehdä ihan jotain muuta kuin miettiä sijoittamista.

Yhteenvetona VIXiin perustuva sijoittamisen ajallisen hajauttamisen systeemi menee yksinkertaisuudessaan näin:

  1. Osta osakkeita, kun VIX on teknisen analyysin perusteella yliostettu. Tyypillisesti RSI on lähellä 70, VIXin arvo on lähellä tai yli 30 ja Bollinger Bandsin yläkäyrällä.
  2. Säästä ja etsi uusia sijoituskohteita, kun VIXin kehitys rauhoittuu.

Alla vielä graafisesti esitetty vastaava tilanne.

VIX_strategia

Lopuksi VIXiin perustuva malli vaikuttaisi soveltuvan hyvin nykyiseen markkinatilanteessa, jossa kurssinousu on jatkunut jo 7 vuotta ja volatiteetti on hyvin voimakasta. Selvää on, että 2011 – 2014 välillä kurssien mennessä vain ylöspäin malli ei olisi luonut hirveästi ostopaikkoja.

Seuraava askel oman PM-ajattelun kehityksessä

Seuraavaksi omalla to do -listalla on rakentaa VBA:lla salkkuohjelma, jossa salkun profiili on esitetty yllä kuvattujen kuuden hajauttamisen ulottuvuuden avulla. Tästä minua kiinnostaa tilastollisen menetelmien hyödyntäminen salkun hallinnassa. Aiheeseen pitää paneutua ihan ajan kanssa.  Jahka ymmärrys kasvaa, on ajatus kehittää omaa salkkuohjelmaa siten, että se sisältää myös tilastollisia ominaisuuksia.

Lähteet

http://corporate.morningstar.com/au/documents/MethodologyDocuments/FactSheets/MorningstarStyleBox_FactSheet_.pdf

http://corporate.morningstar.com/us/documents/methodologydocuments/methodologypapers/equityclassmethodology.pdf

http://www.swing-trade-stocks.com/vix.html

DIY sijoitustyökalut VBA:n avulla

01/02/2016

Verkossa on tarjolla erinäisiä työkaluja sijoittamisen tueksi. Osa työkaluista on ilmaisuudestaan huolimatta hyviä. Puhelimelta löytyy pari sovellusta, jota käytän aktiivisesti elämän overhead slottien aikana, kuten bussia tai ihmisiä odotellessa. iPhonen mukana tuleva osakesovellus on kelpo tapa pysyä reaaliaikaisesti kärryillä oman seurantalistan osakkeista sekä indeksien kehityksestä.  Myös Bloombergin puhelinsovelluksen kautta pysyy kärryillä markkinoiden tunnelmista.

En kuitenkaan ole löytänyt hyvää ja ilmasta ohjelmaa, jolla omaa osakesalkkua voisi hallita. Harrastesijoittajalla ei ole varaa maksaa kalliita Bloomberg tai Factset -lisenssiä, joilla pääsi tiedon äärelle ja saisi tarvittavat luvut erinäisillä plugeilla näppärästi Exceliin. On vaan otettava härkää sarvista ja tehtävät omat sijoitustyökalut.  Ajatuksena on automatisoida sijoitustyökalun toimintoja niin paljon kuin mahdollista. Onneksi Excelissä löytyy sisäänrakennettuna oma ohjelmointikieli VBA (Visual Basic for Application), joilla automatisoinnin pystyy helposti itse koodaamaan. Sijoittamisessa VBA:n käyttökohteita ovat tekninen analyysi, portfolion hallinta sekä osakevalinta (screener). Näihin teemoihin pyrin koodaamaan VBA:lla oman Excelpohjaisen työkalun

Ensimmäinen askeleeni VBA:n maailmaan oli teknisen analyysin työkalu. Netistä löytyy hyviä vastaavia työkaluja esimerkiksi http://stockcharts.com/. Keskeinen ongelma näissä ohjelmissa on se, että osakemaailma on rajoittunut Yhdysvalloissa listattuihin yhtiöihin. Tämä on erityisen suuri rasite minulle, sillä etsin osakkeita globaalisti. Lisäksi ohjelman käyttö omassa Excelissä on mielestäni tehokkaampaa, sillä tickerin pystyy vaihtamaan näppärästi soluviittausten avulla.

Suuri hyöty automatisoinnissa tulee mielestäni oman salkun päivityksessä. Aikaisemmin päivittelin kurssitietoja manuaalisesti, mikä johti lopulta siihen, että en jaksanut ylläpitää salkkutietoja ollenkaan. Nyt olen tammikuun aikana koodaillut uutta salkkutyökalua, jolla oman portfolion kurssitietojen päivitys pitäisi jatkossa onnistua nappia painamalla. Tulostuksena on salkun jakautuminen muiden muassa tyylin, toimialan sekä valuutan suhteen. Tähän työkaluun ajattelin palata myöhemmin.

Seuraava askeleeni VBA:n hyödyntämisessä on portfolion tilastollinen analysointi. Tällä viittaan Harry Markowitzin Modern Portfolio Theoryyn. Olen kokenut rahoituksen portfoliomallien olevan hyvin teoreettisia johtuen aiheen matemaattisuudesta. Kiinnostuin kuitenkin tilastollisista menetelmistä uudestaan, sillä nyt käsillä on omat osakkeet ja salkku sekä VBA:n avulla pystyy tekemään analyysin oikeilla kurssitiedoilla. Vaikka kurssien historiatiedot eivät ennustaisikaan tulevaan, uskon silti niillä olevan käyttöarvoa esimerkiksi osakkeiden välisen korrelaation kuvaamisessa.   

Kolmas VBAn sovelluskohde sijoittamisessa on oman osakescreenerin rakentaminen. Erityisesti momentumiin perustava screenerin rakentaminen vaikuttaa mielenkiintoiselta.  Tällä hetkellä minulla ei ole puutetta osakeideoista, minkä vuoksi en ole pitänyt kiirettä tämän hankkeen suhteen.

Osakekurssit Exceliin

investexcel.net oli ainoa hyvä sivusto, jonka löysin excelpohjaisen sijoittamisen tiimoilta. Tästä syystä ajattelin kontribuoida aiheeseen suomalaisen sijoittajan näkökulmasta jakamalla omia kokemuksia. VBA:n perustiedot ottaa haltuun esimerkiksi googlaamalla ”VBA” ja ”perusteet”. Keskityn alla VBA:n hyödyntämiseen sijoittamisessa ja erityisesti osaketietojen hankkimiseen.   

Ensimmäinen huomioitava seikka on se, että osaketiedot hakeva scripti ei tue suomalaisia maa-asetuksia päivämäärän sekä lukujen suhteen. En esimerkiksi saanut suoraan omaa teknisen analyysin työkalua toimimaan mutsin koneella, sillä maa-asetukset olivat siinä väärässä asennossa.

Regional settings     

Osakehakuscripti vaatii, että aika on esitettävä muodossa dd/MM/yyy muodossa. Suomessahan on normaalisti 31.1.2016. Itse en tätä pystynyt kiertämään muutoin kuin muuttamalla koneen maa-asetuksia. Scripti hakee luvut jenkkityyliin siten, että desimaalit erotetaan pisteellä. Jotta oma suomenkielinen excelinä osaisi tulkita osaketietoja oikein, täytyy pisteet korvata pilkuilla.       

Aluksi käytin Google Financea pohjautuvaa osakekurssien hakuscriptiä.  Tämä oli virhe, sillä Googlen kautta ei ainakaan silloin saanut eurooppalaisten yhtiöiden osaketietoja. Olin jo luovuttamassa koko projektia, sillä tarvitsen kaikkien maiden osaketietoja. Suureksi onnekseni Yahoo tarjoaa kaikkien itselle relevanttien maiden kurssitiedot. Käsittääkseni iPhonen osakesovellus hakee samasta paikasta tiedot, joten toivotaan palvelun säilyvän. VBA-koodissa pitää käyttää Yahoon tickereitä, jotka saa helposti haettua vaikka finance.yahoo.com kautta. Esimerkiksi Ahlstromin tickeri Yahoossa on  AHL1V.HE.

Ohessa kyheilemäni VBA-koodi, jolla osaketiedot saa Analysis-sheetille suomenkielisen Excelin ymmärtämään muotoon. GetData proseduuri hakee osto- ja myyntipäivien sekä tickerin perusteella. Osakekurssit Data-sheetille. TransferData proseduuri muuntaa osakekurssit analysoitavaan numeromuotoon Analysis-sheetille. Näiden kahden proseduurin ympärille voi rakentaa varsinaisen ohjelman.

Sub MainProgram()

    ‘*** CREATE DATA & ANALYSIS SHEETS

    Dim Data As Worksheet

    Dim Analysis As Worksheet

    Set Data = Sheets.Add(After:=Sheets(Worksheets.Count))

    Data.Name = “Data”

    Set Analysis = Sheets.Add(After:=Sheets(Worksheets.Count))

    Analysis.Name = “Analysis”

    

    ‘*** GET NOKIA’S STOCK DATA ***

    Call GetData(“25/01/2016”, “29/01/2016”, “NOK”)

    Call TransferData

End Sub

‘*** GET STOCK DATA ***

Sub GetData(startDate As Date, endDate As Date, Ticker As String)

    Dim qurl As String

    Dim nQuery As Name

    Dim lastRow As Integer

    Dim Msg As String

    Dim xName As Name

    Dim xTable As QueryTable

    

    Sheets(“Data”).Cells.Clear

    Sheets(“Data”).Select

    Sheets(“Data”).Range(“a1”).CurrentRegion.ClearContents

    qurl = “http://ichart.finance.yahoo.com/table.csv?s=” & Ticker

        qurl = qurl & “&a=” & Month(startDate) – 1 & “&b=” & Day(startDate) & _

            “&c=” & Year(startDate) & “&d=” & Month(endDate) – 1 & “&e=” & _

            Day(endDate) & “&f=” & Year(endDate) & “&g=” & Sheets(“Data”).Range(“a1”) & “&q=q&y=0&z=” & _

            Ticker & “&x=.csv”

QueryQuote:

    

    With Sheets(“Data”).QueryTables.Add(Connection:=”URL;” & qurl, Destination:=Sheets(“Data”).Range(“a1”))

    .BackgroundQuery = False

    .TablesOnlyFromHTML = False

    .Refresh BackgroundQuery:=False

    .SaveData = True

    End With

    Sheets(“Data”).Range(“a1”).CurrentRegion.TextToColumns Destination:=Sheets(“Data”).Range(“a1”), DataType:=xlDelimited, _

                                                       TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _

                                                       Semicolon:=False, Comma:=True, Space:=False, other:=False

    Sheets(“Data”).Columns(“A:G”).ColumnWidth = 12

    lastRow = Sheets(“Data”).UsedRange.Row – 2 + Sheets(“Data”).UsedRange.Rows.Count

    If lastRow > 2 Then

    Sheets(“Data”).Sort.SortFields.Add Key:=Range(“A2:A” & lastRow), _

        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

    End If

    

    For Each xTable In Application.ActiveSheet.QueryTables

        xTable.Delete

    Next

    For Each xName In Application.ActiveSheet.Names

        xName.Delete

    Next

    

    RemoveConnections

End Sub

‘*** Korvaa pisteet pilkuilla

Sub TransferData()

    Dim lastColumn As Integer

    Sheets(“Analysis”).Cells.Clear

    Sheets(“Analysis”).Select

    

    ‘Kirjoita otsikot    

    ActiveSheet.Range(“C3”).Value = “Date”

    ActiveSheet.Range(“C4”).Value = “Stock price”

    ActiveSheet.Columns(“C:C”).EntireColumn.AutoFit

       

    ‘Kopio osakekurssit

    If IsEmpty(Sheets(“Data”).Range(“E3”)) = True Then

        Sheets(“Data”).Select

        ActiveSheet.Range(“E2”).Select

        Selection.Copy

        Sheets(“Analysis”).Select

        ActiveSheet.Range(“D4”).Select

        ActiveSheet.Paste

        

        ‘Muuta numeroformaattiin

        ActiveSheet.Range(“D7”).Select

        ActiveCell.FormulaR1C1 = “=NUMBERVALUE(R[-3]C,””.””)”

        Selection.Copy

        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

        :=False, Transpose:=False

        Selection.NumberFormat = “0.00”

        Selection.Cut

        ActiveSheet.Range(“D4”).Select

        ActiveSheet.Paste

        

        ‘Kopio päivämäärät

        Sheets(“Data”).Select

        ActiveSheet.Range(“a2”).Select

        Selection.Copy

        Sheets(“Analysis”).Select

        ActiveSheet.Range(“D3”).Select

        ActiveSheet.Paste

        Selection.NumberFormat = “dd/mm/yy;@”

        

    Else

        Sheets(“Data”).Select

        ActiveSheet.Range(“e2”, ActiveSheet.Range(“E2”).End(xlDown)).Select

        Selection.Copy

        Sheets(“Analysis”).Select

        ActiveSheet.Range(“D4”).Select

        Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _

        False, Transpose:=True

    

        ‘Muuta osakekurssit numeroformaattiin

        ActiveSheet.Range(“D7”).Select

        ActiveCell.FormulaR1C1 = “=NUMBERVALUE(R[-3]C,””.””)”

        Selection.Copy

        Worksheets(“Analysis”).UsedRange

        lastColumn = ActiveSheet.Range(“D4”).SpecialCells(xlCellTypeLastCell).Column

        ActiveSheet.Range(ActiveSheet.Cells(7, 4), ActiveSheet.Cells(7, lastColumn)).Select

        ActiveSheet.Paste

        Selection.NumberFormat = “0.00”

        Selection.Copy

        ActiveSheet.Range(“D4”).Select

        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

            :=False, Transpose:=False

        

            ActiveSheet.Range(ActiveSheet.Cells(7, 4), ActiveSheet.Cells(7, lastColumn)).Select

            Selection.ClearContents

        

        ‘Kopio päivämäärät

        Sheets(“Data”).Select

        ActiveSheet.Range(“a2”, ActiveSheet.Range(“a2”).End(xlDown)).Select

        Selection.Copy

        Sheets(“Analysis”).Select

        ActiveSheet.Range(“D3”).Select

        Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _

            False, Transpose:=True

        Selection.NumberFormat = “dd/mm/yy;@”

    End If

End Sub

Sub RemoveConnections()

  Dim i As Long

  For i = ActiveWorkbook.Connections.Count To 1 Step -1

    ActiveWorkbook.Connections.Item(i).Delete

  Next i

End Sub

Lopuksi testausvaiheessa Excel jäätyi ohjelman puolessa välissä, kun päivitin kaikkien salkkuyhtiöiden osakekursseja. Ilmeisesti selaimen välimuisti täyttyy noin 10 osakehaun jälkeen (GetData proseduuria kutsuttu For loopissa). Ongelma ratkesi, kun IE:n välimuistin tyhjää kesken for loopin.            

Shell “RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255”