Token导航 LogoToken导航

Agent Skill · 效率

tickflow(tickflow 效率)

tickflow 用于辅助 Python 项目开发、测试和数据处理,适合在 OpenClaw 中需要阅读 Python 代码、运行测试或整理脚本流程时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

tickflow 是效率类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为接触敏感数据;许可证为 MIT-0,第三方扫描已通过,按安装量在效率类的 21,003 个 Skill 里排第 2,895。

总安装 21,097周安装 897GitHub Stars 4下载 7,391核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.2

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:tickflow(tickflow 效率)
来源仓库:https://github.com/tickflow-dev/tickflow
安装命令:
openclaw skills install tickflow
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install tickflow

这个 Skill 是做什么的

效率类 Skill 把重复的整理、汇总、转换工作交给助手完成,减少手工复制粘贴。

使用TickFlow Python SDK获取A股、港股、美股、期货等市场的实时行情和K线数据

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install tickflow;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

tickflow 怎么安装?

在终端执行 openclaw skills install tickflow。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

tickflow 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

tickflow 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

tickflow 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

tickflow 用的人多吗?

公开数据是累计安装 21,097 次,近一周安装 897 次,下载 7,391 次,GitHub 4 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

tickflow 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理效率类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要厂商级技术支持和 SLA 的生产系统。

效率类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
github

GitHub 代码协作 · OpenClaw

7,632,918545需要联网MIT-0通过
nano-pdf

Nano PDF 文档 · OpenClaw

4,249,476231需要联网MIT-0通过
auto-updater

自动更新程序 · OpenClaw

2,964,063386操作浏览器MIT-0通过
video-frames

视频帧 · OpenClaw

2,621,304112需要联网MIT-0通过
gemini

Gemini 助手 · OpenClaw

2,547,39648需要联网MIT-0有提醒
tickflow

tickflow 效率 · 本页

21,0974接触敏感数据MIT-0通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
tickflow
description
使用 TickFlow Python SDK 获取 A 股、港股、美股、期货等市场的实时行情和 K 线数据
homepage
https://tickflow.org
metadata
{"clawdbot":{"emoji":"📈","requires":{"bins":["python3","uv"],"env":["TICKFLOW_API_KEY"]}}}

TickFlow Skill

通过 TickFlow Python SDK 获取 A 股、港股、美股、期货等市场的实时行情、K 线数据。支持多市场、多周期,适用于量化交易、数据分析等场景。

环境配置

1. 安装 uv(如果未安装)

检查 uv 是否已安装:

uv --version

如果未安装,运行官方安装脚本:

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

2. 配置 TickFlow 工作环境

在当前 skills 项目下创建 python 文件夹并初始化:

# 创建 python 工作目录
mkdir -p python
cd python

# 创建 pyproject.toml 文件
cat > pyproject.toml << 'EOF'
[project]
name = "tickflow-workspace"
version = "0.1.0"
description = "TickFlow workspace for market data analysis"
requires-python = ">=3.10"
dependencies = [
    "tickflow[all]>=0.1.17",
]
EOF

# 使用 uv 同步依赖
uv sync

完成后,python 文件夹将作为你的 TickFlow 工作目录。

3. 配置 API Key

访问 tickflow.org 获取 API Key,然后配置环境变量:

# macOS/Linux
export TICKFLOW_API_KEY="your-api-key"

# Windows (PowerShell)
$env:TICKFLOW_API_KEY="your-api-key"

建议将环境变量添加到 shell 配置文件(如 ~/.zshrc 或 ~/.bashrc)中:

echo 'export TICKFLOW_API_KEY="your-api-key"' >> ~/.zshrc
source ~/.zshrc

标的代码格式

所有查询使用统一格式:代码.市场后缀(例如:600000.SH)

常用市场后缀

