Book Image

Getting Started with Forex Trading Using Python

By : Alex Krishtop
Book Image

Getting Started with Forex Trading Using Python

By: Alex Krishtop

Overview of this book

Algorithm-based trading is a popular choice for Python programmers due to its apparent simplicity. However, very few traders get the results they want, partly because they aren’t able to capture the complexity of the factors that influence the market. Getting Started with Forex Trading Using Python helps you understand the market and build an application that reaps desirable results. The book is a comprehensive guide to everything that is market-related: data, orders, trading venues, and risk. From the programming side, you’ll learn the general architecture of trading applications, systemic risk management, de-facto industry standards such as FIX protocol, and practical examples of using simple Python codes. You’ll gain an understanding of how to connect to data sources and brokers, implement trading logic, and perform realistic tests. Throughout the book, you’ll be encouraged to further study the intricacies of algo trading with the help of code snippets. By the end of this book, you’ll have a deep understanding of the fx market from the perspective of a professional trader. You’ll learn to retrieve market data, clean it, filter it, compress it into various formats, apply trading logic, emulate the execution of orders, and test the trading app before trading live.
Table of Contents (21 chapters)
1
Part 1: Introduction to FX Trading Strategy Development
5
Part 2: General Architecture of a Trading Application and A Detailed Study of Its Components
11
Part 3: Orders, Trading Strategies, and Their Performance
15
Part 4: Strategies, Performance Analysis, and Vistas

Limit orders – guaranteed price, but not execution

In general and brief, a limit order is an order to buy or sell the specified amount of the asset at the specified price or better.

What does better mean here?

This means that if I send a limit order to buy EURUSD at 1.0100, then any price below 1.0100 will match my order. On the contrary, if I send a limit order to sell EURUSD at 1.0100, then any price above this level will match. In other words, by using a limit order, I say that I am ready to buy or sell at any price no worse than the one specified in the order.

What happens if you send a limit order at a price that is better than the current market price? For example, a buy limit order at a price that is below the current ask? Well, it depends on the particular implementation of limit orders used by your broker or execution venue. If you trade at an exchange (for example, if you trade currency futures), then your order will be routed directly into the order book...