win环境使用pixi,安装vnpy(python3.13.5)

简介

vnpy

vnpyVeighNa的开源项目。也是国内常用的量化交易工具。

非专业编程开发者,可以直接安装VeighNa

VeighNa 官方下载地址:www.vnpy.com/

VeighNa 的弊端:会在电脑全局安装一个专门服务VeighNa的python环境。这对于专业编程开发者,不友好。

vnpy 的github项目地址:github.com/vnpy/vnpy

不要着急下载github项目,请看下文进行安装。

pixi

github项目地址:github.com/prefix-dev/...

pixi是新一代的python包管理工具,融合了conda和uv的优点。

以前我很喜欢用anaconda来建立python环境,但是管理多个环境比较麻烦;conda安装依赖项(第三方库)速度也让人头疼。

然而pixi和npm更相似,一个文件夹就可以是一个python环境;安装依赖项的速度更是快的惊人。

一、安装pixi

pixi官方下载地址:pixi.sh/dev/install...

👆同样也是技术文档

二、使用终端命令进行安装vnpy

1. 进行环境初始化

创建环境文件夹,例vn-py

vn-py的文件夹内,打开终端,输入命令:

shell 复制代码
pixi init -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

👆该命令为初始化命令,并将conda-forge依赖项的下载镜像 指向清华源 。也可以只使用pixi init命令,会默认使用anconda的下载路径。

2. 安装python解释器
shell 复制代码
pixi add python=3.13

注意:不要使用pixi add python==3.13命令,因为双等于号会安装python3.13.0版本,该版本无法正常使用。

3. 安装conda-forge依赖项
shell 复制代码
pixi add pyqtgraph>=0.13.7 qdarkstyle>=3.2.3 pandas>=2.2.3 numpy>=2.2.3 deap>=1.4.2 pyzmq==27.0.1 plotly>=6.0.0 tqdm>=4.67.1 loguru>=0.7.3 nbformat>=5.10.4 wheel

pixi add pixi-pycharm jupyterlab notebook

第1行命令,为vnpy所需的依赖项。

第2行命令,为IDE的依赖项,可以选择性安装。

pixi-pycharm对应pycharm

jupyterlab对应jupyter lab

notebook对应jupyter notebook

4. 安装pypi依赖项
shell 复制代码
pixi add --pypi pyside6==6.8.2.1 tzlocal>=5.3.1

清华源的pypi镜像源,没有这些依赖项,建议使用默认pypi路径。下载比较慢,建议开启加速器或vpn。

5. 安装ta-lib依赖项
shell 复制代码
pixi add --pypi "ta-lib @ https://pypi.vnpy.com/packages/ta_lib-0.6.4-cp313-cp313-win_amd64.whl"

安装ta-lib包需要从vnpy提供的网址进行下载。

【可选】也可以找到对应的.whl包文件,单独下载下来,进行本地安装。

本地安装依赖项命令:

shell 复制代码
pixi add --pypi "ta_lib @ file://C:\Users\admin\Downloads\ta_lib-0.6.4-cp313-cp313-win_amd64.whl"
6. 安装vnpy依赖项
shell 复制代码
pixi add --pypi vnpy-ctp vnpy-ctastrategy importlib-metadata vnpy-sqlite vnpy-ctabacktester
7. 运行run.py文件

vn-py文件夹下,创建一个run.py文件。

run.py代码内容:

python 复制代码
from vnpy.event import EventEngine
from vnpy.trader.engine import MainEngine
from vnpy.trader.ui import MainWindow, create_qapp

from vnpy_ctp import CtpGateway
from vnpy_ctastrategy import CtaStrategyApp
from vnpy_ctabacktester import CtaBacktesterApp


def main():
    """Start VeighNa Trader"""
    qapp = create_qapp()

    event_engine = EventEngine()
    main_engine = MainEngine(event_engine)
    
    main_engine.add_gateway(CtpGateway)
    main_engine.add_app(CtaStrategyApp)
    main_engine.add_app(CtaBacktesterApp)

    main_window = MainWindow(main_engine, event_engine)
    main_window.showMaximized()

    qapp.exec()


if __name__ == "__main__":
    main()

vn-py的文件夹内,打开终端,输入命令:

shell 复制代码
pixi run python run.py

出现界面,即完成:

终端报出没有配置要使用的数据服务,请修改全局配置中的datafeed相关内容,为正常现象。

相关推荐
好家伙VCC4 小时前
### WebRTC技术:实时通信的革新与实现####webRTC(Web Real-TimeComm
java·前端·python·webrtc
前端玖耀里5 小时前
如何使用python的boto库和SES发送电子邮件?
python
serve the people5 小时前
python环境搭建 (十二) pydantic和pydantic-settings类型验证与解析
java·网络·python
小天源5 小时前
Error 1053 Error 1067 服务“启动后立即停止” Java / Python 程序无法后台运行 windows nssm注册器下载与报错处理
开发语言·windows·python·nssm·error 1053·error 1067
喵手6 小时前
Python爬虫实战:HTTP缓存系统深度实战 — ETag、Last-Modified与requests-cache完全指南(附SQLite持久化存储)!
爬虫·python·爬虫实战·http缓存·etag·零基础python爬虫教学·requests-cache
喵手6 小时前
Python爬虫实战:容器化与定时调度实战 - Docker + Cron + 日志轮转 + 失败重试完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·容器化·零基础python爬虫教学·csv导出·定时调度
2601_949146536 小时前
Python语音通知接口接入教程:开发者快速集成AI语音API的脚本实现
人工智能·python·语音识别
寻梦csdn7 小时前
pycharm+miniconda兼容问题
ide·python·pycharm·conda
Java面试题总结8 小时前
基于 Java 的 PDF 文本水印实现方案(iText7 示例)
java·python·pdf
不懒不懒8 小时前
【决策树算法实战指南:从原理到Python实现】
python·决策树·id3·c4.5·catr