后缀市场说明
SH上海证券交易所沪市 A 股、ETF、债券等
SZ深圳证券交易所深市 A 股、创业板、ETF 等
BJ北京证券交易所北交所股票
SHF上海期货交易所上期所期货
DCE大连商品交易所大商所期货
ZCE郑州商品交易所郑商所期货
CFX中国金融期货交易所中金所股指/国债期货
INE上海国际能源交易中心原油等期货
GFE广州期货交易所广期所期货
US美股美国证券市场
HK港股香港联交所

标的代码示例

  • A 股:600000.SH(浦发银行)、000001.SZ(平安银行)、920662.BJ(北交所股票)
  • 美股:AAPL.US(苹果)、TSLA.US(特斯拉)、MSFT.US(微软)
  • 港股:00700.HK(腾讯控股)、09988.HK(阿里巴巴)
  • ETF:510300.SH(沪深300ETF)、159915.SZ(创业板ETF)
  • 指数:000001.SH(上证指数)、399006.SZ(创业板指数)
  • 期货:au2604.SHF(黄金期货)、i2605.DCE(铁矿石期货)

目前支持状态

  • A 股(SH / SZ / BJ):已支持。可查实时行情、日 K、分钟 K、日内分时、财务数据、标的池(如 CN_Equity_A)等。
  • 国内期货(SHF / DCE / ZCE / CFX / INE / GFE):支持主力合约查询。按合约代码 + 后缀查询(如 au2604.SHF)。
  • 美股(US):已支持。实时行情、全量历史日 K 线(支持前复权/后复权)、除权因子、标的池(US_Equity)。
  • 港股(HK):已支持。实时行情、全量历史日 K 线(支持前复权/后复权)、除权因子、标的池(HK_Equity)。

快速开始

免费服务(适合历史数据分析)

无需 API Key,直接使用:

from tickflow import TickFlow

tf = TickFlow.free()

# 获取历史日 K 线
df = tf.klines.get("600000.SH", period="1d", count=100, as_dataframe=True)
print(df.tail())

# 查询标的信息
instruments = tf.instruments.batch(symbols=["600000.SH", "000001.SZ"])
for inst in instruments:
    print(f"{inst['symbol']}: {inst['name']}")

免费服务特点:

  • ✅ 历史日 K 线(1d、1w、1M、1Q、1Y)
  • ✅ 标的信息、交易所、标的池查询
  • ❌ 不支持实时行情
  • ❌ 不支持分钟级 K 线(1m、5m、15m、30m、60m)

完整服务(实时行情 + 全部功能)

使用已配置的 API Key:

from tickflow import TickFlow

# 自动读取环境变量 TICKFLOW_API_KEY
tf = TickFlow()

# 获取实时行情(支持多市场)
quotes = tf.quotes.get(symbols=["600000.SH", "AAPL.US", "00700.HK"])
for q in quotes:
    print(f"{q['symbol']}: {q['last_price']}")

运行 Python 脚本

在当前 skills 项目的 python 文件夹下,使用 uv run python 运行:

cd python  # 进入当前项目的 python 文件夹
uv sync    # 确保依赖已安装
uv run python your_script.py

使用示例

1. 获取实时行情

创建 examples/quotes_example.py:

from tickflow import TickFlow

tf = TickFlow()

# 按标的代码查询(支持 A 股、港股、美股混合查询)
quotes = tf.quotes.get(symbols=["600000.SH", "000001.SZ", "AAPL.US", "00700.HK"])
for q in quotes:
    print(f"{q['symbol']}: {q['last_price']}")

# 按标的池查询
quotes_df = tf.quotes.get(universes=["CN_Equity_A"], as_dataframe=True)  # 全部 A 股
print(quotes_df.head())

# 获取美股/港股行情
us_quotes = tf.quotes.get(universes=["US_Equity"], as_dataframe=True)
hk_quotes = tf.quotes.get(universes=["HK_Equity"], as_dataframe=True)

运行:uv run python examples/quotes_example.py

2. 获取历史 K 线

创建 examples/klines_example.py:

from tickflow import TickFlow

