tisdag 12 juli 2016

Instant gratification - ge mig min fix! NU!

Satt och läste lite blandade privatspar-bloggar som så ofta (undrar för övrigt hur mycket tid man lägger på blogg-bläddring, borde kanske kolla i webläsarens historik... skulle kunna tjäna en förmögenhet på att arbeta den tiden istället, men då vet jag å andra sidan inte hur jag ska investera/spara pengarna eftersom jag inte läst bloggarna... vojne, vad komplicerat det blev nu :), och hamnade på två av de som jag oftast läser; Investerarfysikern (älskar det mekaniska, strukturerade, rationella) och Petrusko (genomtänkt, analytisk med sunt förnuft) och hittade deras inlägg som ur min synvinkel definierar dem och deras filosofi gällande investering och som stämmer väl överens med hur jag vill sköta mina investeringar:

http://investerarfysikern.blogspot.se/2016/07/mot-kvantinvestering-och-vidare.html
http://investerarfysikern.blogspot.se/2016/07/behover-man-gora-djupare-analyser.html
http://petrusko.blogspot.se/2016/07/kop-regelbundet-en-mycket-bra-strategi.html

Och allt det här sammantaget borde göra att man har en plan att följa, en modell att använda som kommer att stå sig i tusen år utan att nånsin behöva anpassas, fire-and-forget, och ändå....

...så öppnade sig den annars så mörka sommarhimlen, och ned stiger en ängel med en aura av vitt, strålande ljus omkring sig, som de ju gör ibland när investeringshimlen som mörkast ut. Klädd i sin vita, skimrande skrud och spelandes på sin gyllene harpa en så gudomligt vacker och förförisk melodi att ett mänskligt medvetande knappt kan föreställa sig något så harmoniskt - "Guld, guld, allt som glimmar är guld!" och det lät så underbart, så enkelt och så självklart. Förblindad av hennes vackra uppsyn och magiska melodier flöt jag iväg på mitt moln och loggade in på Avanza, gick in i min utdelningsportfölj och köpte SPDR Gold Shares ETF för 12 000 gulddubloner som hon bett mig göra i denna uppenbarelse. När man får investeringsråd av en ängel nedsänd från investeringshimlen räcker det med att man vet att guld är det nya svarta, inga andra fakta behöver kontrolleras, man låter bara magin flöda så kommer guldet att bli till mer guld som blir till mer guld som blir... 

Eller...?

[Rationella delen av hjärnan]
Men för HELVETE av trött jag blir på dig! Vakna ur din sockersöta, rosa fluffdröm, ditt känslodrivna miffo! Nu har du gjort det igen.... Det finns en bra anledning till att denna bloggen startade, och det var just av DEN HÄR anledningen. Det finns inga quick-fixes, sweet-deals, inga enkla snabba vägar till framgång, hur långt tid tror att det ska ta för dig att processa denna information?! Att undvika dina korkade, irrationella och förbannat dåligt underbyggda beslut är hela grunden till bloggens och min existens! Vill du ha snabba pengar kan du ju ta ut alla investerade pengar, gå ner till Pressbyrån och köpa 10000 Trisslotter och hoppas på att ditt guld finns där! Sen kan du komma krypandes tillbaka hit, så ska jag fortsätta förklara vad långsiktighet, konsekvent beteende och planering innebär!

[Belönings- och känslocentrum]
Men kom igen, jag ville ju bara ha lite extra godis, lite snabbt värdeskapande, nåt som inte tar så långt tid att uppnå, men som ger mig en kick nu, när jag behöver det! Så att jag ser att vi kommer framåt, att det ger nåt, allt detta lååååångsamma lååååångsiktiga sparande tråkar ihjäl mig... Kom igen, det enda det kostade var lite courtage, men du pajade allt genom att vara så jävla snabb på säljknappen! Vi hade ju lätt kunnat tjäna massor av göttiga pengar på den affären, och det hade gått snabbare än att du hade hunnit bygga en algoritm som beskriver hur man bäst flyttar armen på apan till människa vars hjärna vi sitter i, så att han snabbt kan riva av en bit toapapper och torka sig i arslet!

