-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request vnpy#44 from vnpy/dev
Dev
- Loading branch information
Showing
234 changed files
with
83,773 additions
and
3,977 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,18 +1,98 @@ | ||
# 2.2.1版本 | ||
|
||
## 修复 | ||
1. 修复IbGateway断线重连后,没有自动订阅之前已订阅的合约行情问题 | ||
2. 修复CTA模块的净仓交易模式中,部分平仓部分开仓时,开仓部分下单错误的问题 | ||
3. 修复OkexfGateway,某个合约全部平仓后,持仓数量不更新为0的问题 | ||
4. 修复HuobisGateway,当行情盘口不足5档时,TickData对象初始化出错的问题 | ||
5. 修复HuobifGateway,查询历史数据时由于请求超过1999个数据点导致的失败问题 | ||
6. 修复CtpGateway对于FAK和FOK委托指令的处理错误问题 | ||
7. 修复HuobiGateway的成交数量为浮点数时,浮点数精度导致上层应用仓位计算偏差问题 | ||
8. 修复BinancesGateway,U本位合约查询历史数据失败的问题 | ||
|
||
|
||
## 调整 | ||
1. 修改CTA模块的净仓交易模式,支持上期所和能交所的今昨仓拆分下单 | ||
2. 调整组合策略模块的回测引擎K线回放逻辑,当某个时间点K线数据缺失时,推送给策略的K线字典中不对其进行向前补齐 | ||
|
||
## 新增 | ||
1. 新增DataManager在导入CSV文件时,对于时间戳时区的选择功能 | ||
2. 新增CtaStrategy模块的策略移仓助手功能,实现一键式期货换月移仓支持 | ||
|
||
|
||
# 2.2.0版本 | ||
|
||
## 修复 | ||
1. 修复DataManager查询数据库中K线数据范围时,开始和结束日期相反的问题 | ||
2. 修复CoinbaseGateway的行情订单簿在更新时,已经撤单的档位不删除的问题 | ||
3. 修复BybitGateway对于USDT本位永续合约,浮点数委托量会被转换为0的问题 | ||
4. 修复BinanceGateway/BinancesGateway的ConnectionResetError问题,通过关闭HTTP连接的keep-alive功能实现 | ||
5. 修复HuobisGateway在USDT本位模式下时,浮点数合约乘数转换出错的问题 | ||
6. 修复PostgreSQL数据库对接层中,save_tick_data函数由于访问interval导致保存出错的问题 | ||
7. 修复DataRecorder模块中add_bar_recording下保存录制用合约配置错误的问题 | ||
8. 修复PostgreSQL数据库对接层中,由于事务执行失败导致的后续报错问题,创建数据库对象时设置自动回滚模式(autorollback=True) | ||
9. 修复DataManager自动更新数据时,查询数据范围由于调用老版本函数导致的错误 | ||
10. 修复RQData下载获取的历史数据浮点数精度问题 | ||
11. 修复BarGenerator在合成N小时K线时,收盘价、成交量、持仓量字段缺失的问题 | ||
12. 修复K线图表底层组件ChartWidget当绘制数据较少时,坐标轴时间点显示重复的问题 | ||
13. 修复SpreadTrading模块生成的价差盘口数据的时区信息缺失问题 | ||
14. 修复IbGateway的现货贵金属行情数据缺失最新价和时间戳的问题 | ||
15. 修复BarGenerator在合成小时级别K线时,成交量字段部分缺失的问题 | ||
16. 修复vnpy.rpc模块启用非对称加密后无法正常退出的问题 | ||
17. 修复BinancesGateway持仓更新时由于包含多条方向记录导致的持仓错误问题 | ||
|
||
## 调整 | ||
1. 修改vnpy.chart下ChartItem为按需绘制,大幅缩短图表第一次显示出来的耗时 | ||
2. 修改IbGateway的历史数据查询功能,包括所有可用时间(即欧美晚上的电子交易时段) | ||
3. 修改DataRecorder的数据入库为定时批量写入,提高录制大量合约数据时的写入性能 | ||
|
||
## 新增 | ||
1. 新增IbGateway连接断开后的自动重连功能(每10秒检查) | ||
2. 新增双边报价业务相关的底层数据结构和功能函数 | ||
3. 新增开平转换器OffsetConverter的净仓交易模式 | ||
4. 新增CtaStrategy模块策略模板的委托时的净仓交易可选参数 | ||
5. 新增CtaStrategy模块回测引擎中的全年交易日可选参数 | ||
6. 新增ChartWizard模块对于价差行情图表的显示支持 | ||
7. 新增MarketRadar模块的雷达信号条件提醒功能 | ||
|
||
# 2.1.9.1版本 | ||
|
||
## 修复 | ||
1. 修复RestClient中,因为pyopenssl.extract_from_urllib3引起的兼容性问题 | ||
|
||
## 调整 | ||
1. 调整OptionMaster模块中,期权链数据结构搜索平值行权价的算法,不再依赖标的物合约 | ||
|
||
## 新增 | ||
1. 新增OptionMaster模块使用合成期货作为定价标的合约的功能 | ||
|
||
|
||
# 2.1.9版本 | ||
|
||
## 修复 | ||
1. 修复BarGenerator的小时线合成时,出同一个小时的K线重复推送两次的问题 | ||
1. 修复BarGenerator的小时线合成时,出现同一个小时的K线重复推送两次的问题 | ||
2. 修复遗传算法优化时,因为lru_cache缓存导致的新一轮优化结果不变的问题 | ||
3. 修复RestClient发起请求时,由于requests库底层使用OpenSSL导致的WinError 10054 WSAECONNRESET的问题 | ||
4. 修复okexf、okexs、okexo三个接口收取TICK行情时,盘口数据解析错误的问题 | ||
5. 修复程序中频繁捕捉到异常时,异常捕捉对话框反复执行导致卡死的问题 | ||
6. 修复币安的现货和合约接口请求抛出SSLError异常时,未捕捉导致程序卡死的问题 | ||
7. 修复活动委托监控组件ActiveOrderMonitor,保存CSV时会将所有委托数据一起保存的问题 | ||
8. 修复XtpGateway重复发起登录操作时,出现的系统崩溃问题 | ||
9. 修复XtpGateway的股票市价委托类型映射错误问题 | ||
10. 修复DeribitGateway中对于Stop Market类型委托的支持问题,同时过滤掉Stop Limit类型委托 | ||
11. 修复BinancesGateway中,由于成交数量浮点数精度问题导致的上层应用模块(CtaStrategy)数据计算错误 | ||
12. 修复BinancesGateway中,由于合约持仓类型(应该是净仓,而非多空仓)错误,导致的上层应用模块(SpreadTrading)数据计算错误 | ||
13. 修复HuobisGateway中,初始化查询活动委托时,由于请求过快导致的限流错误 | ||
|
||
## 调整 | ||
1. 对XTP接口的行情价格数据基于合约最小价格跳动进行取整,资金保留2位小数 | ||
2. BaseMonitor保存CSV文件时,表头改为图形界面显示的中文(之前是数据的字段名英文) | ||
3. 增加华鑫奇点接口对于FENS服务器连接和资金账户登录的支持,之前只支持前置机连接和用户代码登录 | ||
3. 初始化TWAP算法时,对每轮委托数量取整到合约最小交易数量 | ||
4. 将原vnpy.trader.database中的数据库客户端拆分到独立的vnpy.database模块下 | ||
5. 对SQLite/MySQL/PostgreSQL/MongoDB/InfluxDB客户端进行代码重构优化,增加K线数据整体情况BarOverview查询功能 | ||
|
||
## 新增 | ||
1. 新增BaseMonitor数据监控UI组件(以及其子类),自动保存列宽的功能 | ||
1. 新增BaseMonitor数据监控UI组件(以及其子类),自动保存列宽的功能 | ||
2. 增加华鑫奇点ToraGateway对于FENS服务器连接和资金账户登录的支持,之前只支持前置机连接和用户代码登录 | ||
3. 增加火币永续合约HuobisGateway对于USDT本位合约的支持 | ||
4. 增加InfluxDB数据库客户端vnpy.database.influx对于Tick数据储存和加载的支持 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,73 @@ | ||
# K线图表模块 | ||
# ChartWizard - 实时K线图表模块 | ||
|
||
|
||
## 功能简介 | ||
|
||
ChartWizard是用于**实时K线图表展示**的功能模块,用户可以通过其UI界面查看实时和历史K线行情,目前只支持显示1分钟级别的K线数据,实时K线(最新的一根K线)为Tick级刷新。 | ||
|
||
|
||
## 加载启动 | ||
|
||
### VN Station加载 | ||
|
||
启动登录VN Station后,点击【VN Trader Pro】按钮,在配置对话框中的【上层应用】栏勾选【ChartWizard】。 | ||
|
||
### 脚本加载 | ||
|
||
在启动脚本中添加如下代码: | ||
|
||
``` | ||
# 写在顶部 | ||
from vnpy.app.chart_wizard import ChartWizardApp | ||
# 写在创建main_engine对象后 | ||
main_engine.add_app(ChartWizardApp) | ||
``` | ||
|
||
|
||
## 启动模块 | ||
|
||
在启动模块之前,请先连接交易接口(连接方法详见基本使用篇的连接接口部分)。看到VN Trader主界面【日志】栏输出“合约信息查询成功”之后再启动模块,如下图所示: | ||
|
||
![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/cta_strategy/1.png) | ||
|
||
请注意,IB接口因为登录时无法自动获取所有的合约信息,只有在用户手动订阅行情时才能获取。因此需要在主界面上先行手动订阅合约行情,再启动模块。 | ||
|
||
由于vn.py本身并不提供任何数据服务,对于K线图表绘制过程中用到的历史数据,国内期货历史数据由[RQData](https://www.ricequant.com/welcome/purchase?utm_source=vnpy)数据服务提供,用户需要准备和配置RQData账号(配置方法详见基本使用篇的全局配置部分)。数字货币历史数据则直接由交易所接口提供,用户无需进行额外配置。 | ||
|
||
成功连接交易接口后,在菜单栏中点击【功能】-> 【K线图表】,或者点击左侧按钮栏的图标: | ||
|
||
![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/chart_wizard/1.png) | ||
|
||
即可进入实时K线图表模块的UI界面,如下图所示: | ||
|
||
![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/chart_wizard/2.png) | ||
|
||
|
||
## 新建图表 | ||
|
||
打开图表窗口后,在【本地代码】编辑框中输入合约代码(注意本地代码由代码前缀和交易所后缀两部分组成,如rb2112.SHFE)。 | ||
|
||
点击【新建图表】的按钮,即可创建对应合约的K线图表,如下图所示: | ||
|
||
![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/chart_wizard/3.png) | ||
|
||
用户可以新建多个合约的K线图表,通过切换窗口来实现快速切换: | ||
|
||
![](https://vnpy-doc.oss-cn-shanghai.aliyuncs.com/chart_wizard/4.png) | ||
|
||
|
||
## 查看图表 | ||
|
||
每个合约的图表分为上下两块子图区域: | ||
|
||
- 上面的子图为行情K线; | ||
- 下面的子图为成交量数据。 | ||
|
||
图表上的十字光标可用于定位和显示特定时间点的具体数据,在X轴和Y轴上均会对应数据点的标签,同时在左上角也会显示此根K线的OHLCV等信息。 | ||
|
||
其他快捷操作: | ||
|
||
- 可以通过鼠标左键的拖拽,左右平移K线图显示的时间范围; | ||
- 可以通过鼠标滚轮的滚动,放大和缩小K线图显示的时间范围。 | ||
|
Oops, something went wrong.