Atjaunināt sīkdatņu piekrišanu

Python for Algorithmic Trading: From Idea to Cloud Deployment [Mīkstie vāki]

3.79/5 (108 ratings by Goodreads)
  • Formāts: Paperback / softback, 350 pages, height x width: 233x178 mm
  • Izdošanas datums: 30-Nov-2020
  • Izdevniecība: O'Reilly Media
  • ISBN-10: 149205335X
  • ISBN-13: 9781492053354
  • Mīkstie vāki
  • Cena: 73,03 €*
  • * ši ir gala cena, t.i., netiek piemērotas nekādas papildus atlaides
  • Standarta cena: 85,92 €
  • Ietaupiet 15%
  • Grāmatu piegādes laiks ir 3-4 nedēļas, ja grāmata ir uz vietas izdevniecības noliktavā. Ja izdevējam nepieciešams publicēt jaunu tirāžu, grāmatas piegāde var aizkavēties.
  • Daudzums:
  • Ielikt grozā
  • Piegādes laiks - 4-6 nedēļas
  • Pievienot vēlmju sarakstam
  • Formāts: Paperback / softback, 350 pages, height x width: 233x178 mm
  • Izdošanas datums: 30-Nov-2020
  • Izdevniecība: O'Reilly Media
  • ISBN-10: 149205335X
  • ISBN-13: 9781492053354

Algorithmic trading, once the exclusive domain of institutional players, is now open to small organizations and individual traders using online platforms. The tool of choice for many traders today is Python and its ecosystem of powerful packages. In this practical book, author Yves Hilpisch shows students, academics, and practitioners how to use Python in the fascinating field of algorithmic trading.

You'll learn several ways to apply Python to different aspects of algorithmic trading, such as backtesting trading strategies and interacting with online trading platforms. Some of the biggest buy- and sell-side institutions make heavy use of Python. By exploring options for systematically building and deploying automated algorithmic trading strategies, this book will help you level the playing field.

  • Set up a proper Python environment for algorithmic trading
  • Learn how to retrieve financial data from public and proprietary data sources
  • Explore vectorization for financial analytics with NumPy and pandas
  • Master vectorized backtesting of different algorithmic trading strategies
  • Generate market predictions by using machine learning and deep learning
  • Tackle real-time processing of streaming data with socket programming tools
  • Implement automated algorithmic trading strategies with the OANDA and FXCM trading platforms
