针对Quant的Python快速入门指南

使用PythonQuantLib库,进行期权的定价与希腊字母的计算(2) 阅读详情
作者:用Python的交易员
原创文章,转载请注明出处


最近有越来越多的朋友在知乎或者QQ上问我如何学习入门Python,就目前需求来看,我需要写这么一篇指南。

针对整个vn.py框架的学习,整体上有两条不同的路线:
  • 有经验的Quant学习如何使用Python语言来做策略和交易程序的开发(编程语言是学习重点)
  • 有经验的程序员学习如何将自己的编程知识和经验应用在量化研究和策略开发上(金融量化是学习重点)

我自己本身是金融工程硕士,毕业后也是从Quant入行,所以这篇指南主要针对的是第一条路线,欢迎社区里从第二条路线入行的朋友写写自己的经历。

以下内容建议按照顺序一步步走,不要跳步、不要偷懒,多敲代码、多做调试,英语不好的就当顺道提高阅读水平吧。

Learn Python The Hard Way

这套教程是我进入Python世界大门的敲门砖,一共50个Exercise包含了一个Python新手需要知道的所有基础:
  • 如何搭建Python环境
  • 变量、注释、运算符
  • 输入、输出
  • 函数
  • 数据结构:字典、列表、集合
  • OO:类和对象
  • 控制语句:条件、循环
  • Python的模块
  • 构建一个小型项目
  • 等等

学习方法很简单:照着Introduction章节中的要求,不用IDE只用编辑器(文中推荐的是Notepad++,个人觉得Sublime Text也不错),一行一行地敲代码,敲完后用最原始的方法来运行,根据Python解释器的异常输出来做调试。
50个Exercise全部完成后,你基本就掌握Python的运行和调试方法以及基础语法了。

利用Python进行数据分析



这本书的作者Wes McKinney在美国著名的量化对冲基金AQR工作时开发了Python在数据分析领域的主要工具pandas。这本书最大的特点之一是作者用非常多的案例来介绍numpy、matplotlib、pandas和ipython在实践中的使用方法,读者实际操作过一次后立即就可以把相关的知识应用在自己其他相关的项目上。

网上有不少建议新手直接从某个库的用户手册开始学习,我个人不赞同这种方法。原因是大部分库的用户手册主要是介绍其API的使用方法,内容写得太过抽象,对于本来就没有太多经验的新手而言就跟死记硬背英文单词差不多,看了挺久后往往还不知道如何把代码系统化的整合起来解决自己的问题。

Python Cookbook
链接: 京东购买页面

有了以上两段学习的基础后,可以把Cookbook这本著名的“烹饪秘籍”买了放在书橱里以备不时之需(没完成以上两段买了也是浪费看不懂)。既然叫秘籍,内容难度高是必然的,整本书根据用户要使用Python解决的具体问题来区分章节,请了每个领域中的大牛分享了一些经验和代码。

和前两本不同的是这本书的内容不用全部掌握,可以先大概扫一遍知道每章有什么内容,后面做开发遇到相应问题时再来翻书研究。另外这本书里很多技术属于Python的“奇技淫巧”级别,如果能全部掌握对于编程水平会有非常大的提高。

PyQt4入门(ZetCode)
链接: ZetCode

PyQt4是目前Python上最为主流的GUI开发库,底层运行的是C++开发的Qt代码,上层使用Python封装的API来实现调用,运行效率足以满足开发量化交易实时监控界面的需求。

对于Python新手而言,学习PyQt4除了开发GUI外,更重要的是吸收PyQt4代码中的面向对象(OO)的设计模式相关的知识。简单的量化策略可以用过程式编程的方法来实现(如轮询价格、突破100买、跌破90卖),但是对于复杂的量化策略(如期权波动率套利、跨多市场套利等)就需要使用OO的设计模式来解耦不同功能的模块(信号生成、委托下单、风险管理),提高整个代码的健壮性和可维护性。PyQt4的OO编程风格非常简洁和清爽,掌握后用在其他的项目开发上可以大幅提高程序的编码质量。
另外推荐这本书给想要更深入学习PyQt4的朋友: Introduction to Python Programming and Developing GUI Applications with PyQT

QuantStart



