大家在用量化软件的时候,估计都遇到过各种各样的问题,要么函数调不通,要么回测出 bug
这段时间我攒了不少在用 PTrade 时踩过的坑,小到参数配置的小细节,大到策略跑不起来的大问题,全都记下来了。今天就干脆整理一篇 “避坑指南”,用大白话跟大家聊聊这些问题怎么回事、后来我是怎么解决的,希望能帮到刚接触 PTrade,或者也在被类似问题卡壳的朋友~
关于ptrade量化平台部署
1、ptrade策略在本地 or 云端运行?
PTrade客户端为本地运行,但量化模块为云端部署方式,客户端通过http或https方式链接云服务器。
2、ptrade策略是否安全?
用户的策略都部署在券商的服务器上,策略文件是加密存的,别人拿不到。然后用 Docker 这个技术弄了隔离,每个用户的账号都在自己的小空间里运行。这样一来,每个账号的运行环境能分清楚,用的资源也不冲突,各自跑各自的,互相不影响。
3、ptrade支持哪些程序语言?
PTrade量化软件目前仅支持Python语言编程。
关于ptrade数据详情
1、ptrade支持的数据有哪些?
在研究、回测、交易模块都可以调用2005年以来的历史财务数据以及历史行情数据,包含分钟、日线、周线不同周期数据。交易场景还支持tick级别行情快照数据。数据支持股票、可转债、指数等多品种。
2、ptrade如何进行数据读写?
研究环境可以存放文件,根目录路径为'/home/fly/notebook/',可通过get_research_path接口获取。回测和交易中都可以通过这个路径进行策略中的读写等操作,从而实现数据的保存和读取。

3、ptrade可以读取本地数据吗?
PTrade 是云端部署的,这就导致策略在运行时,无法直接读取你本地电脑里存储的数据文件(比如你存在自己电脑上的股票历史数据、自定义指标数据等本地数据),也不能直接将策略生成的数据写入到你本地的路径中。
4、ptrade支持level2数据吗?
部分券商免费自带了level2数据。
5、财务数据为什么会获取失败?
财务数据接口是在线向数据源调用的接口,瞬时调用量过大或者其他导致网络堵塞的原因都有可能使得获取失败,因此建议加入重连机制做保护。
关于ptrade策略研究功能
1、ptrade研究环境资源有限制吗?
目前单个的用户研究环境资源没有上限。
2、ptrade文件传输有什么限制吗?
单个文件手动上传下载目前限制单个文件数据大小不超过50M。

关于ptrade回测功能
1、ptrade回测与研究有什么区别
研究环境更侧重于数据的清洗、处理、建模、画图、debug 调试等,类似于本地的Python 编程,无法调用诸如order下单,账户资产等等与交易相关的函数。

回测环境则更适用于完成完整的交易策略搭建、参数调优、历史收益回测等,更贴近交易。通常情况下,研究环境适用于对程序有调试需求,需要知道每一步程序执行的结果的用户,而回测则更适用于想知道策略在历史时间段内的收益如何,以便对策略参数甚至是构建思想进行调优的用户。

2、ptrade目前支持同时回测几个策略?
目前支持同时进行5个回测。
3、ptrade如何提升回测速度?
PTrade量化中部分接口为在线调用接口,调用速度会受瞬时网络情况影响,比如get_fundamentals、get_Ashares,回测中按实际需求尽量少频次地调用这类在线调用接口。
另外分钟级别策略中如果用到日频的历史数据,在before_trading_start模块处理一次就可以,这样可以提升回测的速度。
4、ptrade支持哪些回测周期?
ptrade目前回测只支持分钟和日线周期的回测。
5、PTrade回测时,性能分析功能有什么作用?
性能分析功能会对运行结果做分析,包括语句的触发次数和耗时情况,能够帮助用户快速地进行策略优化。


6、PTrade支持离线回测吗?
PTrade量化平台目前不支持离线回测,回测期间必须保障客户端打开。
7、如何在ptrade上面进行策略上传和下载?
PTrade量化平台所创建的策略是可以加密下载和上传的,我们利用AES/DES加密技术对文件流进行加密处理,随机生成盐值进行干扰混淆,保障上传与下载安全私密性。该功能的用途在于支持同一策略在不同账户上实现隐藏代码地进行模拟交易。
操作方法:
1、选定策略,点鼠标右键,选择下载,然后将策略保存到指定路径,下载的文件为zip格式,下载后不要做解压。 可以对这个zip文件做重命名也可以不做处理,对于上传没有影响。
2、点击交易中的上传策略。 上传的策略我们可以在回测的策略列表中查询到,策略名称跟下载时候的策略名称保持一致,假如与原策略列表中出现重名,也不会报错。上传策略不允许修改策略名称,且不允许修改策略代码。上传的策略不可以做回测,仅能用来开启交易。

关于ptrade模拟交易
1、ptrade支持几个模拟交易?
目前默认允许同时运行5个交易。
2、交易过程中,客户端可以离线吗?
交易在服务器上运行,因此客户端关闭或掉线不影响策略运行。
3、ptrade同时运行多个策略会互相干扰吗?
所有运行的模拟交易或实盘交易都共享一个账户(资金、持仓无法隔离),暂不支持子账户交易系统。
4、模拟交易的账户数据更新频率是多长?
模拟交易和实盘交易的账户数据同步理论上是6秒一次,包括资金、持仓、订单状态、撤单状态等。因此用户需要自建一定的中间变量做过度,防止重复交易或者重复判断。
关于ptrade实盘交易
1、模拟交易和实盘交易的区别?
模拟交易和实盘交易在数据获取的机制上是一致的,只是成交撮合机制不同。
2、ptrade实盘委托接口对委托数量有什么要求?
委托接口对委托数量有校验,如果数量不是整数,会下单失败返回None。
如何开通量化软件ptrade / QMT?
““ 券商版ptrade权限开通:策略直接在券商云端运行,用户无需配置环境;运行过程高速且稳定,免费提供level2数据。该版本支持 Python 语言,可实现极速交易与实盘操作,还配备专用测试环境账号用于策略回测。
““ 券商版QMT权限开通:本地运行,支持虚拟机,可放到云服务器上运行,集行情展示、策略编写、策略回测、策略实盘于一体。支持Python语言,VBA语言,本地运行、高性能、高扩展、高策略保密性。支持xtquant 、外部数据(tushar等),适合量化进阶,复杂策略代码。
1、QMT开通流程
(1)开户成功后入金10万以上,第二天提交QMT申请流程
(2)申请过程全程线上,预计2个工作日申请完成。
(3)等待开通过程中,可以提供测试账号、安装配置流程、量化会员资料。
(4)开通成功后,会通过邮件发送你软件下载地址,登录账号后就可以使用。
2、VIP服务