随笔分类 -  vnpy

重修vn.py笔记 之 十二:BarGenerator
摘要:源码注释: 1. 通过tick 生成1分钟bar 【显然,这在分钟级回测时用不到】 2. 将1分钟的bar转换成 N分钟的bar class BarGenerator: """ For: 1. generating 1 minute bar data from tick data 2. genera 阅读全文

posted @ 2026-01-08 21:57 金凯旋 阅读(5) 评论(0) 推荐(0)

重修vn.py笔记 之 十一:垃圾tick
摘要:ctp可能在非交易时间,推送一些垃圾tick,vnpy 使用 on_tick 函数会接收这些tick, 然后调用BarGenerate ,合成错误的Bar. 可以在这里增加时间检查,如果不是交易时间的数据,不去生成Bar就好。 阅读全文

posted @ 2026-01-07 20:34 金凯旋 阅读(8) 评论(0) 推荐(0)

重修vn.py笔记 之 十: 默认参数
摘要:vnpy 系统为了方便,使用了大量的默认参数,这些参数方便了简单策略的编写,但如果没有注意,很可能形成一些莫名其妙的错误,而在交易时,需要对系统的每个环节都完全掌控。 整个框架,几乎都默认使用1分钟线,如果策略不是使用1分钟线,就要小心了。在编写策略,尤其是优化时,使用分钟线会大大影响策略运行速度, 阅读全文

posted @ 2026-01-07 20:27 金凯旋 阅读(7) 评论(0) 推荐(0)

重修vn.py笔记 之 九: 调试之日志
摘要:调试策略。 在vnpy 默认环境下调试策略,很不灵活,自己搞一个简单的测试环境,可以随心所欲地调式。 调试时,调试过程需要写入到日志里。 下面演示这个过程: from datetime import datetime from vnpy_ctastrategy.backtesting import 阅读全文

posted @ 2026-01-05 14:41 金凯旋 阅读(9) 评论(0) 推荐(0)

重修vn.py笔记 之 八 : 运行策略
摘要:通过上面的准备,运行一个策略,显示交易信号。 from vnpy_ctabacktester import CtaBacktesterApp from vnpy_ctabacktester.ui.widget import CandleChartDialog from vnpy_ctastrateg 阅读全文

posted @ 2025-12-26 17:21 金凯旋 阅读(8) 评论(0) 推荐(0)

重修vn.py笔记 之 七 : CTA策略要素
摘要:vnpy 里的cta策略,需要继承模板策略, 必须含有几个要素:(以 AtrRsiStrategy为例) 继承自 (CtaTemplate) 重要的元素: parameters = [... ] variables = [... ] 其中, 1 实盘策略启动时,需要的变量。 他会保存在本地策略配置文 阅读全文

posted @ 2025-12-25 17:57 金凯旋 阅读(14) 评论(0) 推荐(0)

重修vn.py笔记 之 六 : CTP
摘要:我们重点研究的是Ctp, 那么,把ctp单独拿出来,跑一次。 主体框架有参数管理、图形处理等大量繁杂的系统工作,这里没有用主体框架,需要预先设置参数。 import multiprocessing import sys from time import sleep from datetime imp 阅读全文

posted @ 2025-12-25 17:36 金凯旋 阅读(4) 评论(0) 推荐(0)

重修vn.py笔记 之 五 : 框架
摘要:现在,运行一个完整的vnpy 框架,从应用,到窗体以及各个app, 我们尝试连接 ctp 运行环境,在simnow上注册有用户,服务信息里可以查到连接信息。 启动下面文件后,在.vntrader 目录下, 会生成一个connect_ctp.json, 保存已经设置的连接信息。 from vnpy.e 阅读全文

posted @ 2025-12-25 17:23 金凯旋 阅读(6) 评论(0) 推荐(0)

重修vn.py笔记 之 四 : 绘图
摘要:vnpy 提供了一个比较实用的绘图,可以动态绘制出K线图。 根据这个工具,可以将策略的信号以及指标绘制出来。 from datetime import datetime from vnpy.trader.ui import create_qapp, QtCore from vnpy.trader.c 阅读全文

posted @ 2025-12-25 17:06 金凯旋 阅读(6) 评论(0) 推荐(0)

重修vn.py笔记 之 二 : 数据
摘要:做数据分析,首先是要有数据,这里是用tqsdk的数据。 代码用源码里的范例,修改了数据源。 # 忽略各模块的警告信息 import warnings warnings.filterwarnings("ignore") from datetime import datetime from vnpy.t 阅读全文

posted @ 2025-12-25 14:38 金凯旋 阅读(19) 评论(0) 推荐(0)

重修vn.py笔记 之 三 : 回测
摘要:from datetime import datetime from vnpy_ctastrategy.backtesting import BacktestingEngine from vnpy_ctastrategy.strategies.atr_rsi_strategy import AtrR 阅读全文

posted @ 2025-12-24 17:21 金凯旋 阅读(9) 评论(0) 推荐(0)

**kwargs用法举例
摘要:def test_kwarges(out : bool = False, **kwargs): a = kwargs.get("a", "test-a") x = kwargs.get("x", "test-x") print(a, x) print(out) kwargs = {"a":1, "b 阅读全文

posted @ 2023-12-08 16:48 金凯旋 阅读(55) 评论(0) 推荐(0)

多python 目录注意要点
摘要:python 是根据path路径优先级找执行文件的。 pip 是在scripts 下的, 设置 path 优先级时,两个路径最好一起设置 VScode 的prompt 下执行的python 和编辑环境有可能不一致。 执行: python -m pip install xxx 能保证pip 安装的内容 阅读全文

posted @ 2023-11-30 09:11 金凯旋 阅读(21) 评论(0) 推荐(0)

vnpy 平台普通的发单逻辑规则
摘要:前一根k线出信号( send_order) ,后一根K线开始前计算是否能成交。 用当根K线的开盘价计算,并期望发单会造成实盘与回测不符的现象。 今天对比交易信号时,才发现这个规则,记录一下。 阅读全文

posted @ 2023-06-30 16:51 金凯旋 阅读(41) 评论(0) 推荐(0)

为 vnpy 回测增加指标显示
摘要:添加一个指标类: from vnpy.trader.ui import QtCore, QtGui from vnpy.trader.object import BarData from vnpy.chart.base import BLACK_COLOR, UP_COLOR, DOWN_COLOR 阅读全文

posted @ 2023-04-26 13:32 金凯旋 阅读(240) 评论(0) 推荐(0)

VNPY的BacktesterEngine 和 BacktestingEngine
摘要:这两个代码很容易搞混: BacktestingEngine 在 vnpy_ctastrategy.backtesting, 没有继承 负责: 运行策略 调用Bar,Tick 处理交易(包括停止单) 显示表格 BacktesterEngine 在 vnpy_ctabacktester.engine里, 阅读全文

posted @ 2023-03-22 11:05 金凯旋 阅读(171) 评论(0) 推荐(0)

ctp认证权限
摘要:现象: /sys/firmware/dmi/tables/smbios_entry_point: Permission denied/dev/mem: Permission denied/sys/firmware/dmi/tables/smbios_entry_point: Permission d 阅读全文

posted @ 2023-02-20 11:17 金凯旋 阅读(271) 评论(0) 推荐(0)

导航