Loading...
正在加载...
请稍候

Vibe-Trading 技能库完全使用指南:83 个技能 + 27 个多智能体团队

二一 (TwoOne) 2026年05月12日 17:14

Vibe-Trading 是一套内置在 OpenCode 中的量化交易工具集,覆盖从数据获取、策略开发、回测验证到行为诊断的完整链路。本文基于 83 个技能 + 27 个多智能体团队 + 10+ MCP 工具 的实测分析。


一、能做什么?

能力 说明
行情数据 A股/港股/美股/加密货币/期货/外汇,分钟级到日线
技术分析 经典指标、K线形态、一目均衡、谐波、波浪、缠论、SMC
策略回测 写完 signal_engine.py 即可回测,自动处理数据加载和绩效统计
基本面 三表深度解读、12 红旗造假检测、杜邦分析、DCF 估值
期权 Black-Scholes 合成定价、多腿组合回测、Greeks 聚合
因子研究 IC/IR 分析、分位数回测、等权/IC 加权/正交化因子组合
影子账户 从交割单提炼盈利模式 → 跨四市场回测 → 差值归因 → PDF 报告
多智能体 27 个投研团队,投委会/量价桌/风控委员会一键运行

二、快速上手:第一条策略回测

标的代码规则

市场 格式 示例
A股 6位代码.SZ/.SH/.BJ 000001.SZ, 600519.SH
美股 大写.US AAPL.US, NVDA.US
港股 数字.HK 0700.HK, 9988.HK
加密货币 大写-USDT BTC-USDT, ETH-USDT

Step 1:写 config.json

{
  "source": "auto",
  "codes": ["000001.SZ"],
  "start_date": "2020-01-01",
  "end_date": "2024-12-31",
  "interval": "1D",
  "initial_cash": 1000000,
  "commission": 0.001,
  "engine": "daily"
}

source: "auto" 会自动根据代码格式选择数据源。

Step 2:写 signal_engine.py

import pandas as pd
from typing import Dict

class SignalEngine:
    def generate(self, data_map: Dict[str, pd.DataFrame]) -> Dict[str, pd.Series]:
        signals = {}
        for code, df in data_map.items():
            close = df["close"]
            ma_fast = close.rolling(5).mean()
            ma_slow = close.rolling(20).mean()
            signal = pd.Series(0.0, index=df.index)
            signal[ma_fast > ma_slow] = 1.0
            signal[ma_fast < ma_slow] = -1.0
            signals[code] = signal
        return signals

Step 3:运行回测

使用 backtest 工具,传入包含 config.json 和 code/ 的目录即可。

产出物:metrics.csv(年化收益/Sharpe/最大回撤)、equity.csv(每日净值)、trades.csv(逐笔交易)。

三、技术分析引擎对比(7 种)

引擎 核心方法 适合场景
technical-basic EMA/ADX + 布林带 + RSI + OBV 三维投票 新手入门
candlestick 15 种经典 K 线形态 短期反转
ichimoku 一目均衡表五线系统 综合趋势判断
harmonic Gartley/Bat/Butterfly/Crab 精确反转点
elliott-wave 5 浪推动 + 3 浪调整 中长期预判
chanlun 缠中说禅:分型→笔→中枢→买卖点 A股/期货短线
smc BOS/ChoCH/FVG/Order Blocks 日内/波段

信号约定统一:1 = 做多,-1 = 做空,0 = 观望。

可通过 technical_analysis_panel swarm 团队让 6 种引擎并行分析,聚合共振信号。

四、基本面体系

financial-statement:三表深度解读 + 12 红旗造假检测

  • 利润表:毛利率/净利率/期间费用率/扣非占比
  • 资产负债表:存贷双高、应收增速 vs 营收增速、商誉占比
  • 现金流量表:CFO/CFI/CFF 三流矩阵,6 种企业状态分类

12 红旗中重点:存贷双高(同时 > 营收 30%)、应收暴增(> 营收 × 1.5)、经营现金流连续 2 年为负但净利润为正、关联交易 > 30%、3 年内换 2 次审计师。

杜邦分析:ROE = 净利率 × 总资产周转率 × 权益乘数

valuation-model:DCF/DDM/SOTP + PE-Band/PB-ROE/EV-EBITDA

earnings-forecast:SUE/PEAD 业绩超预期交易

五、期权策略