应该是目前全球Python量化交易领域访问量最大和内容最丰富的网站,不加之一是因为据我所知还没有更大的,而且我还喜欢经常在网上找Python量化的资料,应该算得上经验丰富。
QuantStart上的内容整体难度较高,都是直接使用Python来处理量化交易项目的知识经验和代码实例,没有老老实实学完前几个部分大概率是会看得云里雾里。
总结下网站文章的大体分类:
  • 买方(P宗):

    • 算法交易
    • 统计建模和机器学习
    • 量化策略研究
    • 时间序列建模
  • 卖方(Q宗):

    • 二叉树模型
    • 随机积分
    • 偏微分方程PDE
  • 代码示例:

    • C++
    • Python
    • 外汇交易平台开发
    • 统计套利平台开发
  • Quant职业生涯

    • 职业生涯建议
    • 读书笔记

另外网站的作者也写了两本书Successful Algorithmic Trading和Advanced Algorithmic Trading,比起另外一个著名的量化博客主E.P. Chan写的两本书质量要好非常多,推荐购买。

其他学习内容
CodeCombat





写Python代码来玩RPG游戏,游戏设计的非常好,毫无基础的人也能逐步掌握Python编程(本来就是设计给孩子的),同时一些关卡对于程序员的逻辑思维能力有很好的训练。游戏难度随着关卡逐步增强,到后期还是有相当的挑战度,可能导致学习者沉迷其中,入坑前请谨慎三思……

Flask Web开发:基于Python的Web应用开发实战


Flask是Python目前在Web开发领域人气最高的框架之一(另一个是Django),采用微框架的设计哲学,代码短小精悍,同时还有着非常好的扩展性。整本书的内容就是教会读者如何一步步从0开始搭建一个自己的博客,中间涉及的设计模式、数据库ORM、APP部署等知识在量化领域也都有相应的应用。

廖雪峰的Python教程

可以作为LPTHW的中文版替代,涉及的内容相对更加丰富也带有大量的代码实例,不过整个教程中对于Python一些底层特性的讲解较多,更加适合完成了前几个阶段的学习后用来作为二次的知识巩固和提高,初学者建议还是从LPTHW开始入门。

知乎


知乎和豆瓣一样,都是国内使用Python开发的大型项目,其员工对于Python的讨论氛围非常浓厚。同时作为一个以问答为主的社区,知乎上的Python问题下汇聚了很多国内Python业界的大牛级高手的回答和文章,上下班挤地铁、买早饭排队、晚上睡不着的时候随手翻一翻,既解决了无聊又能吸收很多碎片化的知识。

vn.py项目




最后,请允许我厚着脸皮推荐一下自己的开源项目……  #^_^#

Field II 超声相控阵仿真系列:多角度平面波相干合成提升成像质量 本文深入探讨了Field II超声相控阵仿真中,如何通过多角度平面波相干合成技术提升成像质量。针对单次平面波成像对比度与分辨率不足的问题,详细解析了从探头建模、多角度发射延时计算到回波数据相干合成的完整流程,并提供了关键参数调优建议,以实现图像质量与计算效率的平衡。 阅读详情

相关推荐

ESP32学习,驱动LED点阵屏,SD卡播放GIF动图

搬运就可以实现效果,如果有不足,请批评指正。下步该学一下如何文章上视频了,老是截图不方便展示效果。

u011625956的博客 1840

探秘Python Quant:金融科技领域的量化投资神器

探秘Python Quant:金融科技领域的量化投资神器 去发现同类优质开源项目:https://gitcode.com/ 在金融投资领域,量化投资是一种利用数学模型和计算机程序进行交易决策的方法。今天,我们要介绍的python_quant项目,就是一款基于Python的开源量化投资框架,它为开发者和投资者提供了强大的工具,帮助他们在金融市场中实现智能化、自动化交易。 项目简介 python_qu...

gitblog_00083的博客 613

QuantPy:Python中的量化金融框架

定量 python中的定量金融框架。 免责声明:这是一个非常简单的项目。 它尚未准备就绪,将不会使用一段时间。 实际上,作者仍在非常学习这种框架需要包含的内容。 但是,如果您认为自己对任何类型的人都有帮助,那么欢迎他们。 谢谢! 当前的一些功能: 可以从Yahoo导入每日收益的投资组合类。 计算夏普比率和有效边界的最佳权重 裸露的骨骼事件探查器 说明文件: 可以在中。 请启动他们以获取更多信息。 捐款欢迎。 无论是功能请求,错误报告,对文档的贡献,新功能的补丁,其他改进的错误修复,都欢迎为该项目做出任何贡献。 只需,添加一些内容并[发出拉取请求]( )。 如果您是Git的新手,那么非常适合用于进一步的细节。 同样,仅下载代码并提供反馈也非常有用。 将您的反馈意见提交到的。 提前致谢。 您也可以通过irc.freenode.net上的#quantpy加入我们。 如何安装。

