1 / 58

量化投资:以 MATLAB 为工具 Quantitative Investment: using MATLAB as Tool —— 第 20 期 COS 沙龙 @ 北京

量化投资:以 MATLAB 为工具 Quantitative Investment: using MATLAB as Tool —— 第 20 期 COS 沙龙 @ 北京. 李洋( faruto ) faruto@163.com http://weibo.com/faruto http://www.matlabsky.com MATLAB 技术论坛管理团队核心成员. 内容目录. MATLAB 简介 N 分钟学会 MATLAB(60<N<180) MATLAB 在量化投资中的具体应用案例简介 基于 MATLAB 的行情软件 ——MATLAB GUI 简介

Télécharger la présentation

量化投资:以 MATLAB 为工具 Quantitative Investment: using MATLAB as Tool —— 第 20 期 COS 沙龙 @ 北京

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 量化投资:以MATLAB为工具Quantitative Investment: using MATLAB as Tool——第20期COS沙龙@北京 李洋(faruto) faruto@163.com http://weibo.com/faruto http://www.matlabsky.com MATLAB技术论坛管理团队核心成员

  2. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  3. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的简单均线交易系统 • 基于MATLAB的常见指标的大盘择时交易系统 • 基于MATLB的期现套利 • 基于MATLAB的股指期货日内突破交易系统 • 基于MATLAB的IF、Cu期货跨期套利(日内高频) • 基于MATLAB的跨市场套利(隔夜低频) • 基于蒙特卡洛模拟的定增基金净值模拟 • 基于MATLAB的品种波动性分析 • 基于MATLAB的交易品种相关性分析 • … … • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  4. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  5. MATLAB简介 • MATLAB的全称是矩阵实验室(Matrix Laboratory),是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 • 在金融领域,使用MATLAB可以加速产品研究,减少开发时间,提高模型的仿真速度和控制项目成本,利用MATLAB以及相关产品,可以进行分析数据,评估风险、开发并优化策略等一系列金融建模工作。

  6. MATLAB简介 • MATLAB包括拥有数百个内部函数的主工具箱和三十几种工具箱。工具箱又可以分为功能性工具箱和学科性工具箱。功能性工具箱用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科性工具箱是专业性较强的工具箱,其中金融领域相关的工具箱主要有: • Datafeed Toolbox:金融数据工具箱 • Econometrics Toolbox:计量经济学工具箱 • Financial Derivatives Toolbox:金融衍生品工具箱 • Fixed-Income Toolbox:固定收益工具箱 • Optimization Toolbox:优化工具箱 • Statistics Toolbox:统计工具箱 • 通过这些工具箱,用户可以利用MATLAB进行交易策略实现和回测、投资组合优化和分析、资产分配、金融时序分析、期权价格和敏感度分析、现金流分析、风险管理、预测和模拟、利率曲线拟合和期限结构建模、Monte Carlo模拟、基于GARCH的波动性分析等。

  7. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  8. N分钟学会MATLAB(60<N<180) • 《量化投资:以MATLAB为工具》-基础篇 • N分钟学会MATLAB(60<N<180) • http://www.matlabsky.com/thread-37104-1-1.html • MATLAB仅仅是个工具。 • 一个普通人不会因为有了手枪而成为神枪手。 • 好的枪手是用子弹“喂”出来的(实战)。 • 一个普通人不会因为有了PhotoShop而成为艺术家。 • 好的艺术家需要有禀赋与灵感(Ideas)。 • 多平台使用(哪个平台好用用就哪个,哪个平台建模周期短就用哪个) • 单一固定策略回测结果的多平台核对(比对)。

  9. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的简单均线交易系统 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  10. 基于MATLAB的简单均线交易系统——关键字:均线系统基于MATLAB的简单均线交易系统——关键字:均线系统 • 测试标的:股指期货日线数据 • 交易策略:5日均线上穿20日均线做多(即买入,若有空头仓位先平掉空头再建多头),5日均线下破20日均线做空(即卖出,若有多头仓位先平掉多头再建空头)。 • 该策略暂没考虑交易成本、冲击成本等影响。

  11. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的常见指标的大盘择时交易系统 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  12. 基于MATLAB的常见指标的大盘择时交易系统——关键字:技术指标、择时基于MATLAB的常见指标的大盘择时交易系统——关键字:技术指标、择时 • 综合使用MA、MACD、DMA等常见技术指标构建大盘择时交易模型。按1%计算双边交易成本。

  13. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLB的期现套利 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  14. 基于MATLB的期现套利——关键字:期现套利 • 利用MATLAB实现常见的期现套利的现货构建,进行指数跟踪,采用市值权重法,选取150只股票来复制HS300指数,然后通过二次规划quadprog来进行权重优化。 • 模型简化:1.没有考虑2011年HS300成分股的几次变动情况。2.对于数据不完整的股票(上市时间过晚,股东大会停牌或者其他情况停牌 等等导致数据不完整),直接从待选股票池剔除。

  15. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的股指期货日内突破交易系统 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  16. 基于MATLAB的股指期货日内突破交易系统-1 ——关键字:日内、突破系统 • 测试策略:FRB • 策略类型:日内策略,趋势类策略 • 策略简介:突破某一区间入场、尾盘固定时间离场、固定比例止损、每日至多交易1次。 • 测试品种:IF。 • 测试周期:1分钟。 • 测试手续费:采用2012年6月1日起四大期货交易所手续费新标准的1.5倍,比如IF最新手续费为0.35%%,则测试手续费为0.35%%*1.5=0.525%%。 • 测试冲击成本:采用绝对形式,IF买卖共1.5跳(slip),其他品种1跳(slip)。 • 参数设置:参数共两个,一个和生成区间中轴相关,另一个是中轴加减的幅度来生成上下轴,暂且不进行参数寻优,使用经验参数固定下来在IF做测试。 • 其他说明:使用固定1手进行测试。

  17. 基于MATLAB的股指期货日内突破交易系统-1 ——关键字:日内、突破系统 • 测试策略:FRB • 策略类型:日内策略,趋势类策略 • 策略简介:突破某一区间入场、尾盘固定时间离场、固定比例止损、每日至多交易1次。 • 测试品种:IF。 • 测试周期:1分钟。 • 测试手续费:采用2012年6月1日起四大期货交易所手续费新标准的1.5倍,比如IF最新手续费为0.35%%,则测试手续费为0.35%%*1.5=0.525%%。 • 测试冲击成本:采用绝对形式,IF买卖共1.5跳(slip),其他品种1跳(slip)。 • 参数设置:参数共两个,一个和生成区间中轴相关,另一个是中轴加减的幅度来生成上下轴,暂且不进行参数寻优,使用经验参数固定下来在IF做测试。 • 其他说明:使用固定1手进行测试。

  18. 基于MATLAB的股指期货日内突破交易系统-2——关键字:日内、突破系统基于MATLAB的股指期货日内突破交易系统-2——关键字:日内、突破系统 • 利用MATLAB自动生成的回测报告(直接生成的Excel文件)

  19. 基于MATLAB的股指期货日内突破交易系统-3——关键字:日内、突破系统基于MATLAB的股指期货日内突破交易系统-3——关键字:日内、突破系统 • 其他图形输出(资金曲线,仓位、最大回撤、收益多周期统计等等)

  20. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的IF、Cu期货跨期套利(日内高频) • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  21. 基于MATLAB的IF、Cu期货跨期套利(日内高频) • 关键字:跨期套利、统计套利、高频、计量、Cointegration、VAR model

  22. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的跨市场套利(隔夜低频) • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  23. 基于MATLAB的跨市场套利(隔夜低频) • 关键字:跨市场套利、商品套利、统计套利、隔夜低频、算法交易( TWAP / VWAP )、计量、 Cointegration • Y-P、Cu-Zn

  24. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于蒙特卡洛模拟的定增基金净值模拟 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  25. 基于蒙特卡洛模拟的定增基金净值模拟 • 关键字:定增、净值模拟、保护垫、Monte Carlo、Garch模型、Black-Scholes模型

  26. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的品种波动性分析 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  27. 基于MATLAB的品种波动性分析 • 关键字:波动率、交易品种动态选择、实盘仓位动态调整 • 通过建立交易品种的波动性模型,监控品种的活跃程度,可以从两个方面使用该模型(系统): • 1.选择合适的品种进行交易(选股)。通过品种的波动性监控,当某个品种的活跃程度相比历史行情明显放大时(有具体可实施的量化方案),可以交易该品种; • 2.进行仓位管理。对于趋势跟踪类的投资组合,可以根据品种的波动性进行灵活的仓位管理,以期有效避免市场的小波动和小震荡(有具体可实施具体量化方案)。

  28. 基于MATLAB的品种波动性分析 • 关键字:波动率、交易品种动态选择、实盘仓位动态调整

  29. 基于MATLAB的品种波动性分析 • 关键字:波动率、交易品种动态选择、实盘仓位动态调整 • 通过每日监测波动率的变化,进行交易品种选择和仓位调整,比如当波动率小于历史25%分位数时,调低仓位(仓位减半),当波动率小于历史10%分位数时,停止日内趋势类策略。比如通过该种控制,2012年7月、8月可以有效过滤掉(低仓位交易或者不交易),实盘中大多数IF日内趋势类策略在2012年7月、8月份是亏损或打平的。

  30. 基于MATLAB的品种波动性分析 • 关键字:波动率、交易品种动态选择、实盘仓位动态调整 • A股市场中的应用

  31. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的交易品种相关性分析 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  32. 基于MATLAB的交易品种相关性分析 • 关键字:品种相关性、板块相关性、系统风险 • 1.检测品种的相关性,可以挑选相关性高的品种(板块)进行对冲操作; • 2.通过检测品种的相关性,可以监控整个市场的系统性风险,进而进行实盘交易品种的选择和交易仓位的调整。 • 设全市场又N个品种,对于任意的品种A、品种B,下面只要把计算A和B的相关性的相关的问题解决,那么N个品种中任意两个品种的相关性的计算就都可以解决了。 • 1.计算A、B相关性的时间周期、时间长度(时间窗口长度)的选择 • 2.时间周期、时间长度(时间窗口长度)确定后,A和B品种的时间轴校正 • 3.相关性的图形展示问题

  33. 基于MATLAB的交易品种相关性分析 • 关键字:品种相关性、板块相关性、系统风险 • 1.检测品种的相关性,可以挑选相关性高的品种(板块)进行对冲操作; • 2.通过检测品种的相关性,可以监控整个市场的系统性风险,进而进行实盘交易品种的选择和交易仓位的调整。 • 设全市场又N个品种,对于任意的品种A、品种B,下面只要把计算A和B的相关性的相关的问题解决,那么N个品种中任意两个品种的相关性的计算就都可以解决了。 • 1.计算A、B相关性的时间周期、时间长度(时间窗口长度)的选择 • 2.时间周期、时间长度(时间窗口长度)确定后,A和B品种的时间轴校正 • 3.相关性的图形展示问题

  34. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • MATLAB在期权定价中的应用 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  35. MATLAB在期权定价中的应用 • 利用MATLAB实现各种期权定价模型 • 二叉树模型 CRR Model • 三叉树模型 Trinomial Tree Model • 蒙特卡罗模拟法 Monte Carlo Method • 最小二乘蒙特卡罗美式期权定价模型 Least-Squares MonteCarlo Method • 利用MATLAB实现期权定价模型精度对比测试

  36. MATLAB在期权定价中的应用 • 二叉树模型 CRR Model • 通过变动二叉树模型的步长数,可以测试二叉树模型的精度和收敛方式,由于Black-Scholes定价模型可以给出欧式期权的精确解,故这里以Black-Scholes模型给出的欧式看涨期权为对比标准价格,步长设置为1到100步,步数足够大时,都是以震荡的方式收敛于对比标准价格。

  37. MATLAB在期权定价中的应用 • 三叉树模型 Trinomial Tree Model • 通过变动步长数,可以测试三叉树模型的精度和收敛方式,由于Black-Scholes定价模型可以给出欧式期权的精确解,故这里以Black-Scholes模型给出的欧式看涨期权为对比标准价格,并对比三叉树模型(Trinomial Tree Model)和二叉树模型(CRR Model)的精度和收敛速度。

  38. MATLAB在期权定价中的应用 • 三叉树模型 Trinomial Tree Model • 可以看出三叉树模型(Trinomial Tree Model)的收敛速度和精度明显优于二叉树模型(CRR Model),但对于实值和虚值期权,三叉树模型(Trinomial Tree Model)在收敛过程中也有锯齿震荡现象,比二叉树模型(CRR Model)轻微一些,平滑一些。

  39. MATLAB在期权定价中的应用 • 蒙特卡罗模拟法 Monte Carlo Method • 对于欧式期权,分别变动仿真次数和时间步数,使用蒙特卡罗模拟法对期权定价,对比Black-Scholes模型定价结果。

  40. MATLAB在期权定价中的应用 • 最小二乘蒙特卡罗美式期权定价模型 Least-Squares MonteCarlo Method • 对于美式期权,分别变动仿真次数和时间步数,使用LSM(Least-Squares MonteCarlo最小二乘蒙特卡罗)模型对期权定价,对比CRR模型(二叉树模型)定价结果。

  41. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  42. 基于MATLAB的行情软件——MATLAB GUI简介 • 源码下载 • 基于MATLAB的行情软件MatlabTraderGUI V1.1(Beta版本)http://www.matlabsky.com/thread-37264-1-1.html

  43. 基于MATLAB的行情软件——MATLAB GUI简介 • GUI方便交流展示 • MATLAB GUI实现简要过程:内核函数的实现——GUI版面设计——组件拖拽——回调函数(Callback)实现

  44. 基于MATLAB的行情软件——MATLAB GUI简介 • pushbutton回调函数

  45. 基于MATLAB的行情软件——MATLAB GUI简介 • Matlab通过Yahoo与Sina获取历史与实时股票数据[faruto版本] • http://www.matlabsky.com/thread-38988-1-1.html

  46. 内容目录 • MATLAB简介 • N分钟学会MATLAB(60<N<180) • MATLAB在量化投资中的具体应用案例简介 • 基于MATLAB的行情软件——MATLAB GUI简介 • 基于MATLAB的量化回测平台——框架、实现、应用 • 学习MATLAB的一些资源

  47. 基于MATLAB的量化回测平台——框架、实现、应用基于MATLAB的量化回测平台——框架、实现、应用 • 回测的目的:尽可能的真实地还原实际交易过程!以期检测策略的表现。 • 回测流程大框架

  48. 基于MATLAB的量化回测平台——框架、实现、应用基于MATLAB的量化回测平台——框架、实现、应用 • 回测平台一些细节考虑 • 回测标的的选取(平台数据输入端需要独立,以便应对各种数据格式) • 冲击成本的估计与设置(在外部需要能灵活设置) • 手续费的设置(在外部需要能灵活设置) • 入场离场价位设置(开盘价入场、收盘价入场、盘中价格入场等等,各种情景需要能灵活设置) • 交易系统的评价(各种评价指标和图形展示的封装) • 参数寻优(参数数值展示、2D/3D图形展示、最优参数、最优参数区域的量化给出和排名)

  49. 基于MATLAB的量化回测平台——框架、实现、应用基于MATLAB的量化回测平台——框架、实现、应用 • 构建一个通用的基于MATLAB的期货量化回测平台 • 实现日内、隔夜策略的回测。 • 实现低频、高频策略的回测。 • 实现简单、复杂模型的回测。 • 丰富的图形展示,自动保存相关图形文件。 • 自动生成Excel文件,保存交易记录、统计指标、资金流、累计平仓盈亏等数据指标。 • 实现多目标函数与自定义目标函数 参数寻优以及2D、3D参数分布图形展示。 • 实现多策略组合测试,可根据收益风险比、回撤、最大收益等不同指标进行资金分配优化调整。 • … …

  50. 基于MATLAB的量化回测平台——框架 基于MATLAB的量化回测平台框架 回测模块 模型参数优化模块 数据模块

More Related