tf = TickFlow()

# 单只股票日 K 线(最近 100 天)
df = tf.klines.get("600000.SH", period="1d", count=100, as_dataframe=True)
print(df.tail())

# 批量获取多只股票的 K 线
symbols = ["600000.SH", "000001.SZ", "600519.SH"]
dfs = tf.klines.batch(symbols, period="1d", count=100, as_dataframe=True, show_progress=True)
print(dfs["600000.SH"].tail())

运行:uv run python examples/klines_example.py

3. 获取日内分时数据

创建 examples/intraday_example.py:

from tickflow import TickFlow

tf = TickFlow()

# 获取当日 1 分钟 K 线
df = tf.klines.intraday("600000.SH", as_dataframe=True)
print(f"今日已有 {len(df)} 根分钟 K 线")
print(df.tail())

# 获取当日 5 分钟 K 线
df_5m = tf.klines.intraday("600000.SH", period="5m", as_dataframe=True)
print(df_5m.tail())

# 批量获取
symbols = ["600000.SH", "000001.SZ"]
dfs = tf.klines.intraday_batch(symbols, as_dataframe=True, show_progress=True)

运行:uv run python examples/intraday_example.py

4. 查询标的信息

创建 examples/instruments_example.py:

from tickflow import TickFlow

tf = TickFlow()

# 查询单个或多个标的信息
instruments = tf.instruments.batch(symbols=["600000.SH", "000001.SZ"])
for inst in instruments:
    print(f"{inst['symbol']}: {inst['name']}")

运行:uv run python examples/instruments_example.py

5. 获取财务数据

创建 examples/financials_example.py:

from tickflow import TickFlow

tf = TickFlow()

# 利润表
income_df = tf.financials.income(["000001.SZ", "600519.SH"], as_dataframe=True)
print("=== 利润表(最近5期) ===")
print(income_df.tail())

# 资产负债表
balance_df = tf.financials.balance_sheet(["000001.SZ"], as_dataframe=True)
print("\
=== 资产负债表(最近3期) ===")
print(balance_df.tail(3))

# 现金流量表
cashflow_df = tf.financials.cash_flow(["000001.SZ"], as_dataframe=True)
print("\
=== 现金流量表(最近3期) ===")
print(cashflow_df.tail(3))

# 核心财务指标
metrics_df = tf.financials.metrics(["000001.SZ"], as_dataframe=True)
print("\
=== 核心财务指标(最近3期) ===")
print(metrics_df.tail(3))

运行:uv run python examples/financials_example.py

6. 仅获取最新一期财务数据

from tickflow import TickFlow

tf = TickFlow()

# 获取多只股票的最新财务数据
symbols = ["600519.SH", "000001.SZ", "600000.SH"]
latest = tf.financials.income(symbols, latest=True)

for symbol, records in latest.items():
    if records:
        record = records[0]
        revenue = record.get('revenue', 0) / 1e8  # 转换为亿元
        net_income = record.get('net_income', 0) / 1e8
        print(f"{symbol} 最新一期:")
        print(f"  营收: {revenue:.2f} 亿元")
        print(f"  净利润: {net_income:.2f} 亿元")
        print(f"  报告期: {record.get('period_end')}")

常用 K 线周期

类型周期代码说明
日内1m1 分钟 K 线
日内5m5 分钟 K 线
日内15m15 分钟 K 线
日内30m30 分钟 K 线
日内60m60 分钟 K 线
日线及以上1d日 K 线
日线及以上1w周 K 线
日线及以上1M月 K 线
日线及以上1Q季 K 线
日线及以上1Y年 K 线

