2 Star 3 Fork 10

vn.py官方 / vnpy_webtrader

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

VeighNa框架的Web服务模块

说明

针对B-S架构需求设计的Web服务应用模块,实现了提供主动函数调用(REST)和被动数据推送(Websocket)的Web服务器。

目前仅提供了基础的交易和管理接口,用户根据自己的需求扩展支持其他VeighNa应用模块的Web接口(如CTA策略自动交易等)。

安装

安装环境推荐基于3.0.0版本以上的【VeighNa Studio】。

直接使用pip命令:

pip install vnpy_webtrader

或者下载源代码后,解压后在cmd中运行:

pip install .

架构

  • 基于Fastapi-Restful实现的主动函数调用功能,数据流程:

    1. 用户点击浏览器中的某个按钮,发起Restful功能调用;
    2. Web服务器收到Restful请求,将其转化为RPC功能调用发送给交易服务器;
    3. 交易服务器收到RPC请求,执行具体的功能逻辑,并返回结果;
    4. Web服务器返回Restful请求的结果给浏览器。
  • 基于Fastapi-Websocket实现的被动数据推送功能,数据流程:

    1. 交易服务器的事件引擎转发某个事件推送,并推送给RPC客户端(Web服务器);
    2. Web服务器收到事件推送后,将其转化为json格式,并通过Websocket发出;
    3. 浏览器通过Websocket收到推送的数据,并渲染在Web前端界面上。
  • 将程序分为两个进程的主要原因包括:

    1. 交易服务器中的策略运行和数据计算的运算压力较大,需要保证尽可能保证低延时效率;
    2. Web服务器需要面对互联网访问,将交易相关的逻辑剥离能更好保证安全性。
MIT License Copyright (c) 2015-present, Xiaoyou Chen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

vn.py框架的Web端管理服务器 展开 收起
Python 等 3 种语言
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Python
1
https://gitee.com/vnpy/vnpy_webtrader.git
git@gitee.com:vnpy/vnpy_webtrader.git
vnpy
vnpy_webtrader
vnpy_webtrader
main

搜索帮助