[Rationella delen av hjärnan] 
Lite courtage? LITE?!? Om du bara hade lärt dig räkna så hade du insett att Avanza tjänade 3st courtage a 30SEK/affär, alltså nästan 100SEK som är lika förlorade och borttappade som dina synapser...! Du om nån borde läsa om Instant Gratification, för det du söker är samma som vilken annan pundare som helst som vill ha en quick fix!

[Belönings- och känslocentrum]
Ääh, ta dig nånstans! Om du bara visste att all information som aphövvet vi sitter i tar in, processas FÖRST genom mig och mitt filter, och SEDAN skickas vidare till dig.... då skulle du kanske lugna dig lite och inse att du bara sitter med andrahandsinformation, bearbetad, förfinad och "förbättrad" av mig - MOI - det största och vackraste in denna apas hjärna...! Grattis till dig och att sitta sist i kedjan, att bara kunna ta emot det JAG ger dig, färdigtuggat och klart! Jag kommer att segra, prepare to die!

Fotnot:
Rationaliteten segrade trots allt och gjorde att innehavet i SPDR Gold Shares ETF såldes och istället köptes Western Asset Global High Income Closed Fund in för pengarna som var kvar.

Disclaimer:
Inga andra sinnen, känslor eller hjärnfunktioner tros ha kommit till skada efter denna inre mentala kamp.

torsdag 30 juni 2016

Automagi!


Problem

Ett av mina mål med min TrendValue-portfölj är att den ska berätta för mig när jag behöver agera så att jag slipper drabbas av känslomässiga, felaktiga köp- och sälj-transaktioner och undvika min egen idioti och okunskap, och ett steg i den riktningen är att ha ett glidande Stop-Loss på 20%. Tyvärr går det inte att hos Avanza sätta upp glidande Stop-Loss som gäller tills vidare, utan om jag fattat det rätt (förmodligen inte...) så går det bara att lägga det som en säljorder som gäller upp till 30 dagar. Jag hade ju helst sett att det gick att lägga en trigger eller alarm som är permanent och procentuellt räknad från All Time High sedan inköp, och triggern hos Avanza verkar bara vara som ett fast belopp. 







Som den SysAdmin jag är till vardags, så har jag därför försökt lösa uppgiften på egen hand med hjälp av ett Powershell script (JA, det finns bättre skriptspråk. JA, det finns säkert färdiga lösningar på mitt problem. JA, det kan GARANTERAT optimeras. NEJ, det finns inte på GitHub ... jag vet, men jag är nöjd med resultatet och bryr mig inte). Detta är ett as-is-inga-garantier-med-total-avsaknad-av-felhantering-som-potentiellt-kan-formatera-om-Internet-skript, men om du tror att det funkar och aldrig kommer att be mig om hjälp med ev fel, fuckups eller andra fullt möjliga scenarier som kan inträffa så är du VARMT VÄLKOMMEN att använda skriptet. :)

Lösning

I korta drag funkar den så här (jag vet att det är ap-fult, men det fyller sin funktion. Jag har tyvärr inga Powerpoint-skills, så ni får ta det som det är...):

  1. Skriptet körs var 5:e minut (som en Scheduled Task i Windows) och läser in data från CSV-filen med den senaste datan om alla aktierna. 
  2. Aktuell data om aktierna hämtas från Yahoo Finance baserat på ticker.
  3. Jämförelse mellan nuvarande pris och tidigare All Time High görs och uppdateras om det har stigit.
  4. CSV-filen uppdateras med ny data.
  5. Mail skickas OM någon aktie fallit mer än X% från All Time High (för närvarande kör med X=20%, såg en intressant artikel om Stop-Loss)







 













Text-filen

