在引入blotter包之后,一个完整的交易系统就已经可以建立起来了。但是作为盈利的基础,基于quantmod和TTR虽然具有了必要的建模工具,我们依然希望能够有更加灵活易用的交易建模方法。这就是quantstrat包的目标。
(1) quantstrat包简介
quantstrat包以xts,quantmod,TTR,blotter等为基础,提供了基于交易信号的金融交易建模和回测的基础架构。利用quantstrat包可以相当大程度上简化建立或检验交易策略的过程。quantstrat包的名字就是量化策略。
quantstrat包和blotter包都是R-forge上TradeAnalytics项目的组成部分。也是一个依然在开发中的包。
http://r-forge.r-project.org/projects/blotter/
它的主要特征是:
支持应用于多资产多币种的投资组合;支持包括指标(indicators),信号(signals)和交易规则(rules)的完整的交易策略;支持包括market, limit, stoplimit, 和stoptrailing等在内的多种委托(订单,指令order)方式;支持委托规模(order sizing)和参数优化。
quantstrat包进行策略建模的基本思路是:
(i)初始化金融产品导入数据
(ii)依次引入指标、信号和规则以形成策略,按照策略下达指令。
指标是指源自交易数据的一个数量值:如均线、MACD等;
信号是指指标在某些交易时点和交易数据相互作用的结果,比如交叉、阈值、底顶等;
规则是指结合交易数据、信号以及当前的组合和账户