niedziela, 31 maja 2020

Realizacja wizji sprzed lat

W ciągu życia mamy wiele planów, marzeń, które chcielibyśmy zrealizować, i które niedokończone plączą się gdzieś w głowie. Czasami bledną i przestają nas kręcić, ale bywa, że powracają regularnie i proszą się o wypełnienie. Ten wpis jest o jednej z takich wizji.

Jako dzieciak pokochałem Gdańsk. Pochodzę z Bydgoszczy, więc nad morze nie mieliśmy specjalnie daleko i dość regularnie podróżowaliśmy a to do rodziny, a to ze szkolną wycieczką. Uwielbiałem tutejsze zabytki, zaczytywałem się powieściami marynistycznymi. Pamiętam jak z tatą oglądaliśmy Karmazynowego Pirata i Kapitana Blooda. Już w szkole średniej wiedziałem, że będę tu studiował.

Kilka lat temu wjeżdżając na Trakt św. Wojciecha usłyszałem w Radiu Gdańsk pewną nowoczesną aranżację szanty. Wróciły pirackie wspomnienia i pojawiła się wizja - chciałbym kiedyś zrobić teledysk o Gdańsku do tego utworu. Problem był jeden - kompletnie nie znałem piosenki i nie umiałem obsługiwać programów do edycji filmów. Długo skanowałem Youtube'a w poszukiwaniu tej szanty, ale jej nie znalazłem.

Aż kilka miesięcy temu przypadkowo natrafiłem na TEN utwór. Nie wiem jak i dlaczego, ale pojawił się w sugerowanych filmach (echa poszukiwań sprzed lat? :) W międzyczasie nauczyłem się edytować filmy. Postanowiłem, że na jednym z maratonów będę kręcił krótkie filmiki i złożę z nich materiał na teledysk. W zeszły piątek zrealizowałem w końcu wizję sprzed lat: odwiedziłem miejsca znane i mniej znane w Gdańsku, cyknąłem fotki i filmiki moim kalkulatorem i wypełniłem misję sprzed lat. Może efekt d..py nie urywa, ale przynajmniej czuję się spełniony :) No i kurczę, co to była za przygoda!




PS W polskich napisach w teledysku umieściłem nazwy zabytków.

wtorek, 26 maja 2020

ZAP Wyckoff Spring + analiza

Dzisiaj wrócę do spółki, którą dobieram do portfela od 2018 roku: Zakłady Azotowe Puławy (ZAP lub PULAWY).

To nie jest firma, na której przeżyjecie jazdę +400% jak na gamedevach. Typowy nudny biznes 'value': produkcja nawozów. Prawie rok w rok zysk i dywidenda. Podobnie jak na XTB widzę na tej spółce formację akumulacji, aczkolwiek we wcześniejszej fazie (jeszcze przed testowaniem wsparć w fazie C):



Obecnie nie powiększam pozycji na spółce. Raz, że waży już dość sporo, a dwa - nastawiam się na bardziej spekulacyjne walory. Niemniej dzisiejsza informacja:

Zarząd Grupy Azoty ZA Puławy rekomenduje przeznaczenie na dywidendę 104,18 mln zł, czyli 5,45 zł na akcję - podały Puławy w komunikacie.

Zachęciła mnie do zajrzenia na wykres. Jeszcze fundamenty:




Jedyne czego spółce brakuje, to zmiany narracji rynkowej.

6.5% dywidendy? Nie pogardzę :)

piątek, 22 maja 2020

XTB Wyckoff Spring

Jak pisałem ostatnio, postawiłem więcej niż zwykle na XTB.

Pierwszy konieczny warunek otworzenia pozycji jest spełniony: spółka nie jest zagrożona bankructwem, praktycznie śpi na cashu, i co ważniejsze generuje mnóstwo nowej gotówki.
I płaci dywidendy - był to istotny czynnik w latach 2018-2019, ale w 2020 stracił w Polsce na znaczeniu.

Warunek nr 2 to atrakcyjna wycena fundamentalna - po odjęciu gotówki spółka jest wyceniana poniżej wartości księgowej. Czymkolwiek ta WK dla XTB jest. Ale jak pokazują - potrafią ze swoich aktywów wyciskać solidne zyski.

Warunek 3 - AT. Wygląda na to, że fazę akumulacji mamy za sobą. I tak - wiem, że większość akcji zostało przejętych dopiero po wystrzale (zejście Enterprise Investors z 19% akcji), ale po analizie wykresu dochodzę do wniosku, że grube ręce przez kilka lat skupowały akcje spółki i w hossie czekają nas niespodzianki na miarę Mercatora.