Semikolonseparerad text-fil med innehaven specificerade i form av:
  • companyName - namnet på företaget
  • ticker - stock ticker hos Yahoo Finance
  • price - aktuellt pris på aktien
  • allTimeHigh - All Time High pris på aktien sedan inköp, uppdateras vid varje skriptkörning.
  • athDeviation - beräknas som ((allTimeHigh - pris)/allTimeHigh * 100) och är den procentuella skillnaden mellan All Time High och det nuvarande priset på aktien. Uppdateras vid varje körning.
  • timestamp - tidsangivelse på senaste datat för en aktie, uppdateras vid varje körning
  • alertSent - är i utgångsläget satt till FALSE (skrivs manuellt in i filen när man skapar den), men sätts till TRUE om ett mail har skickats angående den aktuella aktien, för att undvika att scriptet mailar var 5:e minut om larm på samma aktie. Flaggan måste återställas till FALSE manuellt, men tanken är ju att man ska sälja aktien istället eftersom GSL har överskridits.
Screenshot på filen:

Skriptet

Det är väl inte så mycket att säga om, inga funktioner, inga in-parametrar går att använda... plain and simple, från start till slut.

"System Requirements" är att filen med aktie-datan finns ($filepath) och att du har tillgång till en SMTP-server/tjänst som går att skicka mailen via. Sedan får man ändra $trailingStopLossLimit till önskat värde, i mitt fall 20%

Det finns två Write-Host rader som skriver ut om allTimeHigh ökat eller är oförändrat, samt en rad i #Export delen som skriver ut allStocks och dess data. Dessa har jag enbart använt när jag byggt skriptet och de syns bara om man kör det i Powershell-konsollen, så de kan tas bort/kommenteras ut, om man schemalägger det. Enjoy!
 
# Variables and stuff
$alertList = @()
$allStocks = @()
$tempFilePath = "C:\scripts\fin\temp.csv"
$filePath = "C:\scripts\fin\yahoo_stockPrices.csv"
$trailingStopLossLimit = 20 #as percentage

# Get historical data from file
$stocksHistory = Import-Csv -Path $filePath -Delimiter ";"

# Loop through all stocks
foreach($stockHistory in $stocksHistory){

    # Construct URL
    $baseUrl = "http://finance.yahoo.com/d/quotes.csv?s="
    $dataSelection = "&f=snl1c4d1t1" #http://www.jarloo.com/yahoo_finance/, https://greenido.wordpress.com/2009/12/22/yahoo-finance-hidden-api/
    $url = $baseUrl + $($stockHistory.Ticker) + $dataSelection

    # Get current data from Yahoo Finance to CSV file
    Invoke-WebRequest -Uri $url -OutFile $tempFilePath
   
    # Import data from downloaded CSV file
    $stockCurrent = Import-Csv $tempFilePath -Delimiter "," -Header Ticker, CompanyName, Price, Currency, Date, Time

    # Calculate AllTimeHigh deviation
    $athDeviation = ([system.double]$stockHistory.allTimeHigh - [system.double]$stockCurrent.Price)/[system.double]$stockHistory.allTimeHigh * 100
    # Compare current Yahoo prices with historical AllTimeHigh
    if([system.double]$stockCurrent.Price -gt [system.double]$stockHistory.allTimeHigh){
   
        Write-Host "---$($stockCurrent.CompanyName): All time high exceeded!" -ForegroundColor Green
        $stockHistory.allTimeHigh = $stockCurrent.Price
           
    }else{
   
        Write-Host "---$($stockCurrent.CompanyName): All time high NOT exceeded!" -ForegroundColor Yellow

    }

    # Stop Loss Alert filtering
    If(($stockHistory.alertSent -eq $false) -and ($athDeviation -gt $trailingStopLossLimit)){
      
        # Collect current alerts
        $alertList += $stockHistory
        $stockHistory.alertSent = $true
   
    }

    # Update stock with Yahoo Finance data
    $stockHistory.price = $stockCurrent.Price
    $stockHistory.timeStamp = (get-date ($stockCurrent.Date) -Format yyyy-MM-dd) + "T" + (get-date ($stockCurrent.Time) -Format HH:mm:ss) + "Z"
    $stockHistory.athDeviation = $athDeviation

    # Save updated stock info
    $allStocks += $stockHistory

}

