vn.py快速入门6 - 开发第一个量化策略

我想请讲解下,vn.py快速入门6 - 开发第一个量化策略
最新回答
我咋那么萌捏

2024-09-13 17:30:08

欢迎来到vn.py社区的快速入门教程系列的第6篇,我们将开始实践编程部分。假设你对Python有一定基础,如果没有,推荐《笨方法学Python3》作为入门书籍。在此教程中,我们将使用Visual Studio Code (VS Code),一个由微软开发的开源编程编辑器,配合其丰富的插件,成为我们的编程工具。

首先,下载并安装VS Code,点击官网链接,安装完成后,找到左侧导航栏底部的Python插件并安装。虽然我们推荐VS Code,但PyCharm、WingIDE、Vim或Visual Studio等其他IDE也适用,遇到问题时,可以切换回VS Code,因为教程中的所有操作都是通用的。

接下来,理解用户目录的概念,通常位于C:\Users\你的用户名,这是vn Trader默认的运行时目录。vn Trader会在该目录下创建.vntrader文件夹存放配置和临时文件。同时,CTA策略会在strategies文件夹中寻找用户自定义策略,Windows用户需在C:\Users\你的用户名\strategies创建这个文件夹。

在strategies文件夹下创建名为demo_strategy.py的策略文件,然后用VS Code打开。策略类开发从定义CtaTemplate基类开始,它是所有CTA策略的基础,提供事件处理和操作函数的框架。

策略类中,需要定义参数和变量,参数是策略逻辑中的固定数值,变量则用于存储策略执行过程中的中间状态。定义完成后,需添加到对应的参数和变量列表中,以便策略引擎管理。

在vn.py中,交易逻辑由事件驱动,比如K线推送。对于双均线策略的DemoStrategy,我们只需在on_bar函数中处理K线数据,如使用ArrayManager计算均线指标并进行金叉或死叉判断。策略的执行涉及开仓、平仓操作,以适应双均线策略的交易逻辑。

实盘交易时,需要自己合成K线,vn.py的BarGenerator工具可以帮助完成这个任务。在策略的__init__函数中初始化BarGenerator,并提供on_bar回调。每当收到Tick更新,更新BarGenerator,BarGenerator会在K线走完时触发on_bar函数,执行交易逻辑。

以上就是vn.py快速入门的实践部分,如需了解更多内容,欢迎关注vn.py社区的微信公众号获取更多资讯。