# 简介

**Navi** 是一种用于编写技术分析指标和交易策略的脚本语言，兼容 Pine Script V6，通过 Longbridge 平台的 `longbridge` CLI 运行。

## 你可以构建什么

- **指标** — 在图表上绘制序列、形状、标签、线条和表格
- **策略** — 定义进出场规则，对历史数据进行回测
- **库** — 编写可复用的函数和类型，供其他脚本导入

## 语言设计

Navi 是静态类型的编译型语言。类型错误在脚本运行前就会被发现。编译器在生成字节码之前会执行多轮优化——常量折叠、死代码消除和代数简化，运行时只需处理已经优化过的指令序列。对于要求更高吞吐量的场景，可选的 JIT 编译器（基于 Cranelift）会在运行时将字节码编译为本机机器码。

Navi 采用**流式计算模型**：行情数据逐根 K 线流入，引擎对每根 K 线进行增量计算——从最早的历史 K 线到最新 K 线，并在实时行情到来时持续处理。同一份脚本在历史数据和实时数据上的行为完全一致，代码无需区分两种场景。所有行情数据——`close`、`open`、`high`、`low`、`volume`——都是 *series*（序列），自动维护完整的历史记录。通过 `close[1]` 访问上一根 K 线的值，或 `close[N]` 访问 N 根 K 线前的值。流式设计使内存占用保持在低水位，指标逻辑也得以保持简洁：只需编写当前 K 线的计算，历史管理由引擎自动完成。

## Pine Script 兼容性

Navi 完全兼容 Pine Script V6。你可以将现有的 Pine Script 文件直接在 Navi 中运行，无需任何修改——只需原样传入 `.pine` 文件即可。你也可以将其手工改写为 Navi 语法，这并不复杂。可阅读[语言基础](/zh-CN/guide/language-basics)和[示例](/zh-CN/guide/examples)了解当前支持的语法与常见脚本模式。

## 下一步

- [快速开始](/zh-CN/guide/quick-start) — 使用 CLI 编写并运行第一个指标
- [语言基础](/zh-CN/guide/language-basics) — 学习 Navi 语法
- [示例](/zh-CN/guide/examples) — 阅读完整指标和策略