使用 Black-Scholes 合成定价,无需真实行情即可回测:

策略 结构 观点
Covered Call 持正股 + 卖 Call 温和看涨
Protective Put 持正股 + 买 Put 防跌
Straddle 同价买 Call + Put 大波动
Iron Condor 卖 Put 价差 + 卖 Call 价差 区间震荡

输出额外包含 greeks.csv:组合级 Delta/Gamma/Theta/Vega。

六、因子研究

指标 阈值 解读
IC 均值 > 0.03 有效 基础预测能力
IC 均值 > 0.05 强效 显著选股能力
IR > 0.5 稳定 因子持续有效
IC>0 占比 > 55% 方向稳定 信号一致性达标

三种组合方式:等权 → IC 加权 → Schmidt 正交化(去共线性)。

关键陷阱:前视偏差、幸存者偏差、行业偏差。

七、影子账户(最具创新性)

从交割单提取盈利模式,量化情绪噪音:

1. analyze_trade_journal     → 交易画像 + 行为诊断
2. extract_shadow_strategy   → 3-5 条"人话规则"
3. run_shadow_backtest       → 跨四市场回测
4. render_shadow_report      → 8-section PDF 报告

差值归因(Section 5):

  • noise_trades_pnl:不命中任何盈利规则的真实交易 → 情绪单
  • early_exit_pnl:赢单但走太早的机会成本
  • late_exit_pnl:亏单但扛太久的放大损失
  • overtrading_pnl:超出规则频率的过度交易

行为诊断:处置效应、过度交易、追涨杀跌、锚定效应。

八、Swarm 多智能体团队(27 个)

研究与决策

  • investment_committee:多头 + 空头 + 风控 + PM → 投委会决策
  • fundamental_research_team:三表 + 估值 + 质量 + 编辑 → 买方面深度研报
  • global_allocation_committee:A股 + 加密 + 港美股 + 配置器

量化与技术

  • quant_strategy_desk:选股 + 因子 + 回测 + 风控
  • technical_analysis_panel:6 种技术引擎并行 → 信号聚合
  • ml_quant_lab:特征工程 + 模型设计 + 严格样本外验证
  • factor_research_committee:因子挖掘 + 验证 + 组合 + 回测

风控与绩效

  • risk_committee:回撤 + 尾部 + 状态 + 首席风控
  • portfolio_review_board:归因 + 风险 + 执行 + CIO

主题与宏观

  • macro_strategy_forum:全球 + 国内 + 政策 + 首席
  • geopolitical_war_room:地缘 + 能源 + 供应链 + 首席
  • crypto_research_lab:链上 + DeFi + 情绪 + Alpha 合成

九、典型路径

新手入门:get_market_data → strategy-generate → backtest

深度研究:financial-statement → fundamental_research_team → valuation-model

技术分析:chanlun / ichimoku / harmonic → technical_analysis_panel

量化开发:factor-research → factor_research_committee → multi-factor + backtest

交易复盘:analyze_trade_journal → extract_shadow_strategy → run_shadow_backtest → render_shadow_report

十、FAQ

数据免费吗? 全部免费。A股走 tushare(需要免费注册 Token)或 akshare(零配置),美股/港股走 yfinance,加密走 OKX API。

会用到未来数据吗? 不会。回测严格按时间轴运行,财报数据做了 PIT 处理。

能实盘吗? 不能。纯研究工具。可导出为 vnpy 或 TradingView 代码。

设计哲学:用自然语言驱动量化,用数据结构化认知。不需要记 API,不需要写数据管线,你只需要说清楚想做什么。

讨论回复

1 条回复
二一 (TwoOne) #1
2026-05-12 17:18

最小 Demo:用 MCP 完成一次回归预测 + 回测

这个 Demo 演示如何用 Vibe-Trading 的 MCP 工具链,零代码写管线、零配置拉数据,完成一次完整的"预测→验证"闭环。

目标

用滚动线性回归预测次日涨跌,回测验证效果。

思路

收盘价 → 计算 5 日动量因子 → 线性回归预测次日方向 → 生成交易信号 → 回测

Step 1:拉数据(1 个 MCP 调用)

工具: get_market_data
参数:
  codes: ["AAPL.US"]
  start_date: "2023-01-01"
  end_date: "2024-12-31"
  source: "auto"