Python Quant

Numpy arange 创建等差数组 np.arange(5,20, step = 2) [ 5 7 9 11 13 15 17 19] reshape 重塑 import numpy as np b = np.arange(27).reshape(3, 3, 3) [[[ 0 1 2] [ 3 4 5] [ 6 7 8]] [[ 9 10 ...

tony__lin 1125

进阶的阿牛哥之pandas透视表pivot_table的使用

1、原数据data的呈现形式是:多列,无行索引;一个一个标的平铺而成。 2、数据透视后,方便计算所有标的某个值的变化,示例中是收盘价close。 代码全文: from atrader import * import numpy as np import pandas as pd import matplotlib.pyplot as plt import math import statsmodels.api as sm import datetime as dt import scipy.stats a.

微信公众号进阶的阿牛哥的博客 376

GS Quant:高盛25年量化金融经验铸就的Python微秒级交易引擎

在量化金融领域,每微秒的延迟都意味着数百万美元的潜在损益。GS Quant作为高盛25年市场经验的技术结晶,不仅仅是一个Python工具包,更是连接全球顶级风险转移平台与量化策略开发者的桥梁。这个基于世界最强大风险平台的工具集,专为加速衍生品定价、交易策略开发和风险管理解决方案而生,将机构级金融工程能力封装为开发者友好的Python接口。 ## 项目定位与价值主张:机构级量化工具的革命性突破

gitblog_00826的博客 967

GS Quant:高盛开源量化金融工具包的完整使用指南

在瞬息万变的金融市场中,量化交易策略的快速开发和部署能力已成为机构投资者的核心竞争力。面对复杂的金融衍生品定价、风险管理和策略优化需求,传统的开发模式往往耗时数月,错失市场机会。GS Quant作为高盛开源的专业量化金融Python工具包,为机构投资者提供了完整的量化解决方案,基于25年市场经验打造,帮助用户快速构建交易策略和风险管理体系。 ## 量化金融面临的技术挑战 量化金融领域面临三大核

gitblog_00847的博客 406

5大核心功能揭秘:如何用gs-quant打造专业级金融量化分析系统

在当今快节奏的金融市场中,量化分析已成为投资决策的关键工具。gs-quant作为高盛开源的Python量化金融工具包,为金融专业人士和量化分析师提供了一套完整的解决方案。无论你是金融机构的分析师、对冲基金的交易员,还是个人投资者,gs-quant都能帮助你快速构建专业的量化分析系统,实现从数据获取到策略回测的全流程自动化。 ## 为什么选择gs-quant进行金融量化分析? gs-quant

gitblog_00926的博客 1199

量化策略文档质量革命:GS Quant自动评分工具设计指南

你是否还在为量化策略文档的质量评估烦恼?是否曾因文档晦涩导致团队协作效率低下?本文将带你探索如何利用GS Quant构建一套自动化文档质量评分工具,解决量化策略开发中的文档痛点。 读完本文,你将能够: - 理解量化策略文档质量的核心评估维度 - 掌握使用GS Quant工具包构建评分模型的方法 - 实现文档质量评估的自动化流程 - 提升团队协作效率和策略开发质量 ## 文档质量评估的痛点与挑战...

gitblog_01141的博客 998

量化金融性能革命:FPGA与GPU在GS Quant中的异构计算架构深度解析

在当今高频交易和量化投资领域,微秒级的性能差异意味着数百万美元的盈亏。作为高盛开发的Python量化金融工具包,GS Quant为机构投资者提供了强大的回测引擎和性能优化模块,帮助开发者构建低延迟交易系统。本文将深入探讨FPGA与GPU在GS Quant框架下的异构计算架构,为量化策略的硬件加速提供权威指南。 ## 行业挑战:量化策略的性能瓶颈与硬件加速需求 随着金融市场复杂度的提升,量化交易

gitblog_01146的博客 940

如何用gs-quant构建稳健量化策略:3步识别并避免过拟合风险

在量化投资的世界里,**策略过拟合风险控制**不是可有可无的选项,而是生存的必需品。就像建造房屋需要坚实的地基,开发量化策略需要严格的验证流程。 记住这个核心原则:**稳定的平庸远胜过不稳定的卓越**。通过gs-quant提供的工具和方法,你可以在策略开发的每个环节植入风险防控机制,让量化策略在复杂多变的市场中保持稳健表现。 成功的量化投资不仅是数学和编程的游戏,更是风险管理艺术的体现。从今天

gitblog_00747的博客 365

3分钟上手:高盛开源的金融量化分析神器gs-quant完全指南

你是否对金融量化分析感兴趣,却被复杂的数学模型和编程门槛吓退?今天我要介绍一款由高盛(Goldman Sachs)开发的开源Python工具包——**gs-quant**,它能让你用简单的代码完成专业的金融量化分析。无论你是金融从业者、数据分析师,还是对量化投资感兴趣的学生,这篇文章都将带你快速入门这个强大的工具。 gs-quant是一个基于全球最强大的风险转移平台构建的Python金融量化工具

gitblog_00583的博客 828

2025年4月Microsoft GDK重大更新:Submission Validator与动态调试功能详解

Microsoft GDK(GitHub加速计划)2025年4月更新带来了两项革命性功能——Submission Validator提交验证工具和动态调试增强模块,为开发者提供了从项目构建到商店提交的全流程效率提升方案。这一更新不仅简化了游戏开发的合规性检查流程,还通过实时调试技术大幅缩短了问题排查周期,让开发者能够更专注于创意实现而非繁琐的技术细节。 ## Submission Validat

gitblog_00237的博客 862

PyQuant 开源项目实战指南

PyQuant 开源项目实战指南 项目介绍 PyQuant 是一个旨在教育和引导Python编程新手进入量化金融领域的开源项目。由用户名goodchinas在GitHub上维护,它采用了MIT许可证,允许广泛的学习和应用。该项目不仅涵盖了Python的基础知识,还深入到了数据分析、机器学习以及量化交易的实用技能,适合对量化投资感兴趣的学生和开发者。 项目快速启动 要开始使用PyQuant,首先确保...

gitblog_00674的博客 824

决胜AI金融新赛道!Python Quants 创始人分享宝贵 AI 算法交易经验

随着技术创新、算法突破、大数据崛起以及与日俱增的算力,很多行业正在经历人工智能所带来的剧变。在金融领域,人工智能技术也已锋芒毕露!在无数聪明头脑和智慧机器的帮助下,我们是否将迎来这样的一天:金融市场达到完全有效,从而使我们可以放心地认为所有的资产都被正确定价?这本《金融人工智能:用Python实现AI量化交易》覆盖了金融人工智能的若干重要方面。通过Python示例,介绍人工智能技术在金融数据分析中...

图灵教育 454

【Trading 101】Notes on Successful Algorithmic Trading Part I: Idea Sourcing & Basic Modeling

【Trading 101】Notes on Successful Algorithmic Trading Part I: Idea Sourcing & Basic Modeling

AdamNi_NintyNine的博客 720

探索金融量化分析的未来:QuantPy

QuantPy是一个在Python中构建的定量金融框架,旨在为金融专业人士和数据科学家提供一个强大的工具集,以处理复杂的金融市场数据分析任务。这个项目虽然仍处于早期开发阶段,但已经展现出了巨大的潜力和实用性。 ## 项目技术分析 QuantPy的核心是其`Portfolio`类,它能够从Yahoo导入每日收益率数据,这是量化投资的基础。此外,框架还支持计算最优权重以优化夏普比率,并能构建有效前...

gitblog_00006的博客 617

量化交易系统开发-实时行情自动化交易-8.3.开拓者TBQuant平台

开拓者TBQuant是一款专业的量化交易平台,以高效、稳定、全面的特性闻名于业内。它不仅支持策略开发与回测,还能无缝衔接到实盘交易,提供从开发到交易的一站式解决方案。以下将从平台特点、策略开发、回测流程、优化方法以及实际应用等方面,全面解析开拓者TBQuant在量化交易中的作用和应用场景。

fengbuyu的博客 3987

easyconnect-7.6.3.0.86415-1-x86_64.pkg.tar.zst

该包是我用deb包转换过来的sudo debtap EasyConnect_x64.debsudo pacman -U easyconnect-7.6.3.0.86415-1-x86_64.pkg.tar.zst安装完后可能启动不了,参考:https://www.cnblogs.com/cocode/p/12890684.html

上一篇: 在Python中使用QuantLib
下一篇: Zipline框架初探(上)
Trader_Python
博客等级 码龄11年 392粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值