Preface ix
1 Python and Algorithmic Trading
1(16)
Python for Finance
1(6)
Python Versus Pseudo-Code
2(1)
NumPy and Vectorization
3(2)
Pandas and the DataFrame Class
5(2)
Algorithmic Trading
7(4)
Python for Algorithmic Trading
11(2)
Focus and Prerequisites
13(1)
Trading Strategies
13(2)
Simple Moving Averages
14(1)
Momentum
14(1)
Mean Reversion
14(1)
Machine and Deep Learning
15(1)
Conclusions
15(1)
References and Further Resources
15(2)
2 Python Infrastructure
17(28)
Conda as a Package Manager
19(8)
Installing Miniconda
19(3)
Basic Operations with Conda
22(5)
Conda as a Virtual Environment Manager
27(3)
Using Docker Containers
30(6)
Docker Images and Containers
31(1)
Building a Ubuntu and Python Docker Image
31(5)
Using Cloud Instances
36(7)
RSA Public and Private Keys
38(1)
Jupyter Notebook Configuration File
38(2)
Installation Script for Python and Jupyter Lab
40(1)
Script to Orchestrate the Droplet Set Up
41(2)
Conclusions
43(1)
References and Further Resources
44(1)
3 Working with Financial Data
45(36)
Reading Financial Data From Different Sources
46(6)
The Data Set
46(1)
Reading from a CSV File with Python
47(2)
Reading from a CSV File with pandas
49(1)
Exporting to Excel and JSON
50(1)
Reading from Excel and JSON
51(1)
Working with Open Data Sources
52(3)
Eikon Data API
55(10)
Retrieving Historical Structured Data
58(4)
Retrieving Historical Unstructured Data
62(3)
Storing Financial Data Efficiently
65(12)
Storing DataFrame Objects
66(4)
Using TsTables
70(5)
Storing Data with SQLite3
75(2)
Conclusions
77(1)
References and Further Resources
78(1)
Python Scripts
78(3)
4 Mastering Vectorized Backtesting
81(42)
Making Use of Vectorization
82(6)
Vectorization with NumPy
83(2)
Vectorization with pandas
85(3)
Strategies Based on Simple Moving Averages
88(10)
Getting into the Basics
89(8)
Generalizing the Approach
97(1)
Strategies Based on Momentum
98(9)
Getting into the Basics
99(5)
Generalizing the Approach
104(3)
Strategies Based on Mean Reversion
107(4)
Getting into the Basics
107(3)
Generalizing the Approach
110(1)
Data Snooping and Overfitting
111(2)
Conclusions
113(1)
References and Further Resources
113(2)
Python Scripts
115(1)
SMA Backtesting Class
115(3)
Momentum Backtesting Class
118(2)
Mean Reversion Backtesting Class
120(3)
5 Predicting Market Movements with Machine Learning
123(52)
Using Linear Regression for Market Movement Prediction
124(15)
A Quick Review of Linear Regression
125(2)
The Basic Idea for Price Prediction
127(2)
Predicting Index Levels
129(3)
Predicting Future Returns
132(2)
Predicting Future Market Direction
134(1)
Vectorized Backtesting of Regression-Based Strategy
135(2)
Generalizing the Approach
137(2)
Using Machine Learning for Market Movement Prediction
139(14)
Linear Regression with scikit-learn
139(2)
A Simple Classification Problem
141(5)
Using Logistic Regression to Predict Market Direction
146(4)
Generalizing the Approach
150(3)
Using Deep Learning for Market Movement Prediction
153(13)
The Simple Classification Problem Revisited
154(2)
Using Deep Neural Networks to Predict Market Direction
156(6)
Adding Different Types of Features
162(4)
Conclusions
166(1)
References and Further Resources
166(1)
Python Scripts
167(8)
Linear Regression Backtesting Class
167(3)
Classification Algorithm Backtesting Class
170(5)
6 Building Classes for Event-Based Backtesting
175(26)
Backtesting Base Class
177(5)
Long-Only Backtesting Class
182(3)
Long-Short Backtesting Class
185(5)
Conclusions
190(1)
References and Further Resources
190(1)
Python Scripts
191(10)
Backtesting Base Class
191(3)
Long-Only Backtesting Class
194(3)
Long-Short Backtesting Class
197(4)
7 Working with Real-Time Data and Sockets
201(22)
Running a Simple Tick Data Server
203(3)
Connecting a Simple Tick Data Client
206(2)
Signal Generation in Real Time
208(3)
Visualizing Streaming Data with Plotly
211(6)
The Basics
211(1)
Three Real-Time Streams
212(2)
Three Sub-Plots for Three Streams
214(1)
Streaming Data as Bars
215(2)
Conclusions
217(1)
References and Further Resources
218(1)
Python Scripts
218(5)
Sample Tick Data Server
218(1)
Tick Data Client
219(1)
Momentum Online Algorithm
219(1)
Sample Data Server for Bar Plot
220(3)
8 CFD Trading with Oanda
223(26)
Setting Up an Account
227(2)
The Oanda API
229(1)
Retrieving Historical Data
230(6)
Looking Up Instruments Available for Trading
230(1)
Backtesting a Momentum Strategy on Minute Bars
231(3)
Factoring In Leverage and Margin
234(2)
Working with Streaming Data
236(1)
Placing Market Orders
237(2)
Implementing Trading Strategies in Real Time
239(5)
Retrieving Account Information
244(2)
Conclusions
246(1)
References and Further Resources
247(1)
Python Script
247(2)
9 FX Trading with FXCM
249(16)
Getting Started
251(1)
Retrieving Data
251(5)
Retrieving Tick Data
252(2)
Retrieving Candles Data
254(2)
Working with the API
256(7)
Retrieving Historical Data
257(2)
Retrieving Streaming Data
259(1)
Placing Orders
260(2)
Account Information
262(1)
Conclusions
263(1)
References and Further Resources
264(1)
10 Automating Trading Operations
265(44)
Capital Management
266(11)
Kelly Criterion in Binomial Setting
266(6)
Kelly Criterion for Stocks and Indices
272(5)
ML-Based Trading Strategy
277(14)
Vectorized Backtesting
278(7)
Optimal Leverage
285(2)
Risk Analysis
287(3)
Persisting the Model Object
290(1)
Online Algorithm
291(5)
Infrastructure and Deployment
296(1)
Logging and Monitoring
297(2)
Visual Step-by-Step Overview
299(5)
Configuring Oanda Account
299(1)
Setting Up the Hardware
300(1)
Setting Up the Python Environment
301(1)
Uploading the Code
302(1)
Running the Code
302(2)
Real-Time Monitoring
304(1)
Conclusions
304(1)
References and Further Resources
305(1)
Python Script
305(4)
Automated Trading Strategy
305(3)
Strategy Monitoring
308(1)
Appendix. Python, NumPy, matplotlib, pandas 309(42)
Index 351