2021 investment summary

Here I would like to preserve my thoughts on 2021 from an investment point of view and the results of my trades.

Events that moved the markets

There were several topics that moved markets:

  • The worst wave of Covid-19 (for most countries) yet at the beginning of the year.
  • Covid-19 vaccination started.
  • Some pandemic restrictions remained, some vere eased.
  • Post-covid economic recovery was not at strong as expected.
  • Highest inflation in 30 years (in US, but other countries had similar issue).
  • Supply chain disruption.
  • China property sector crisis and Evergrande
Continue reading.

116% Profit From Tech Stocks At eToro In 2020

In April, I was looking for a “zero-commission” broker and chose eToro. In this post, I would like to preserve my 2020 eToro trading statistics for future reference.

Profit

I had a 116.03% profit compared to 16.26% profit of S&P500 and 43.64% of NASDAQ100. You can look at my stats on eToro pages.

My portfolio against S&P500 and NASDAQ100 since foundation in April.

Risk

My risk score was 7 for the first three months which is a little bit more than a popular (or any other) investor should have. … Continue reading.

Simple maven deploy with credentials as arguments

If you don’t code day to day in some JVM language but you still need to use Maven for deploying artifacts from time to time, your best option is to use Maven docker image. However, credentials to your Maven repository are stored in .m2/settings.xml in your home folder which makes the standard Maven docker image harder to use.

If you just want to deploy an artifact, you can use image raget/maven-deployer.

docker pull raget/maven-deployer

It is pretty easy:

docker run -v <path_to_artefacts_folder>:/data mvn-deploy "-Drepo.id=<YOUR_REPO>"
 "-Drepo.login=<YOUR_USERNAME>" "-Drepo.pwd=<YOUR_PASSWORD>" "-Dfile=/data/artifact.zip"

Sometimes it … Continue reading.

Secure random password generator for .NET Core

Recently, I was asked to replace the legacy and insecure password generator with the new one written in C#. After a minute of googling, I found pretty old .NET Membership function GeneratePassword from the namespace System.Web.Security. However, this package is not available in .NET Core. I also didn’t like any library or sample I managed to google out because of their design or security. So I spent a day crafting a secure random password generator for .NET Core.

Nuget package

Just install Raget.Security.Passwords nuget package and use it like … Continue reading.