poniedziałek, 18 maja 2020

Nowy projekt Podtwórcy

Zapraszam do wysłuchania drugiej części wywiadu, jakiego udzieliłem gamingowemu youtuberowi Vickowi, ekspertowi od gier przygodowych. Przybliżam szczegóły najnowszej gry, nad którą pracuję i plany na przyszłość.


sobota, 16 maja 2020

Odrodzenie branży finansowej

Coś dobrego wreszcie zaczyna się na polskim rynku kapitałowym. W swoim portfelu obserwuję mocne zachowanie spółek powiązanych z funduszami, usługami maklerskimi i tradingiem. Dziś do krótkiej analizy wybrałem 3 z nich.

XTB zarobił krocie na krachu marcowym i prawdopodobnie obłowił się w kwietniu na gwałtownych ruchach ropy i złota. Spółka jest market makerem na fx i cfd, zarabia korzystając z zasady, że rok w rok 80% klientów traci pieniądze. Im większa zmienność, tym większe straty graczy i wyższe zyski animatora. Obecnie po wystrzale 40% kurs pozostaje w konsolidacji i powinno jeszcze trochę pobujać, bo po rewelacyjnych wynikach każdy kupił akcje. Rynek nie lubi zabierać ze sobą zbyt wielu pasażerów.




Kiedyś kupiłem Ipopemę i długo byłem na spółce w plecy. Na osłodę dostawałem co roku dywidendy. Wygląda na to, że wreszcie trend się zmienił na wzrostowy:

I teraz dla odmiany mam nadzieję długo być na spółce do przodu.

Skarbiec Holding jeszcze w trendzie spadkowym, ale fundamenty i dywidendy są tak atrakcyjne, że nie mogłem nie kupić:






wtorek, 12 maja 2020

Długoterminowe sygnały

Gdyby nie dziady z WIG20 (i co ciekawe - amerykańskie spółki value) portfel byłby już na nowych maksach. Pytacie się mnie czasem, które spółki typuję - wtedy zazwyczaj opisuję w kilku punktach swoją metodę inwestycyjną, żeby uzasadnić dlaczego nie mogę odpowiedzieć na pytanie. Wkrótce napiszę serię artykułów z wykresami o metodzie i jej podwalinach.

Tymczasem kilka wykresów.

WIG POLAND PB:


Spółki są śmiesznie tanie. Zasługa WIG20, bo maluchy już często w hossie, ale nawet zwykłe wyrównanie historycznej średniej to potencjał na "gigantyczne" wzrosty. Nie wiem kiedy i nie wiem do jakiego poziomu, ale trzymam się swoich zasad: w takich warunkach szukam okazji do zakupu, a nie sprzedaży.

Mój ulubieniec w tym roku:



Branże posegregowane od najtańszych:


Kto pamięta lata 2003-2011? Mamy przeciwieństwo tamtych lat.

Złoto vs Srebro na tle S&P500:



Od 1982 szczyt złota względem srebra zbiega się z okolicami dołków bessy. Dlaczego dzisiaj miałoby być inaczej?


piątek, 8 maja 2020

Reminiscencje Twórcy Systemów cz. 7: Pierwsza gra, pierwszy system, pierwsza porażka

W 2003 pisanie gier jest trudniejsze niż dzisiaj. Nie ma kompleksowych game makerów czy środowisk typu Unity. Żeby napisać grę musisz stworzyć wszystko prawie od zera. SDL oferuje funkcje typu wczytaj obrazek, naklej go na powierzchnię (surface), odśwież surface ekranu. Jest obsługa zdarzeń (kliknięcia i ruchy myszą, naciśnięcie klawisza itd.), wczytanie i odegranie dźwięków - to wszystko wystarcza do stworzenia gry 2d.

