Financial strategies for a stock trading bot

Creating a stock trading bot is both a very interesting and a very challenging task. To build an algorithm that makes money, there is a number of potential trading strategies from which value can be created. This post attempts to list the most obvious strategies in a formal and systematic approach, to methodically structure the testing of the different ideas. This post will also be updated over time as more strategies get added and the most promising ideas are tested.

Stock trading robot Continue reading “Financial strategies for a stock trading bot”

How to program the Mean Shift algorithm

Mean Shift is an unsupervised machine learning algorithm. It is a hierarchical data clustering algorithm that finds the number of clusters a feature space should be divided into, as well as the location of the clusters and their centers. It works by grouping data points according to a “bandwidth”, a distance around data points, and converging the clusters’ centers towards the densest regions of data.

Mean Shift algorithm finding the clusters centers Continue reading “How to program the Mean Shift algorithm”

How to program the Support Vector Machines algorithm

Support Vector Machine is one of the most commonly used supervised machine learning algorithms for data classification. A binary classifier, the support vector machine algorithm works in vector space to sort data points by finding the best hyperplane separating them into two groups. Thanks to its reliance upon vectors, it finds frontiers between groups of data points even in nonlinear patterns and features spaces of high dimensions.

Support Vector Machine Continue reading “How to program the Support Vector Machines algorithm”

How to program the K Nearest Neighbors algorithm

K Nearest Neighbors is a popular classification algorithm for supervised machine learning. It permits to divide data points into groups, defining a model that will then be able to classify an unknown data point in one group or another. The K parameter, defined during programming, allows the algorithm to classify unknown data points by examining the K closest known data points.

KNN classification Continue reading “How to program the K Nearest Neighbors algorithm”