- Python算法交易实战
- (法)塞巴斯蒂安·多纳迪奥等
- 1548字
- 2025-02-26 23:02:49
前言
在现代社会,仅仅凭借比别人更快来获得显著的竞争优势已越来越难,还需要依靠复杂的交易信号、预测模型和交易策略。本书希望能为广大读者提供相关知识和可参考的实践经验,能够引导读者深入了解现代电子交易市场和市场参与者的运作方式,以及如何使用Python设计、构建实用并能带来赢利的算法交易业务所需的知识。
本书介绍算法交易和配置执行任务所需的环境。你将学习算法交易业务的关键组件,以及在着手构建自动化交易项目之前需要提出的问题。
通过阅读本书,读者能够学习如何开发量化交易信号和交易策略,掌握一些著名交易策略的运作和实施方法,还将了解、实施和分析更复杂的交易策略,包括波动率策略、经济发布策略和统计套利交易策略,以及学习如何使用算法从头开始构建一个交易机器人。
现在,请你准备好与市场建立联系,开始研究、实施、评估,并安全地在实际市场中操作算法交易策略。
目标读者
本书的目标读者是软件工程师、金融交易员、数据分析师、企业家,以及任何想开始“算法交易之旅”的人。如果你想了解算法交易的工作原理、交易系统的所有组成部分、黑盒和灰盒交易所需的协议和算法,以及如何建立完全自动化且可带来赢利的交易业务,那么本书就是适合你的!
本书内容
第1章“算法交易的基础原理”介绍什么是算法交易,以及算法交易与高频交易或低延迟交易之间的关系。本章将讨论从基于规则到人工智能的算法交易的演变,并将研究基本的算法交易概念、资产类别和工具。你将学习如何为算法决策打下基础。
第2章“通过技术分析解读市场”涵盖一些流行的技术分析方法,并展示如何将其应用于市场数据分析。本章将介绍如何利用市场趋势、支持和阻力进行基本的算法交易。
第3章“通过基础机器学习预测市场”介绍一些简单的回归和分类方法,并解释在交易中应用监督统计学习方法的优势。
第4章“人类直觉驱动的经典交易策略”探讨一些基本的算法策略(动量、趋势、均值回归),并解释它们的工作原理以及优缺点。
第5章“复杂的算法策略”通过研究更高级的方法(统计套利、配对交易)以及它们的优缺点来进一步介绍基本算法策略。
第6章“管理算法策略中的风险”解释如何衡量和管理算法策略中的风险(市场风险、操作风险和软件实施缺陷)。
第7章“用Python构建交易系统”描述基于前几章内容创建的算法支持交易策略的功能组件。本章将介绍用Python构建一个小型交易系统,并使用前几章中的算法构建一个能够进行交易的交易系统。
第8章“连接到交易所”介绍交易系统的通信组件,将介绍使用Python中的quickfix库将交易系统连接到真实的交易所。
第9章“在Python中创建回测器”介绍如何通过运行包含大量数据的测试来验证交易机器人的性能,从而改善交易算法。一旦实现模型后,就有必要测试交易机器人在交易基础设施中的行为是否符合预期。
第10章“适应市场参与者和环境”讨论为什么在实时交易市场中部署策略时,其执行效果不如预期,并提供如何在策略本身或基础假设中解决这些问题的例子。本章还将讨论为什么表现良好的策略在性能方面会慢慢衰退,并提供一些简单的示例来说明如何解决此问题。
如何充分利用本书
在阅读本书之前,读者最好具备金融和Python的基础知识,结合本书在异步社区提供的代码和彩图资源,充分理解书中所讲的算法及交易知识,并参照相关示例进行实践。
使用约定
本书中使用了许多文本约定。
CodeInText: 表示文本中的代码,如数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟URL、用户输入等。举例说明:“该代码将使用pandas_datareader包中的函数DataReader。”
代码块设置如下:
import pandas as pd from pandas_datareader import data
当我们希望引起你对代码特定部分的注意时,相关的内容将以粗体显示:
if order['action'] == 'to_be_sent': #Send order order['status']='new' order['action']='no_action' if self.ts_2_om is None:
粗体:表示新术语,重要词或你在屏幕上看到的单词。例如,菜单或对话框中的单词会出现在文本中。下面是一个示例:“A mean reversion strategy that relies on the Absolute Price Oscillator (APO) trading signal indicator。”
警告或重要说明。
提示和技巧。