量化交易入门之vnpy简单策略编写

本篇博客将介绍量化交易框架vnpy的简单策略编写。在阅读本博客前的环境准备请看我的上一篇博客。传送门如下:

零基础搭建量化交易框架

一、开发环境

因为python版本兼容有点差,且源码功能都有所变化,所以没有环境信息的教程就是刷流氓。

windows10

python3.7

Miniconda3-py37_4.12.0-Windows-x86_64

vnpy源码2.7.0

本文的教程适用vnpy2.7.0 -3.3.0版本

二、vnpy策略编写

首先,要编写策略,在vnpy框架中只需继承CtaTemplate这个类,并重写其中的方法即可。

下面介绍下CtaTemplate重要的一些函数及参数

class CtaTemplate(ABC):

    def on_init(self):
        #策略初始化函数,用作参数的初始化,如加载bar数据

    def on_start(self):
        #策略启动
        

    def on_tick(self, tick: TickData):
        #接收tick数据
        

    def on_stop(self):
        #策略停止,销毁进程或数据
        

    def on_bar(self, bar: BarData):
        #将tick数据按周期(1分钟、5分钟等……周期)合成一个柱图数
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python量化交易入门可以从以下几个方面着手: 1. 学习Python基础知识:包括变量、数据类型、运算符、条件语句、循环语句等。这些是编写量化交易程序的基础。 2. 学习量化交易基础知识:了解量化交易的基本概念、常用的量化交易策略和指标等。可以通过阅读相关书籍或在线教程来学习。 3. 学习数据处理库:Python中有很多用于数据处理的库,如NumPy、Pandas等。这些库可以帮助你处理和分析金融数据。 4. 学习可视化库:Python中有很多用于数据可视化的库,如Matplotlib、Seaborn等。这些库可以帮助你将分析结果以图表的形式展示出来。 5. 学习量化交易库:Python中有一些专门用于量化交易的库,如PyAlgoTrade、Zipline等。这些库提供了一些常用的量化交易功能,如回测、交易执行等。 6. 实践项目:通过实践项目来巩固所学知识。可以选择一些简单量化交易策略进行回测和优化,或者使用爬虫库获取金融数据进行分析。 以下是一个简单的示例,演示如何使用Python进行简单量化交易回测: ```python import pandas as pd import numpy as np # 读取股票数据 data = pd.read_csv('stock_data.csv') # 计算收益率 data['returns'] = np.log(data['close'] / data['close'].shift(1)) # 计算移动平均线 data['ma'] = data['close'].rolling(window=10).mean() # 生成交易信号 data['signal'] = np.where(data['close'] > data['ma'], 1, -1) # 计算持仓 data['position'] = data['signal'].shift() # 计算策略收益率 data['strategy_returns'] = data['position'] * data['returns'] # 计算累计收益率 data['cumulative_returns'] = (1 + data['strategy_returns']).cumprod() # 绘制累计收益曲线 data['cumulative_returns'].plot() ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值