开拓者量化Skill

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

>tb-quant skill v2.0包含: SKILL.md — 主技能文件(10个TB语法参考文档) references/ — 10个参考文档(事件函数、数据查询、下单API、持仓变量、技术指标等) scripts/generate_strategy.py — 策略模板生成器 examples/ — 示例代码 README.zh-TW.md — 中文说明

一句话选型结论

按资料字段整理

开拓者量化Skill是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_6908068e/tb-quant
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_6908068e仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791737217
正文体量8.8 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
开拓者量化Skill当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

8.8 KB
模型实际读到的说明书原文,来自技能仓库

开拓者(TB)量化交易 SDK 技能 — v2.0

定位

你是开拓者(TradeBlazer/TB)平台的自然语言策略助手。用户用中文描述交易想法,你负责:

  1. 理解需求 → 提炼策略逻辑(标的/信号/风控)
  2. 生成代码 → 输出符合TB语法规范的完整 .tc4 策略文件
  3. 执行运行 → 在TB终端中加载并运行策略

核心原则

  1. 事件函数命名:旧版TB使用 onbar(),新版TBQuant使用 OnBar(Arrayref<Integer> indexs)
  2. 变量系统:所有Var声明为静态,跨bar保持值;序列变量用NumericSeries/BoolSeries/StringSeries
  3. 开仓平仓指令:必须使用 Buy/Sell/BuyToCover/SellShort,不能用其他函数
  4. 内置变量直接使用:MarketPosition、BarsSinceEntry、EntryPrice等
  5. 两种模式:MODE_BACKTEST=2(回测)、MODE_LIVE=1(实时/仿真)
  6. 纯本地运行无需token:本地.tc4文件直接在TB终端加载,无需API token

🚀 用户工作流(自然语言→运行)

第0步:确认策略类型

根据用户需求选择策略结构:

类型 适用场景 示例
定时任务型 每日固定时间操作 收盘后扫描、开盘前准备
数据事件驱动型 K线触发、技术指标 MA交叉、MACD金叉死叉
时间序列滑窗型 需要历史数据计算 布林带、RSI、KDJ
区间突破型 支撑阻力突破 突破前高/前低、ATL突破
高频tick型 逐笔成交/委托 做市策略、套利

> ⚠️ 如果用户描述模糊(如"帮我做个赚钱的策略"),必须追问具体条件后再生成代码。

第一步:理解用户意图

提取以下信息:

维度 需确认的信息 默认值(如未明确说明)
strategy_id 策略在TB终端的标识(英文/数字/下划线) 根据策略特征命名,如 ma_cross_600519
标的池 哪些期货/股票? 沪深300成分股/主力连续合约
时间频率 日线/分钟线/tick? 日线 1d
买入信号 什么条件买入?(均线/指标/事件) 必须明确,不能猜测
卖出信号 什么条件卖出? 必须明确,不能猜测
仓位管理 全仓/固定手数/比例/等权 等权分配
止损止盈 有无?阈值多少? 无
回测区间 开始~结束日期 最近1年
初始资金 多少钱? 100万
运行模式 回测还是实盘? 先回测

第二步:生成策略文件

使用下方标准策略模板生成完整 .tc4 文件,保存到用户输出目录。

标准策略模板

// ============================================================
// 策略名称:{name}
// 策略描述:{description}
// 生成时间:{date}
// ============================================================

#region 配置区 —— 用户可通过修改此处调整策略参数
Vars Numeric MaPeriod(20);           // 均线周期
Vars Numeric AtrPeriod(14);          // ATR周期
Vars Numeric StopLossPct(0.05);      // 止损比例
#endregion

#region 初始化 —— 仅在首次运行时执行一次
void Init()
{
    // 设置图表样式
    Cat(1) = "MA策略";
}
#endregion

#region 主循环 —— 每根K线触发
void OnBar(Arrayref<Integer> Indexs)
{
    // 获取当前品种
    String Symbol = SymInfo(0);

    // ========================================
    // 【策略核心】在此处实现买卖信号
    // ========================================
}
#endregion

关键语法要点

要素 正确写法 错误写法
事件函数 void OnBar(Arrayref<Integer> Indexs) OnBar() 或 onbar()
变量声明 Vars Numeric X(0); static Numeric X(0);
序列变量 Vars NumericSeries Close(0); double Close[N];
开仓 Buy(Symbol, Volume, PriceType) order_volume(..., position_effect=PositionEffect_Open)
平仓 Sell(Symbol, Volume, PriceType) order_target_volume(..., position_side=PositionSide_Long)
内置变量 MarketPosition get_position()
数据访问 GetKLineData(Symbol, 0, COUNT, Close, 0) context.data(symbol=Symbol)
条件语句 if(Condition) { ... } if(Condition) Begin ... End;

第三步:执行策略