# Export
$allStocks | Export-Csv -Path $filePath -Force -Delimiter ";" -NoTypeInformation
$allStocks | Sort-Object athDeviation -Descending| ft -AutoSize

# Send notfication if there are objects on Alertlist
if($alertlist.count -ne 0){

    # Convert AlertList to HTML

$Header = @"
    <style>
    TABLE {border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}
    TH {border-width: 1px;padding: 3px;border-style: solid;border-color: black;background-color: #6495ED;}
    TD {border-width: 1px;padding: 3px;border-style: solid;border-color: black;}
    </style>
"@

    [System.String]$body = $alertList | ConvertTo-HTML -Head $Header
   
    Send-MailMessage -From abc@mail.com -To abc@mail.com -BodyAsHtml -body $body -Subject "Automated Stock Alert" -SmtpServer smtp.mail.com

}





  



tisdag 7 juni 2016

Hail to the screener!

Min villkorslösa tillit till min screener, gjorde att några utdelningar som jag fick i handen idag, ca 600SEK, ska investeras i 50st aktier i det mycket kända och världsledande företaget... *trumvirvel*... Village Farms International Inc i Kanada!!

Tystnaden ekar ut över arenan där den STORE värdeinvesteraren tillkännagör sitt senaste fynd från sin guldtron.
- Hoho, alla följare och likasinnade välinsatta, pålästa och faktabaserade investerare! Varför i hela Helsefyr känner ingen till detta företag som ger varje riskkapitalist gåshud ända ner till tårna? Hur kan ni säga att ni undersökt marknaden om ni har MISSAT denna guldgruva till investering..?
- Vi tror att du hallucinerar eller möjligen har rökt svampar... eller båda. Får vi gå nu? Ingen annan här har NÅNSIN hört talas om din paprikaodling som du investerat i...
- Men ni kan ju inte gå nu... Eehh, vadå okänt? Hur menar ni? Allt som finns på Internet är ju känt för alla, det säger man ju om sociala medier och andra hjärnkrympande avarter av moln-nätverket....
- Att lyssna på dig och dina "bedrifter" är mer hjärnkrympande än att tro på Scientologerna under ledning av Donald Trump...
- Ok, gå ni och köp några trygga, utdelande H&M-aktier igen, så ska jag vara med och bygga ett grönsaksimperium som kommer att ta över världen! Power to the tomatoes, bell peppers and cucumbers!

https://www.google.com/finance?q=TSE:VFF
Village Farms International, Inc. (Village Farms) is a producer, marketer and distributor of greenhouse-grown tomatoes, bell peppers and cucumbers in North America. The Company operates through two segments: Produce business and the Energy business. The Produce business produces, markets and sells the product group, which consists of tomatoes, bell peppers and cucumbers. The Energy business produces power that it sells per a long-term contract to its customer. The Company markets and distributes under its Village Farms brand name, primarily to retail supermarkets and fresh food distribution companies across the United States and Canada. Village Farms operates approximately three distribution centers located across the United States and Canada. The Company, through its subsidiary, VF Clean Energy, Inc., owns and operates a seven megawatt (MW) power plant from landfill gas that generates electricity and provides thermal heat in colder months.

torsdag 2 juni 2016

Rationalitet vs emotionalitet - the battle of braincells!

De flesta av privatinvesterings-bloggarna ute på det stora stygga Internet som skriver om sina investeringar, låter alltid så snusförnuftiga, kloka, genomtänkta, planerande, långsiktiga och målmedvetna. 
"Jag har 100 000SEK investerat idag, sparar 10 000SEK/månad och kommer att uppnå nirvana i form av 10 000 000SEK om 10 år för jag köper bara aktier i företag enligt modell X vilket ger avkastning Y". 
Vid första eftertanke och naturligtvis med utgångspunkt i mitt eget beteende, tänker jag att det är helt orimligt att alla är så konsekventa och strukturerade som de gör gällande från sina höga hästar... eller? Trillar de/ni aldrig ner och slår sig? Alltså, gör de inga, none, zero, nada, ALDRIG några avsteg från de fina modeller och strategier de har satt upp för sig själva och sitt sparande? Nallar lite av allt det goda för att köpa den där prylen de som gärna vill ha? Eller göra resan som ni längtat efter? Eller täcka för renoveringen som behövs? Personligen tvivlar jag, det kan inte bara vara jag som slåss för att hålla undan hjärnspökena, sååå unik är jag inte... :)