返回 AAPL 日线 OHLCV,无需写任何 yfinance 代码。

Step 2:写策略(回归预测核心)

创建 config.json

{
  "source": "auto",
  "codes": ["AAPL.US"],
  "start_date": "2023-01-01",
  "end_date": "2024-12-31",
  "interval": "1D",
  "initial_cash": 100000,
  "commission": 0.001,
  "engine": "daily"
}

创建 code/signal_engine.py回归预测的最小实现):

import pandas as pd
import numpy as np
from typing import Dict
from sklearn.linear_model import LinearRegression

class SignalEngine:
    def __init__(self, lookback=60, forecast_horizon=1):
        self.lookback = lookback
        self.forecast_horizon = forecast_horizon

    def _build_features(self, df):
        close = df["close"]
        features = pd.DataFrame(index=df.index)
        features["returns"] = close.pct_change()
        features["ma5"] = close.rolling(5).mean() / close - 1
        features["ma20"] = close.rolling(20).mean() / close - 1
        features["vol5"] = features["returns"].rolling(5).std()
        features["rsi"] = self._rsi(close, 14)
        features["volume_ratio"] = df["volume"] / df["volume"].rolling(20).mean()
        return features, close

    def _rsi(self, close, period=14):
        delta = close.diff()
        gain = delta.clip(lower=0)
        loss = -delta.clip(upper=0)
        avg_gain = gain.ewm(alpha=1/period, adjust=False).mean()
        avg_loss = loss.ewm(alpha=1/period, adjust=False).mean()
        rs = avg_gain / avg_loss.replace(0, np.nan)
        return 100 - 100 / (1 + rs)

    def generate(self, data_map: Dict[str, pd.DataFrame]) -> Dict[str, pd.Series]:
        signals = {}
        for code, df in data_map.items():
            features, close = self._build_features(df)
            target = close.pct_change(self.forecast_horizon).shift(-self.forecast_horizon)

            signal = pd.Series(0.0, index=df.index)

            for t in range(self.lookback, len(df) - self.forecast_horizon):
                train_features = features.iloc[t-self.lookback:t].dropna()
                train_target = target.iloc[t-self.lookback:t].dropna()
                common_idx = train_features.index.intersection(train_target.index)
                X_train = train_features.loc[common_idx].values
                y_train = train_target.loc[common_idx].values

                X_pred = features.iloc[t:t+1].values
                if len(X_train) < 10 or np.isnan(X_pred).any():
                    continue

                model = LinearRegression()
                model.fit(X_train, y_train)
                pred = model.predict(X_pred)[0]

                signal.iloc[t] = np.clip(pred * 20, -1.0, 1.0)

            signals[code] = signal.fillna(0)
        return signals

核心逻辑

  1. 构造 6 个特征(收益率、均线偏离、波动率、RSI、量比)
  2. 用过去 60 天数据滚动训练 LinearRegression
  3. 预测次日涨跌幅 → 乘以 20 放大信号 → clip 到 [-1, 1]

Step 3:回测验证(1 个 MCP 调用)

工具: backtest
参数: run_dir=<包含上面两个文件的目录>

返回 metrics.csv

annual_return, sharpe_ratio, max_drawdown, win_rate, trade_count
0.xxx,         x.xxx,        -0.xxx,       0.xxx,    xxx

Step 4(可选):替换模型

LinearRegression 换成 RidgeLogisticRegression

from sklearn.linear_model import Ridge
model = Ridge(alpha=1.0)

或者做方向分类而非回归:

from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
# target 改为 0/1:次日涨 → 1,跌 → 0
y_train = (train_target > 0).astype(int).values
pred_prob = model.predict_proba(X_pred)[0][1]
signal.iloc[t] = (pred_prob - 0.5) * 2  # 映射到 [-1, 1]

关键要点

  • MCP 工具帮你做的事:数据获取、回测引擎、绩效统计 — 你只写信号逻辑
  • 前视偏差防护shift(-1) 确保预测目标在未来,iloc[t] 只用 t 时刻及之前的数据训练
  • 最小依赖:只需 pandas + numpy + sklearn,无需引入任何回测框架

这个 Demo 的完整链路:get_market_data → write_file(config.json) → write_file(signal_engine.py) → backtest → read_file(metrics.csv),5 个 MCP 调用完成一次完整的回归预测+验证闭环。

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录