【从零开始vnpy量化投资】九. 资金动态计算

本文介绍了在vnpy量化投资中,如何实现根据资金动态计算下单手数。通过扩展交易记录功能,计算每手收益,并根据资金量动态调整开仓手数,以实现更有效的风险管理。文章详细阐述了实现方法,包括资金管理、回测验证和结果对比。

【从零开始vnpy量化投资】九. 资金动态计算

概述

在之前的策略中,无论是vnpy内置策略还是我们自己编写的策略,单次交易的手数都是固定的。这种情况既不符合风险管理的要求,也无法充分利用盈利后的资金达到复利增长的目的。所以我们需要为策略添加盈亏计算,使策略内部可以获得实时准确的资金情况,从而根据当前资金量计算合适的仓位。

为何我们无法从vnpy直接获取资金

vnpy的回测结果中包含了完整的资金曲线,为何它能计算出曲线,而我们在策略运行时无法通过api获得实时资金?
从vnpy的backtesting文件源码中,我们可以看到回测的机制为记录了所有的成交记录。并通过k线和交易数据的回放在回测结束后通过每日持仓量和收盘价再计算每日的结束资金。
在这里插入图片描述

除去上述机制,vnpy在实盘运行时并未提供任何与资金相关的配置。故每个策略的资金管理需要我们自己处理。

实现方法

我们可以使用cta策略模板添加通用的资金管理。为策略添加变量capital,并使vnpy的parameters和variables都包含这个变量。这样在策略初始化时,我们就可以通过配置文件设置初始资金。并在策略运行后将实时资金存入到数据文件,确保资金数据前后连贯。
同时,我们在on_trade方法中添加盈亏的计算,并将结果实时更新到策略中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魔落凡尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值