Visst, jag vet, jag är allt annat än konsekvent och strukturerad, men jag hymlar inte med det. Jag hoppas ju att detta skrivandet är en resa i sig självt, som ska kunna ge mig en bättre bild av hur jag tänker och resonerar och därigenom kunna förbättra mig och bli en bättre sparare/investerare. Precis som alla andra har jag målbilder för mitt sparande, men oftast känns den bilden väldigt avlägsen med 15 års sparhorisont, hur gärna man än vill blunda för det som händer idag, här och nu. Eftersom målet är avlägset och bilden av det är ganska vag och suddig, gör det att det är svårt att hålla fokus på uppgiften. Som i alla normala projekt bör man därför bryta ner den stora kakan i många små smulor som är mer lättsmälta och hanterbara. Så i andan av det ska jag så småningom försöka ta mig an att göra en vääääldigt enkel projektplan (det måste gå att hålla den uppdaterad och följa den med minsta möjliga ansträngning, annars kommer även den att döden dö, jag känner mig själv alltför väl...) med förväntade resultat vid givna tillfällen.

För lika väl som känslor kommer in i matchen när det gäller att investera sparade pengar enligt givna regler, så är de ju lika mycket en del av vardagen när man sitter med reklambroschyren om semesterresor, katalogen med nya möbler till det renoverade rummet som fortfarande står halvfärdigt, tuffa verktyg som man tycker att man borde behöva när man ska göra byggprojekt A, B och C och så vidare.

Så vad krävs för att kunna hålla sig till rationellt beteende? Ja, förresten, den frågan kan jag rikta både till mig själv och de stackars satar som råkat fastna i den här tanke- och text-geggan. För egen del är svaret ENKELHET. I modell, strategi, plan - allt ska vara så enkelt att vilken apa som helst med Internet-uppkoppling och mina inloggningsuppgifter skulle kunna exekvera enligt instruktionerna. Kanske den här modellen är vettig.



 

tisdag 31 maj 2016

Show me the money!

Så för att ge mig själv en rättvis start på mitt bloggande om mina försök att skapa en växande portfölj och en framtida förmögenhet, lägger jag nu korten på bordet och låter världen skåda min bluff! Den största bluffen är väl egentligen att jag lurar mig själv att tro att jag har investerat pengarna väl, men det ska det bli ändring på med lite genomlysning...

Eftersom mina strategier och investeringar är lika flyktiga som en godispåse i mina barns händer, så får man se detta som en nulägesbild som förmodligen aldrig kommer att existera igen i något känt universum. 

Slår man ett snabbt öga på avkastningssiffrorna kan man ana att de inte fått så lång tid på sig att arbeta upp något kapital, och det är helt korrekt, de har levt i sin nuvarande form i ca 2-3 månader.

Utan att gå in i för mycket detaljer nu, det får komma i ett senare inlägg, så ser det ut som följer:


Global Dividend (KF) 

  

Global TrendingValue (KF)

Global Dual Momentum (KF)

Boform Fastighetsutveckling

Denna screenshot är inte lika talande som de från Avanza, men ni får tro mig när jag säger att vi investerat 50 000kr i 50 aktier i Boform Fastighetsutveckling (via Tessin.se). Denna investering avkastar 1625kr/kvartal (6500kr/år) minus skatt, så ca 4500kr netto, alltså ungefär 9%. Avkastningen återinvesteras i någon av ovanstående KF beroende på humör, mentalt allmäntillstånd och andra obskyra parametrar som tas i beaktning.


End of story, och nu fick ni se VAD vi har i portföljerna, nästa gång ska jag försöka ge mig på ett VARFÖR...