脚本页面概览
脚本页面是你编写自己的指标和全自动策略的地方。它把脚本列表、身份信息条、代码编辑器、运行条、输出控制台和参考栏集中在同一个界面上,一切都在本机沙箱中运行。
Senzoukria · 文档 · 更新于 2026 年 9 月
位置
- 位置
- 主菜单 → 脚本
- 页面副标题
- “编写你自己的指标和全自动策略。一切都在这台电脑上沙箱运行 —— 没有网络、没有文件访问、没有经纪商 API。”
- 运行预算
- 每次执行 2 秒,在隔离的 worker 中
- 示例运行
- 300 根合成 K 线,tick 大小 0.25
- 存储
- 脚本保存在本机,键为 orderflow.userIndicators.v1
它做什么
页面的每个区域回答一个问题:列表说明你正在处理哪个脚本,身份信息条说明它叫什么、画在哪里、用哪种语言,编辑器说明它做什么,运行条负责执行,控制台和示意图说明上一次运行产生了什么。
身份信息条和代码之间有一行带四个步骤的功能条 —— 编写、检查、运行、结果 —— 每一步显示的都是真实状态,而不是一条理想化的路径。“编写”显示“已保存”或“有未保存的改动”。“检查”报告“JavaScript,无需引擎”、Python 的引擎阶段,或在代码与所声明语言相矛盾时显示“代码看起来像 Python”。“运行”显示“尚未运行”“运行中…”、一个耗时与 K 线数,或一次失败及其行号。“结果”报告输出、策略决策,或错误及其日志计数。
控件
| 控件 | 默认值 | 作用 |
|---|---|---|
| 新建指标 | — | 创建一个 compute() 返回可绘制输出的脚本。 |
| 新建策略 | — | 创建一个 decide() 为模拟账户返回交易决策的脚本。 |
| 从模板开始 | — | 打开模板库,并按该脚本的语言筛选。 |
| 脚本(列表开关) | 展开 | 收起左侧列表,把宽度让给编辑器。 |
| 绘制目标 | 画在图表上 | “画在图表上”覆盖在价格之上;“独立窗格”给脚本一个自己的窗格。 |
| 语言 | JavaScript | 与脚本一起保存。切换并不会翻译代码。 |
| 在示例数据上运行 | Ctrl+Enter | 在 300 根合成 K 线上运行草稿,并填充功能条、示意图和控制台。 |
| 保存 | Ctrl+S | 干净时按钮显示“已保存”,草稿有改动时显示“保存改动”。 |
| 显示在图表上 | 新建指标时为开启 | 刚创建的指标已经在显示;这个开关把它从指标面板的“我的脚本”分组中加入或移除。 |
如何使用
- 从模板开始,而不是从空白文件开始:每个模板展示一种不同的数据取用方式 —— 收盘价、delta、时段、逐价位的足迹图、一个未平仓头寸。
- 尽早并频繁地运行。运行在本机进行,确定性强,且不产生任何费用。
- 感觉哪里不对时,从左到右读那一行功能条:它会指出第一个状态不佳的步骤。
- 切换“显示在图表上”之前先保存 —— 图表读取的是已保存的脚本,而不是草稿。
局限与陷阱
- 脚本运行在隔离的 worker 中,预算为 2 秒。死循环杀死的是它自己的 worker,而不是应用。
- 策略只在这台电脑上交易模拟考核账户;它永远无法触及经纪商。
- 示例数据是一条确定性随机游走,不是市场。一次运行只能证明代码可以执行并返回正确的结构,绝不能证明它能盈利。
- 离开页面时它保持挂载,因此回来即刻可用,助手的长回复也会继续流式输出。
相关页面
其他语言版本
常见问题
- 我的脚本保存在哪里?
- 保存在这台电脑的本地存储中,键为 orderflow.userIndicators.v1。它们不会被上传到任何地方。
- “在示例数据上运行”究竟在什么上运行?
- 在由确定性随机游走生成的 300 根合成 K 线上运行,并通过上下文传入 0.25 的 tick 大小。同一个脚本运行两次结果相同。
- 为什么功能条的“检查”步骤是红色的?
- 要么是所声明的语言与代码相矛盾,要么是所声明语言的引擎缺失或启动失败。该步骤会指明是哪一种。