注意事项

  • 必须在当前 skills 项目的 python 文件夹下使用 uv run python 运行脚本
  • 首次使用需要运行 uv sync 安装依赖
  • SDK 支持 Python 3.9+,推荐使用 Python 3.10 或更高版本
  • 免费服务仅提供历史日 K 线,不含实时行情和分钟 K 线
  • 支持 A 股、港股、美股、国内期货等多市场,标的代码可混合查询
  • 美股/港股支持前复权、后复权 K 线和除权因子
  • 单次单标的最多获取 10000 根 K 线
  • 批量接口(batch、intraday_batch)适合大量标的数据获取
  • API Key 通过环境变量 TICKFLOW_API_KEY 配置
  • 使用 as_dataframe=True 参数可直接返回 pandas DataFrame

实用场景示例

下载历史数据进行回测

from tickflow import TickFlow

tf = TickFlow.free()  # 免费服务足够

# 获取近 1000 天的日 K 线
df = tf.klines.get("600000.SH", period="1d", count=1000, as_dataframe=True)

# 保存为 CSV
df.to_csv("600000_SH_daily.csv", index=False)
print(f"已保存 {len(df)} 条数据")

实时监控股票价格

import time
from tickflow import TickFlow

tf = TickFlow()

symbols = ["600000.SH", "000001.SZ", "AAPL.US", "00700.HK"]

while True:
    quotes = tf.quotes.get(symbols=symbols)
    for q in quotes:
        change_pct = q['ext']['change_pct'] * 100
        print(f"{q['ext']['name']} ({q['symbol']}): {q['last_price']} ({change_pct:+.2f}%)")
    print("-" * 60)
    time.sleep(5)

批量下载多只股票数据

from tickflow import TickFlow

tf = TickFlow()

# 批量下载 K 线数据(支持多市场混合)
symbols = ["600000.SH", "000001.SZ", "AAPL.US", "00700.HK"]
dfs = tf.klines.batch(symbols, period="1d", count=1000, as_dataframe=True, show_progress=True)

# 逐个保存
for symbol, df in dfs.items():
    filename = f"{symbol.replace('.', '_')}_daily.csv"
    df.to_csv(filename, index=False)
    print(f"已保存 {symbol}: {len(df)} 条数据 -> {filename}")

筛选优质股票(基于财务指标)

from tickflow import TickFlow

tf = TickFlow()

# 获取 A 股标的池
symbols  = tf.universes.get("CN_Equity_A")['symbols'][:200]

# 获取最新财务指标
metrics = tf.financials.metrics(symbols, latest=True, as_dataframe=True)

# 筛选条件:ROE > 15%、净利率 > 10%、负债率 < 60%
high_quality = metrics[
    (metrics['roe'] > 15) & 
    (metrics['net_margin'] > 10) & 
    (metrics['debt_to_asset_ratio'] < 60)
]

print(f"筛选出 {len(high_quality)} 只优质股票")
print(high_quality[['symbol', 'roe', 'net_margin', 'debt_to_asset_ratio', 'eps_diluted']].head(10))

分析财务数据趋势

from tickflow import TickFlow

tf = TickFlow()

# 获取某只股票的历史财务数据
symbol = "600519.SH"
income_df = tf.financials.income([symbol], as_dataframe=True)

# 按报告期排序
income_df = income_df.sort_values('period_end')

# 计算营收和净利润同比增长率
income_df['revenue_growth'] = income_df['revenue'].pct_change(4) * 100  # 同比(4个季度)
income_df['net_income_growth'] = income_df['net_income'].pct_change(4) * 100

# 显示最近8个季度的数据
print(f"{symbol} 营收与净利润趋势(最近8个季度):")
result = income_df[['period_end', 'revenue', 'revenue_growth', 'net_income', 'net_income_growth']].tail(8)
result['revenue'] = result['revenue'] / 1e8  # 转换为亿元
result['net_income'] = result['net_income'] / 1e8
print(result)

同行业股票财务对比

from tickflow import TickFlow

tf = TickFlow()

# 对比同行业多只股票的财务指标
symbols = ["600519.SH", "000858.SZ", "600809.SH"]  # 白酒股
latest_metrics = tf.financials.metrics(symbols, latest=True)