Mam marzenie: zrobić grę przypominającą Fields of Glory - pierwszą najważniejszą grę, gdy dostałem własnego PC-ta. Była to strategia w rozdzielczości 320x240, w której wojska Napoleona walczyły z Anglikami i Prusakami. Powiedzmy taki poprzednik gier z serii Total War. W mojej grze naparzałyby się czerwone kurtki (Anglicy z XVIII wieku) z niebieskimi. Kojarzycie te filmy, w których linia żołnierzy z charakterystycznymi białymi pasami skrzyżowanymi na korpusie, maszeruje z muszkietami na ramieniu, dobosze przygrywają na werblach, przygrywają piszczałki. W końcu zatrzymują się, oficer wykrzykuje komendę, wycelowują muszkiety, ‘fire!’ i salwa zmiata pierwszą linię wroga. A potem odpowiada salwa z drugiej strony, czasem idą na bagnety, a czasem strzelają aż ktoś zacznie uciekać. Świetnie została pokazana taka bitwa w Patriocie z Melem Gibsonem (battle of Camden).

Przez 2-3 tygodnie rysuję pixel po pixelu w Gfx2 żołnierza w 8 kierunkach: stoi, maszeruje, nabija muszkiet, oddaje strzał. Powstają też grafiki terenu i równoległoboki, z których powstanie pole bitwy (tzw. rzut izometryczny jak w Cywilizacji 2). Oprócz rysowania dużo planuję w zeszycie, jak będę programował grę i tworzę biblioteki narzędziowe. Ponieważ chcę być “pro” w C++, używam gdzie się da ówczesne nowinki typu template’y, przeciążanie operatorów. Wydaje mi się, że im lepiej poznam tajniki języka, tym lepszy będzie projekt.

Nie będę się rozpisywał nad pracami. Liczą się twarde wnioski. Udaje mi się osiągnąć pierwszy etap, tj. pole bitwy, po którym maszeruje kolumna o zdefiniowanej liczbie żołnierzy (N x M). Idą tam gdzie się kliknie, najpierw obracają się, każdy żołnierz maszeruje na swoje miejsce w formacji i dopiero wtedy idą wszyscy razem. Wygląda to dla mnie super, ale kod jest tak skomplikowany, że nie sposób zrobić coś więcej. Obliczenia matematyczne mieszają się ze sterowaniem, zależności chodzenia w formacji z poszukiwaniem swojej pozycji w formacji. Po kilku miesiącach prac stwierdzam, że projekt mnie przerósł i na pierwszą grę muszę wybrać prostszy temat.

W moim kodzie wszystko wydaje się ważne - wiedza o strukturze przechowywania grafiki, hierarchia przesłaniania żołnierzy na polu. Mnóstwo “istotnych” danych przechowywanych w enumach i odrębnych klasach. Wydaje mi się, że tak powinno być, bo tak pokazują tutoriale do C++. Ilość powiązań jawnych i niejawnych jest nie do ogarnięcia.

W programowaniu obiektowym klasa powinna być jak czarna skrzynka: udostępniać prosty, logiczny interfejs i przyjmować jak najmniej argumentów. Jeśli tych ustawień jest zbyt dużo, to prawdopodobnie znak, że klasa obejmuje elementy z różnych poziomów abstrakcji i agreguje zależności. W takim systemie nie jesteś zazwyczaj w stanie używać obiektów klasy bez znajomości jej implementacji.

Piszę o tym, ponieważ przez lata pracowałem z systemami w firmach, które cierpiały na ten grzech. Dodawanie funkcjonalności było makabrą, ludzie kopiowali działające klasy, zmieniali nazwy zmiennych, dodawali nowe enumy w 10 różnych miejscach i jakoś działało. Od kilku kluczowych klas byli ‘eksperci’, którzy napisali je lata wcześniej i tylko oni wiedzieli jak coś do nich doklejać. Żeby rozwijać system w oparciu o te klasy należało nie tylko znać ich rozbudowane API, ale też masę niejawnych zależności typu kolejność odpalania funkcji, ograniczenia w ustawieniu obiektów, które wpadały do klasy. Jakiekolwiek niestandardowe użycie API z założenia nie mogło działać.

Wielu programistów nie wychodzi poza schemat, który opisałem przy swojej pierwszej grze. Biegle operują w C++, są w stanie dość szybko dotrzeć do celu i napisać kod, który działa - pierwszy etap systemu wygląda jak powinien. Podobnie jak ja wtedy chcą na siłę używać nowinki oferowane przez język. Niestety rozwijanie takiego systemu jest syzyfową pracą. W odrębnym artykule opiszę, jak rozwiązać ten problem.

PS Na obrazku grafiki wykonane po pixelach w Gfx2, jakie zrobiłem na przełomie 1999/2000 do gry o Kampanii Wrześniowej, którą robiliśmy z Kamilem. Podobnie powstawali żołnierze do mojej pierwszej gry.