全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
13052 25
2012-11-05
之前发表一个马尔科夫链交易系统的问答帖子,经过这两个多星期的研究,终于研究出成果啦。
原帖:https://bbs.pinggu.org/thread-1818619-1-1.html
原帖:https://bbs.pinggu.org/thread-1593992-1-1.html

    马尔科夫链模型具有随机性、无后效性及不过分依赖历史数据的特点,通过期货价格历史数据训练马尔科夫状态转移概率矩阵,可以根据当前价格所处的状态推断出下一步价格的状态,从而建立投资决策系统,指导买卖。

    马尔科夫链是随机过程中最重要的理论之一,它对于离散序列的预测具有不可逾越的优越性,目前用国内马尔科夫链对证券价格或成交量预测的研究(或学术论文)比较少,而且用于做投资决策研究的更是甚少。但是,在国外近30年内,马尔科夫链已经被广泛的运用在金融市场,最具有意义的是在算法交易的运用中。算法交易(algorithmic trading)是指在金融市场中,投资者通过计算机程序来下达交易订单,并由计算机算法来确定交易订单的交易时机、价格、下单的数量等的交易方式。具体来说,金融界对算法交易的内容和范围似乎还没有明确的界定,其中包括了很多不同的自动化交易方式和功能。订单智能路由、程序交易、订单分割、基于规则的自动化交易等等都会在不同场合被称为算法交易。而通过利用马尔科夫链,能快速有效的预测价格的涨跌和成交量的增减,以此来指导订单智能路由、订单分割和程序化交易。
具体的投资决策是,首先定义 m个状态,用前 N时间段的K线收盘价数据作为训练数据集,训练T步状态转移概率矩阵,然后利用当前的收盘价数据预测第 T个时刻的价格,如果预测的价格大于当前的价格,则做多;如果预测的价格小于当前的价格,则做空。
    一共设置五个状态1、2、3、4、5分别表示大跌、小跌、盘整、小涨、大涨,利用历史前 天至今的开盘价数据训练状态转移矩阵,根据马尔科夫模型,进行预测。入场逻辑如下:
        如果当前状态处于状态4或5,而且预测下一步转移为状态5(大涨),那么做多。
        如果当前状态处于状态1或2,而且预测下一步转移为状态1(大跌),那么做空。
        当前持有多仓,如果预测下一步状态转移为3(盘整),则平仓;如果预测下一步状态转移为1(大跌),那么平多且反手开空。
       当前持有空仓,如果预测下一步状态转移为3(盘整),则平仓;如果预测下一步状态转移为5(大涨),那么平空且反手开多。

1、九个合约的参数测试
这里我用SAS的BASE and MACRO 实现了马尔科夫链交易系统回溯程序,用SAS\GRAPH设计了策略绩效分析图形。测试了8个商品合约(橡胶、沪铜、沪铝、沪锌、PTA、白糖、郑棉)和IF300指数,结果显示所有测试的品种全部盈利。
下面是橡胶连续参数测试结果(其中的参数是时间窗口,也即用多少个Bar来训练状态转移概率矩阵)
橡胶连续参数测试.bmp

2、投资组合回溯
将马尔科夫链交易系统的时间窗口参数设置为12(即用12个Bar来滚动训练马尔科夫链状态转移概率矩阵),投资组合包含:沪铜、橡胶、郑棉、沪铝、股指期货。分别用其连续日收盘价数据进行回溯,时间区间为:2006-01-04—2012-10-26。另外设定初始资金为1000000,分配给每个合约200000,对每次进出场只允许使用30%的资金。假定每个合约的保证金比例都为13%,双边手续费为6%%。
投资组合收益率曲线图
组合收益率.bmp
投资组合资金曲线图
资金权益.png

3、橡胶连续回溯


橡胶连续2011年投资决策图(如果将7年全部展示的话,信号都挤在一起,不容易观测,这里只展示2011年度的)
橡胶连续2011年决策图.bmp

橡胶连续收益分布
橡胶连续收益分布.bmp

橡胶连续收益率曲线图
橡胶连续累计收益率曲线图.bmp

橡胶连续资金权益图
橡胶连续资金权益面积图.bmp


橡胶连续资金回撤率
橡胶连续资金回撤率.bmp

测试平种:橡胶连续

开始时间:2006-01-04

结束时间:2012-10-26

初始资金:200000

最终资金:362042.033

保证金比例:13%

双边手续费:6%%

每次开仓使用资金:30%的资金

总交易次数:274

盈利次数:141

胜率:51.4598%

净利润:162042.033

净利润率:81.021%

最大回撤:7.294 %


平台:SAS9.1.3

交易信号及指标计算:SAS \BASE、MACRO

绩效分析图:SAS\GRAPH

这里非常感谢   davil2000 提出的宝贵的意见。欢迎各位指导,欢迎跟帖,大家一起交流学习。


附件列表
资金权益.png

原图尺寸 18.26 KB

资金权益.png

组合收益率.bmp

原图尺寸 44.14 KB

组合收益率.bmp

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-11-6 09:16:27
看来不是很给力啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-11-6 22:04:58
LZ辛苦了
人气旺的未必就是精品
交易法则是高端研究
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-11-7 10:17:15
数据分析师3K 发表于 2012-11-6 22:04
LZ辛苦了
人气旺的未必就是精品
交易法则是高端研究
谢谢,表示赞同。个人认为在一套交易系统的研发中,其交易法则交易理念是至关重要的,相应的测试平台也决定了测试的准确度,SAS以其特有的语法格式,构建交易策略的回溯系统也是很有研究价值的地方。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-11-7 21:14:48
wanwanle2
你好,
1)连续合约数据是哪里来的?是合成的连续指数数据吗?

2)SAS的回溯系统框架可以分享吗?不奢求买卖交易规则
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-11-8 09:15:28
air320322 发表于 2012-11-7 21:14
wanwanle2
你好,
1)连续合约数据是哪里来的?是合成的连续指数数据吗?
你好,
连续合约的数据是内部处理的数据,直接用SAS连接数据库的。如果没有数据来源的话,一般从各券商的看盘软件上可以直接下,只是比较麻烦。
程序当然可以分享,我想等到把每个模块都写成MARCRO后再一并给出。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群