print("=== 白酒股财务指标对比 ===")
for symbol, records in latest_metrics.items():
    if records:
        r = records[0]
        print(f"\
{symbol}:")
        print(f"  ROE: {r.get('roe', 0):.2f}%")
        print(f"  净利率: {r.get('net_margin', 0):.2f}%")
        print(f"  EPS: {r.get('eps_diluted', 0):.2f}")
        print(f"  负债率: {r.get('debt_to_asset_ratio', 0):.2f}%")
        print(f"  报告期: {r.get('period_end')}")

计算技术指标

from tickflow import TickFlow

tf = TickFlow()

# 获取 K 线数据
df = tf.klines.get("600000.SH", period="1d", count=100, as_dataframe=True)

# 计算移动平均线
df["ma5"] = df["close"].rolling(5).mean()
df["ma20"] = df["close"].rolling(20).mean()

# 计算 MACD
exp1 = df["close"].ewm(span=12, adjust=False).mean()
exp2 = df["close"].ewm(span=26, adjust=False).mean()
df["macd"] = exp1 - exp2
df["signal"] = df["macd"].ewm(span=9, adjust=False).mean()

# 显示最新数据
print(df[["trade_date", "close", "ma5", "ma20", "macd", "signal"]].tail(10))

综合分析(行情 + K线 + 财务)

from tickflow import TickFlow

tf = TickFlow()

symbol = "600519.SH"

# 1. 获取实时行情
quote = tf.quotes.get(symbols=[symbol])[0]
print(f"=== {quote['ext']['name']} ({symbol}) ===")
print(f"最新价: {quote['last_price']:.2f}")
print(f"涨跌幅: {quote['ext']['change_pct']*100:+.2f}%")

# 2. 获取 K 线并计算技术指标
df = tf.klines.get(symbol, period="1d", count=60, as_dataframe=True)
df["ma20"] = df["close"].rolling(20).mean()
latest_close = df.iloc[-1]['close']
latest_ma20 = df.iloc[-1]['ma20']
print(f"\
20日均线: {latest_ma20:.2f}")
print(f"位置: {'站上' if latest_close > latest_ma20 else '跌破'} MA20")

# 3. 获取最新财务指标
metrics = tf.financials.metrics([symbol], latest=True)
if metrics[symbol]:
    m = metrics[symbol][0]
    print(f"\
=== 最新财务指标 ===")
    print(f"ROE: {m.get('roe', 0):.2f}%")
    print(f"净利率: {m.get('net_margin', 0):.2f}%")
    print(f"EPS: {m.get('eps_diluted', 0):.2f}")
    print(f"报告期: {m.get('period_end')}")

构建自选股监控系统

import time
from tickflow import TickFlow

tf = TickFlow()

# 自选股列表(支持 A 股、港股、美股混合)
watchlist = ["600519.SH", "000858.SZ", "AAPL.US", "00700.HK"]

# 获取财务指标(一次性加载)
latest_metrics = tf.financials.metrics(watchlist, latest=True)

print("=== 自选股监控系统 ===\
")

# 实时监控循环
while True:
    quotes = tf.quotes.get(symbols=watchlist)
    
    for q in quotes:
        symbol = q['symbol']
        name = q['ext']['name']
        price = q['last_price']
        change = q['ext']['change_pct'] * 100
        
        # 显示财务指标
        roe = 0
        if symbol in latest_metrics and latest_metrics[symbol]:
            roe = latest_metrics[symbol][0].get('roe', 0)
        
        status = "📈" if change > 0 else "📉"
        print(f"{status} {name:6s} {price:8.2f} ({change:+6.2f}%) | ROE: {roe:5.2f}%")
    
    print("-" * 70)
    time.sleep(10)  # 每10秒刷新

运行示例(在当前项目的 python 文件夹下):

cd python
uv sync  # 确保依赖已安装
uv run python examples/your_script.py

平台分布

OpenClaw

76.82%
按下载量换算5,678

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills