APP下载

用 Python 实现你的量化交易策略

消息来源:baojiabao.com 作者: 发布时间:2024-05-01

报价宝综合消息用 Python 实现你的量化交易策略

投资数字货币新思路—零门槛量化交易投资全解

年收益率近40% !揭秘人人都能学的量化思维投资数字货币

在上一篇中,我们介绍了量化交易的一般流程、基本概念以及一些基本的策略设计思路,在这一篇中,我们将要利用上述成果,手把手教您构建第一个量化交易策略!

我们以比特币作为交易标的,遵循科学的研究方法,将策略设计划分为资料获取,资料整理,编写策略,评估结果四大流程。

一、 资料获取

我们首先必须获得高质量的历史价格资料,这里我们从CoinMarketCap网站中下载,网址是https://coinmarketcap.com/,在这里我们可以轻松下载到日频资料。我们选择的回测时间是2017年6月11日到2019年6月11日。

在excel中可以完美显示如下图,

二、 资料整理

一般情况下,往往需要对多个来源的资料进行交叉比对,有时还需要进行去重,填补空缺值,求指数等操作。由于CoinMarketCap已经将资料整理好了,整理资料这一步我们需要做的工作很少。

三、 编写策略

我们来尝试一个日频率的趋势跟随策略,参考价格是比特币每日收盘价格,我们用python来实现算法。

这个策略的想法非常简单,如果当日收盘价高于前ahead天的收盘价,就做多,反之,如果当日收盘价低于前ahead天的收盘价,就做空,否则空仓。python程式码如下,在这里我们假设ahead=3,并且每天投入的仓位始终为1个单位:

四、 评估结果

那么这么一个简单的策略效果如何呢?我们来看一下其两年时间的累积盈利,见下图:

也就是说,你在两年前投入1单位资产,在两年后你可以收获1单位利润,赚了1倍。看起来赚的不多,但是让我们来比较一下,假设你在两年前购买了一个比特币并且坚定持有,它的收益曲线在适当缩放后与上述曲线进行比较如下,

可以看到单纯“价值投资”的收益稳定性要差很多!请注意,单纯追求收益是没有意义的,你总可以通过加杠杆博取更高的收益,你必须关注风险,换句话说,风险调整后的收益才是有参考价值的。

这里就涉及到我们在前文中提到的资讯比率,注意,它等于收益除以风险,即单位风险下的收益水平,这是我们想要的!那么,这两种投资方法,资讯比率分别是多少呢?

用python进行简单计算可得,趋势策略的资讯比率为0.076,而简单持有的资讯比率只有0.017,这就是说,在同样风险的情况下,趋势策略可以获得简单持有策略超过4倍的收益!

但是赚钱不是那么简单的,实际在执行中,必须要考虑以下问题,

1. 这里我们假设比特币可以做空,实际上,就我们所知,大部分数字货币交易所并不支援做空,所幸的是,比特币交易量最大的交易所BitMEX支援比特币期货交易,即支援做空比特币。

2. 这里我们假设可以以当日收盘价成交任何交易,现实中,滑点和手续费是必须考虑的问题,实际上,这两项费用是吞噬利润的黑洞!手续费理解起来简单一些,它是与交易量成正比的一个值,滑点则要复杂很多,很难精确预测每一笔交易滑点有多大,实践中往往只能够根据经验设定一个值。回测要尽可能模拟真实的交易环境,必须考虑这两点费用。

总结

本篇,我们向大家展示了量化交易策略从一个点子开始到最后评估的全部流程。显然,这个策略还很不完美,距离最终能够真正赚钱还有一定距离,不过万事开头难,接下来我们尝试用更加精细和复杂的技术来打磨这个策略,让其能够更加稳定和强大。

2020-01-19 19:49:00

相关文章