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”

Data Science and Machine Learning for Finance

Diving deeper in data science and the actual coding of data processing functions and machine learning algorithms with Python, this series of tutorial gives us a great taste of what can be done in finance and stock trading. Through a hands-on approach, it guides us through the programming needed to retrieve, manipulate and visualize data, and, more importantly, to extract actionable insights.

Stock price chart created with Matplotlib

Continue reading “Data Science and Machine Learning for Finance”

Guide to real Machine Learning applications

This series of articles dives deeper into the actual applications of Machine Learning that are currently in use in many current technological processes and devices.

Amazon Alexa

Through these posts entitled “Machine Learning is Fun!”, Adam Geitgey guides us step by step through the concepts, data, algorithms, code, results and pitfalls of machine learning applications from image, face and speech recognition to language translation and more. It also gathers several different sources for more details on each application and its development.

Image encoding

This series is really dense with detailed code, but it is also explained very clearly, step by step, with detailed illustration. It notably covers the use of a Convolutional Neural Network (including Generative Adversarial Network) and Recurrent Neural Network, together with some of their most prominent applications in daily life. It is a real course not to be missed for any ML developer!

Here is the list of posts with direct links:

Programming Artificial Intelligence 101

Programming Language

Python logoThough several programming languages can be used to develop Artificial Intelligence applications, the language that is most often used and advised to use is Python, because it is a general purpose language designed for readability.

Learning Python

Documentation and resources can be found to use and learn the language on the official Python website, especially with the complete tutorial available for each version of Python.

If you already have programming experience, you can have a brief overview of the syntax and specificity of Python in this video. This great course on problem-solving with algorithms and data structures will give you a complete, step-by-step approach to learning Python with explanations, videos and exercises, while this other tutorial from Stanford quickly goes over Python basics but dives deeper into using the Numpy, SciPy and Matplotlib modules for scientific computing.

Other languages that are often used include: Java, Lisp, Prolog, C++, R…

Python Programming Tools

Here is a series of programming tools and other systems to assist in the programming of AI applications.

  • PyCharm: an Integrated Development Environment – IDE – used in computer programming, specifically for the Python language.
  • Jupyter: the Jupyter Notebook is an open-source web application to create and share documents with live code, equations, visualizations.
  • NumPy is the fundamental package for scientific computing with Python.
  • TensorFlow: an open-source machine learning framework originally developed by Google Brain researchers and engineers.
  • Anaconda: Anaconda is a platform for Python and R data science and machine learning on Linux, Windows, and Mac OS X.
  • TFLearn: a deep learning library featuring a higher-level API for TensorFlow
  • Scikit-Learn: an open-source machine learning library for Python
  • Pandas: open-source data structure and analysis library for Python
  • Caffe: a deep learning framework made with expression, speed, and modularity in mind
  • Keras: a high-level neural networks API, written in Python
  • Pytorch: an open source machine learning library for Python, used for applications such as natural language processing.

Data

List of datasets used for Machine Learning research – Wikipedia

Cloud services providers

Certain AI applications may require large computing power to process important amounts of data. Fortunately, several companies provide such services on a regular or on-demand basis. Here are the most famous cloud computing services.

Robotics

ROS – the Construct: Robots and environment simulator to train robots