【免费下载链接】VelaFast, extensible financial charts for the web. The open-source core of Vela by LuxAlgo.项目地址https://gitcode.com/gh_mirrors/vela5/Vela点击查看免费下载Vela 是 LuxAlgo 的开源核心、一款快速可扩展的 Web 金融图表库内置 70 原生技术指标但不内置任何脚本引擎——想在 Vela 中运行 Pine Script®需要额外安装luxalgo/vela-pinets插件。本文带你 3 步跑通 Pine Script 指标安装插件、注册引擎、写出第一个指标并重点讲清 AGPL-3.0 许可注意事项。先搞懂Vela 为什么不带 Pine 脚本引擎Vela 采用小核心 可插拔层的架构数据源、脚本引擎、渲染器各走一个独立的port端口接口随用随插。其中脚本引擎是显式选配的内置的 70 指标均线、RSI、SuperTrend、VWAP 等由核心直接计算不需要任何引擎自定义脚本必须通过引擎执行。裸调addIndicator()而没有注册对应引擎时Vela 会抛出一个可操作的错误提示而不是静默失败这种设计让 Vela 核心保持干净的 Apache-2.0 许可不与任何脚本运行时的许可条款纠缠。引擎接口的完整定义见 src/core/ports/ScriptingEngine.ts概念说明见 docs/user/scripting-engines.md。第 1 步安装 luxalgo/vela-pinets 插件一条命令装好两个包。注意pinets是对等依赖peer dependency——它就是插件实际执行 Pine Script 的运行时必须一起安装npm install luxalgo/vela-pinets pinets当然前提是核心库已装好npm install luxalgo/vela 官方推荐首次运行用离线数据通过data选项传入 K 线数组无需网络、无需 API Key可完全复现。详见 docs/user/quickstart.md 与 docs/user/installation.md。第 2 步注册 Pine 引擎两种引擎怎么选插件导出两个引擎Pine 语义完全相同区别只在脚本跑在哪里导出运行位置适用场景PineEngine主线程配置最简单、脚本轻量时首选PineWorkerEngineWeb Worker重脚本绝不能阻塞图表交互注册只需一行registerEngine返回 chart 本身可以链式调用import { Vela } from luxalgo/vela; import { PineEngine } from luxalgo/vela-pinets; const chart new Vela(#chart, { data: myBars, timeframe: 1h }) .registerEngine(pine, new PineEngine());两个引擎都报告{ streaming: true, visibleRange: true, inputs: true }即支持实时增量执行、视口相关脚本以及由input.*声明驱动的设置弹窗request.security高/低周期、跨品种走的是 Vela 自己的缓存数据通道——引擎从不自己抓取行情。第 3 步addIndicator 跑第一个 Pine Script 指标把脚本源码直接传进去即可。addIndicator同步返回一个 handle但绘制值异步填充建议监听ready/error事件const ema chart.addIndicator(//version5 indicator(EMA 20, overlaytrue) plot(ta.ema(close, 20), colorcolor.orange, linewidth2)); ema.on(ready, () console.log(EMA 已渲染)); ema.on(error, ({ error }) console.error(error));此时图上就出现了一条可交互的 EMA 曲线有图例行、可设置参数、可隐藏/删除刷新后状态可持久化。完整示例见 docs/user/quickstart.md。进阶让整站一次注册 Pine 引擎如果是完整的图表应用workspace有三种更省事的方式workspace 传工厂engines: { pine: () new PineWorkerEngine() }每个图表格子独立实例化Worker 引擎各占一个线程、随图表销毁indicators选项支持内联 JSON、URL 或异步加载函数三种清单格式。全局一次注册用registerDefaultEngine(pine, ...)来自luxalgo/vela/plugin为之后创建的所有图表安装 pine 语言避免在每处调用点传engines选项显式传入的engines条目仍优先。script 标签 / CDN加载顺序即契约——先vela.global.js再vela-pinets.global.js插件会复用页面上的window.Vela不会重复加载库。⚠️ 若站点 CSP 禁止blob:请自行托管 worker 文件并传new PineWorkerEngine({ workerUrl: /vela-pine-worker.js })。AGPL 许可注意事项商用前必读这是本文的重头戏安装前请务必看清楚组件许可说明luxalgo/vela核心Apache-2.0不含任何 Pine 代码见 LICENSEluxalgo/vela-pinets插件AGPL-3.0因为其中执行的pinets运行时是 AGPL-3.0要点拆解为什么拆成独立包正因为pinets是 AGPL-3.0插件必须单独发布。Vela 核心因此保持 Apache-2.0、不带 Pine 代码。AGPL 义务跟着你的部署走安装插件后AGPL 的义务就进入了你的部署。如果是对外提供网络服务的产品AGPL 通常要求向用户提供相应源码——请务必在正式采用前做 deliberate 的法律评估官方原话decide that deliberately。接受不了 AGPL 的替代方案对着公开的ScriptingEngine端口为自己需要的语言写一个引擎完全绕开 AGPL。本仓库的 playground/demo-engine.ts 是一个约 300 行、可完整工作的参考引擎Vela 官方 playground 就跑在它上面契约全文见 docs/contributing/adding-an-engine.md。别忘了 Vela 自身的署名条款NOTICE 要求任何展示 Vela 图表的产品都保持可见署名——图表默认自带 Vela™ 水印标记可以改样式、挪位置只有在页面其他位置展示了等效署名Vela 名称 项目页链接时才允许关闭水印。常见问题速答Q调了addIndicator报错说找不到语言引擎A先chart.registerEngine(pine, new PineEngine())语言 id 必须与脚本语言匹配重新注册会替换旧引擎。Q重脚本把图表卡住了怎么办A把PineEngine换成PineWorkerEngine脚本移入 Web Worker无需额外配置。QVela 自带指标够用还需要 Pine 吗A核心内置 70 原生指标计算、图例、设置弹窗、持久化一应俱全只有要跑自定义脚本或移植 TradingView 指标时才需要装插件。Q能不改许可、又要 Pine 吗A可以基于端口写自有引擎或只用 Vela 原生指标。官方许可讨论见 README.md 的 Indicators 一节。小结3 步跑通npm install luxalgo/vela-pinets pinets→registerEngine(pine, ...)→addIndicator(源码)轻脚本用PineEngine重脚本用PineWorkerEngine整站应用推荐registerDefaultEngine一次注册luxalgo/vela-pinets是AGPL-3.0Vela 核心是Apache-2.0商用部署前请认真评估 AGPL 义务并保留 Vela 署名。赞分享【免费下载链接】VelaFast, extensible financial charts for the web. The open-source core of Vela by LuxAlgo.项目地址https://gitcode.com/gh_mirrors/vela5/Vela点击查看免费下载相关推荐background-removal-js AGPL许可证终极指南商业使用的7个关键注意事项background removal js AGPL许可证终极指南商业使用的7个关键注意事项 background removal js 是一个强大的 npm计算机视觉图像处理AI 应用semantic-router RAG 插件深度指南路由级检索注入与 Vela 神经重排实战semantic router RAG 插件深度指南路由级检索注入与 Vela 神经重排实战 导读 本指南以 semantic router 开源仓库中的 R后端API网关模型推理服务AI Agent还在为Windows USB设备驱动烦恼这个工具让你一键搞定所有兼容性问题还在为Windows USB设备驱动烦恼这个工具让你一键搞定所有兼容性问题 你是否曾经遇到过这样的场景买了一个新的USB设备插上电脑后Windows却提示驱动开发后端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考