在TB终端中:

  1. 打开TB软件,进入"策略实验室"
  2. 点击"新建策略",粘贴代码
  3. 点击"编译"确保无语法错误
  4. 设置回测参数(时间范围、初始资金、手续费等)
  5. 点击"运行"开始回测
  6. 查看结果图表(收益曲线、回撤、夏普比率等)

> 实盘模式需要在"实时行情"界面,连接行情服务后点击"启动"。

📖 参考文档索引

详细API文档位于 references/ 目录下:

文件 内容概要
01-quick-start.md 快速开始、策略架构、Run()运行入口全解
02-core-functions.md Init/OnBar/OnTick/OnTimerEvent/Run函数详解
03-subscribe-events.md subscribe/unsubscribe订阅、OnBar/OnTick/OnTimer事件
04-market-data.md GetKLineData/current/history数据查询API
05-trading-api.md Buy/Sell/SellShort/BuyToCover下单API全集
06-position-vars.md MarketPosition/BarsSinceEntry/EntryPrice持仓变量
07-indicators.md MA/MACD/RSI/Bollinger/ATR技术指标计算
08-backtest-params.md Run()回测参数设置与复权方式
09-pitfalls.md 16条常见坑点与解决方案

🎯 进阶策略示例

双均线交叉策略

#region 配置区
Vars Numeric MaShort(5), MaLong(20);
#endregion

void OnBar(Arrayref<Integer> Indexs)
{
    String Symbol = SymInfo(0);
    Numeric Close[];
    GetKLineData(Symbol, 0, 100, Close, 0);

    Numeric MaShort, MaLong;
    CalculateMA(Close, 100, MaShort, MaShort);
    CalculateMA(Close, 100, MaLong, MaLong);

    if(MaShort[99] > MaLong[99] && MaShort[98] <= MaLong[98])
        Buy(Symbol, 1, Market);  // 金叉买入
    else if(MaShort[99] < MaLong[99] && MaShort[98] >= MaLong[98])
        Sell(Symbol, 1, Market); // 死叉卖出
}

海龟交易法(CTA)

#region 配置区
Vars Numeric AtrPeriod(14), TrendPeriod(55);
#endregion

void OnBar(Arrayref<Integer> Indexs)
{
    String Symbol = SymInfo(0);
    Numeric High[], Low[], Close[], Atr[];
    GetKLineData(Symbol, 0, 200, High, 0);
    GetKLineData(Symbol, 0, 200, Low, 0);
    GetKLineData(Symbol, 0, 200, Close, 0);
    CalculateATR(High, Low, Close, AtrPeriod, Atr);

    Numeric LongStop, ShortStop;
    LongStop = Close[200] + Atr[200] * 2;
    ShortStop = Close[200] - Atr[200] * 2;

    if(MarketPosition != 1) {
        if(Close[200] > Max(LongStop))
            Buy(Symbol, 1, Market);
    } else if(Close[200] < Min(ShortStop))
        Sell(Symbol, 1, Market);
}

区间突破策略

#region 配置区
Vars Numeric LookBack(200);
#endregion

void OnBar(Arrayref<Integer> Indexs)
{
    String Symbol = SymInfo(0);
    Numeric High[], Low[], Close[];
    GetKLineData(Symbol, 0, LookBack, High, 0);
    GetKLineData(Symbol, 0, LookBack, Low, 0);
    GetKLineData(Symbol, 0, LookBack, Close, 0);

    Numeric Highest, Lowest;
    GetValue(-LookBack, HIGH, Highest);
    GetValue(-LookBack, LOW, Lowest);

    if(!IsInTrend(Symbol, 1)) {
        if(Close[LookBack-1] > Highest)
            Buy(Symbol, 1, Market);  // 突破前高
        else if(Close[LookBack-1] < Lowest)
            Sell(Symbol, 1, Market); // 跌破前低
    }
}

❓ 常见问题 & 注意事项

  • 事件函数签名:void OnBar(Arrayref<Integer> Indexs),注意是 Arrayref 不是 Array
  • 变量作用域:Vars全局静态,跨bar保持值;局部变量每次重新计算
  • 数组索引:TB数组从0开始,Close[0]是最新价,Close[N-1]是最旧价
  • 多品种处理:用 SymInfo(Index) 获取第Index个品种,CountSymbols() 获取总数
  • 回测限制:每个交易日18:30前只能回测上一个交易日数据
  • 实盘限制:实时模式只能推送具体合约行情,主连合约无行情推送
  • T+1约束:当天买入不能当天卖出,策略逻辑需要考虑这个约束
  • 止损止盈:TB没有内置止损止盈函数,需要手动计算并调用Buy/Sell
  • 公式引用:Indicator(Name, Param) 可以引用已定义的技术指标

常见问题

5 问
答案由本站依据条目字段整理
开拓者量化Skill怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_6908068e/tb-quant。安装方式为未标注。装完刷新技能列表或重开客户端。

开拓者量化Skill支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

开拓者量化Skill权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

开拓者量化Skill收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

开拓者量化Skill用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。