- 博客(21)
- 收藏
- 关注
原创 【重要内容】敬告读者
由于CSDN近期将要搞事情,此专栏建议已购买的用户将内容保存到本地。尚未购买的用户请待9月1日后再决定是否需要购买。如此规则上线,本人将会关闭此专栏。并寻找其他渠道进行发布。
2023-08-11 09:49:46 481 8
原创 【从零开始vnpy量化投资】二十. 【完结篇】创建docker镜像
在上一篇文章中,我们已经在云服务器上安装了mysql和docker,这一章我们将学习如何将vnpy环境和我们自己的代码打包到docker镜像中。在笔者开始尝试docker的时候,大约在2022年,当时还没有vnpy的官方镜像,所以笔者选择自行搭建。在最新的vnpy版本发布上个,官方已经提供了docker的镜像版本,可以通过docker直接下载并运行。
2023-07-12 15:43:23 904 3
原创 【从零开始vnpy量化投资】十九. 部署云服务器与其他相关事项
本篇主要介绍如何将我们的服务部署到云服务器上,以及如何提高部署的便利性,方便我们更加快速的更新策略。原本笔者打算将云服务器部署与docker镜像创建合并到一起,但经过整理后感觉内容过多,且都比较琐碎,所以还是将这部分分为两篇进行讲解。本篇主要关注如何在linux服务器上安装相关软件等操作。
2023-07-10 16:28:40 619 2
原创 【从零开始vnpy量化投资】十八. 自动换月与模拟主力连续合约
期货合约与股票有一个比较明显的差异,就是期货合约是有交割时间的,大部分品种是每个月都有一个到期交割的合约,但不是每个合约都有相同的交易量。所以一般我们将同一个品种成交量最大的那个合约叫做主力合约,这类合约由于成交量比较大,使用市价下单的时候买卖价差就会比较小,这样成交的价格会更划算。如果是成交量非常小的月份,比如新产生的最远月的合约,可能一天成交就几百手,买卖挂单的价差会高达几十甚至几百点。当主力合约交割日越来越近,大部分交易者会将持仓转移到下一个主力合约,对于量化交易的我们来说,这也是需要考虑的事情。
2023-06-07 09:55:18 797
原创 【从零开始vnpy量化投资】十七. 投资组合策略分段回测
根据投资组合理论最基础的结论,分散投资可以获得比单个资产更低的风险,所以投资组合策略基本需要用到大量的合约来进行测试,尤其是相关性不强的品种。同时,组合策略中的绝大部分都是中长期策略,也就是回测需要验证的周期更长。这两个原因导致我们在测试组合策略时,经常需要加载长达10年的多个合约品种来进行回测。
2023-05-26 09:38:37 606 10
原创 【从零开始vnpy量化投资】十六. 海龟策略
今天我们将学习一个经典的期货投资策略,海龟策略。关于海龟策略的确有很多传奇故事可以讲,不过这个对我们如何编写代码没太大帮助,有兴趣的读者可以寻找《海龟交易策略》这本书来阅读。今天我们主要是学习海龟策略是如何进行设计的,以及如何使用代码来实现想要的效果。
2023-05-24 15:53:12 688 5
原创 【从零开始vnpy量化投资】十五. 投资组合策略模板介绍
在之前的课程中,我们主要是使用了vnpy的cta策略模板,这个模板的特点就是只支持单一合约。如果我们需要同时对多个合约进行交易,就需要用到投资组合策略,这个模板的主要代码在vnpy_portfoliostrategy包下面的template.py中。下面我们大概讲解一下这个模板的主要内容。
2023-05-19 15:50:58 602
原创 【从零开始vnpy量化投资】十四. 参数优化技巧
之前我们在使用回测时,都是人工修改参数来查看回测效果,如果想批量执行一些参数,找到其中效果最好的参数,这就需要用到参数优化。vnpy自带的参数优化包含两种类型,一种是暴力破解算法,一种是遗传优化算法。
2023-05-12 17:00:45 548 2
原创 【从零开始vnpy量化投资】十三. 监控告警与自动重启
之前我们主要通过日志来判断策略运行是否符合预期,当运行时间较长以后,人力基本很难做到长时间去监控每天海量的日志信息,以及一些意外情况需要人工干预的情况,仅通过观察日志可能影响发现问题的速度。这时候我们需要对意料之外的情况,添加一些更方便快捷的告警通知,通过社交软件发送给自己常用的账号,这样就可以做到即使人不在电脑前,也能随时获得服务的异常情况。另外告警除了可以监控异常场景,也可以用来通知重要的交易信息,比如开仓的具体交易信息,方便自己了解开仓时刻的各类指标信息,核查开仓策略是否正常。
2023-05-08 10:56:17 318
原创 【从零开始vnpy量化投资】十二. CTA策略开发技巧
我们在之前的策略编写中,主要关注的是策略交易信号和持仓管理,这对于回测来说就是足够完整的了。但对于实盘或者模拟盘的运行,这样的策略还无法满足需求,在本章我们将会讨论几个实盘与回测差异巨大的场景,并尝试使用编码方式来确保策略在两种模式下运行尽可能一致。
2023-05-04 16:53:46 658
原创 【从零开始vnpy量化投资】十一. 实盘接入测试与正式实盘
本篇主要讲解如何使用vnpy进行实盘交易,由于上一节我们已经学习了模拟盘运行,如果一切顺利的话,只需要通过穿透测试,就可以正式部署实盘了。
2023-04-28 16:31:51 2442
原创 【从零开始vnpy量化投资】简介:个人vnpy学习路线
本文主要讲述了一些笔者个人进入量化领域的经历,并将过程中的体会分享给大家,这些内容既是过去经历的描述,也可以为本系列的内容做一个简介,即笔者为何会将某些内容设计到专栏中来。
2023-04-27 15:26:21 2657 1
原创 【从零开始vnpy量化投资】十. 使用simnow进行模拟盘交易
在正式开始实盘交易之前,我们如何验证策略是否真的如回测表现的一样。这时我们就需要使用与实盘一致的方式进行测试。模拟盘服务器的主要用途就是提供一个与正式交易服务器完全一致的交互方式。通过从服务器订阅行情和发起交易请求,验证软件的运行是否正常。
2023-04-26 09:51:06 3503 2
原创 【从零开始vnpy量化投资】九. 资金动态计算
在之前的策略中,无论是vnpy内置策略还是我们自己编写的策略,单次交易的手数都是固定的。这种情况既不符合风险管理的要求,也无法充分利用盈利后的资金达到复利增长的目的。所以我们需要为策略添加盈亏计算,使策略内部可以获得实时准确的资金情况,从而根据当前资金量计算合适的仓位。
2023-04-24 09:58:08 595
原创 【从零开始vnpy量化投资】八. 交易记录持久化储存
到目前为止,我们已经为开发vnpy策略准备了很多的基础工具,比如添加日志、独立储存数据、接入第三方数据。下面我们就要添加一个极为重要的功能,将所有成交记录记下来。相信所有具有一定期货投资经验的读者,都应该知道交易记录的重要性。无论是量化还是主观交易者,交易记录都是一个重要的复盘工具。主观交易者可以通过点位和时间评价自己的策略和预判能力,量化交易者通过交易记录检验策略的正确性和执行力,同时也可以用交易记录来估算滑点,最终使自己对回测的收益有更准确的预期。
2023-04-20 16:01:58 656
原创 【从零开始vnpy量化投资】七. 接入第三方数据源与定时下载数据
上一节课我们讲解了如何将vnpy的数据库切换为mysql,以方便将数据与软件隔离。这节课我们将以天勤tqsdk为例介绍如何将外部服务商的数据存入mysql最终为vnpy所用。
2023-04-20 10:00:17 1321 2
原创 【从零开始vnpy量化投资】六. 历史数据储存到mysql
在第一课的内容中,我们介绍了如何使用vnpy客户端通过米筐rqdata下载数据,但没有深入研究数据下载到了哪里,以及如何通过代码访问和使用数据。这节课我们将修改database的实现,使用独立安装的mysql来储存数据,用于回测与实盘。
2023-04-19 09:22:38 1155
原创 【从零开始vnpy量化投资】五. 日志输出
在大量使用编码方式访问vnpy之前,我们需要重新设计一下我们的日志系统。python默认使用print方法将信息打印到控制台,vnpy使用write_log方法将日志输出到客户端的对话框中。
2023-04-18 14:28:03 739
原创 【从零开始vnpy量化投资】四. 编写自己的第一个策略
这节课我们将尝试实现一些经典策略,同时学习如何对策略进行优化,如添加止损和辅助过滤信号。
2023-04-13 14:47:32 1777
原创 【从零开始vnpy量化投资】三. 手动安装vnpy环境
本章的主要内容是使用conda创建独立的python运行环境,再将vnpy安装到conda的环境中,以便开发时访问和编辑源码以及为后续部署到其他操作系统做准备。
2023-04-10 13:56:03 3412 2
原创 【从零开始vnpy量化投资】二. CTA策略模板与运行机制
本篇主要目标为理解vnpy的组件构成和cta策略模板的运行机制,便于在编写策略时能够避免因理解偏差造成的交易异常。
2023-04-07 23:14:38 2668 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人