Wikifolio – Yet another fuckup – They cannot even a school math

Just had a look at one of my Wikifolios: the overall performance is positive but the annualized one is negative. Sorry guys (and gals): it is impossible, since the total performance is calculated according to (1+r)^t, where r is the annual[ized] return, an t is the [fractional] number of years (and the latter is obviously positive). Even if you use the formula of continuous rate \exp{(rt)} (which you definitely do not understand since it is slightly beyond the school math), it still cannot be so that r is negative but the overall performance is positive.
Continue reading "Wikifolio – Yet another fuckup – They cannot even a school math"

GiGo Analysis Case – even Google might deliver Garbage Data

Surprisingly, German real estate market is quite intransparent, since prices may (like German dialects) strongly vary even in two neighbor villages. But even the summary statistics is often misleading.
In this short study we demonstrate how one can detect an inconsistency and how it might be explained.
Continue reading "GiGo Analysis Case – even Google might deliver Garbage Data"

AI Stock Picking Dashboard via mwShiny in Docker behind Apache ReverseProxy

In this post I demonstrate [the performance of] a multi-window interactive graphical dashboard, which visualizes the stock-picking signals from an ensemble of deep neural networks.
Further I describe the online deployment of this dashboard by means of Docker and Apache ReverseProxy.
Everybody, who invests quantitatively and significantly contributed to the engaged software: in partucular R, [mw]Shiny, LAMP-stack, Docker (and of course TF/keras) are encouraged to claim their free access to this dashboard (others are also encouraged to request a paid subscription :))
. Continue reading "AI Stock Picking Dashboard via mwShiny in Docker behind Apache ReverseProxy"

JuniorDepot31 – Experiment Termination

Since DeGiro announced closure of Elle's depot on May 15, 2022 she had to optimally close her positions before this date. Unfortunately, the announcement of depot termination coincided with market correction and further macroeconomic risks due to Russian invasion of Ukraine.
Thus the achieved CAGR is just 2.06%, not 6% as pursued. Still it is much better than a bank deposit with zero (or even negative) rate and given the permanent deterioration of DeGiro the result is not that bad.
Continue reading "JuniorDepot31 – Experiment Termination"

JuniorDepot29 – (Over)archieving the Financial Plan (thanks to AI and NI)

Since we did not report about Elle's progress for more than a year, the readers of might have thought that we have terminated our experiment of growing a 7 (currently 11) years young girl as an investor. Nope, not at all! As a matter of fact we worked hard on creation and test of a deep neural network for the stock (pre)selection. And it did work, our CAGR goal is (over)achieved!
Continue reading "JuniorDepot29 – (Over)archieving the Financial Plan (thanks to AI and NI)"

Affordable Hardware for Stockpicking AI – BeerWulf’s eBay Adventure

In my previous post I reported howto build and install TensorFlow and horovod from sources and howto setup a BeerWulf (BeoWulf) cluster. Building this BeerWulf cluster is though a good exercise to make a (resilient) system of a commodity hardware, however, it is not the most efficient way for a practical purpose (in my case: for creating an AI model, which helps me to pick up stocks). In this post I consider the hardware alternatives in the sense of making them both as efficient and as cheap as possible. Continue reading "Affordable Hardware for Stockpicking AI – BeerWulf’s eBay Adventure"

Building TensorFlow 2.5 (CPU only) and Horovod from source in Ubuntu 20.04.2 LTS

Short summary:

sudo swapoff /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1M count=65536 oflag=append conv=notrunc
sudo mkswap /swapfile
sudo swapon /swapfile

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
sudo apt update
sudo apt install python3-dev python3-pip
sudo apt install python3-testresources
pip install -U --user pip numpy==1.19.5 wheel
pip install -U --user keras_preprocessing --no-deps
sudo apt install git
git clone
cd tensorflow
git checkout r2.5
sudo apt install npm
sudo npm install -g @bazel/bazelisk

bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package
./bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip install /tmp/tensorflow_pkg/tensorflow-2.5.0-cp38-cp38-linux_x86_64.whl

sudo apt-get install openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
ssh-copy-id vasily@SERVER2
ssh-copy-id vasily@SERVER1

sudo snap install cmake --classic
sudo apt install openmpi-bin
mpirun -H SERVER1:1,SERVER2:1 hostname

git clone --recursive
cd horovod
python clean
python bdist_wheel
HOROVOD_WITH_TENSORFLOW=1 pip install ./dist/horovod-0.22.1-cp38-cp38-linux_x86_64.whl[tensorflow,keras]
mpirun -H SERVER1:3,SERVER2:3 python3 /home/vasily/horovod/examples/tensorflow2/
Continue reading "Building TensorFlow 2.5 (CPU only) and Horovod from source in Ubuntu 20.04.2 LTS"