乐于分享
好东西不私藏

AI + 量化交易实战:用自然语言从 0 搭建股票策略系统(完整代码)

AI + 量化交易实战:用自然语言从 0 搭建股票策略系统(完整代码)

🤖 AI + 量化交易实战:用自然语言从 0 搭建股票策略系统(完整代码)

Cursor / Claude Code + Backtrader 实战全记录:Prompt 模板 → 可运行代码 → 回测报告 → 风控模块 → 模拟盘部署零 Python 基础?2 小时跑通你的第一个 AI 量化策略
量化实战CursorBacktraderAI 编程2026
学习门槛
纯自然语言交互,无需写代码
策略开发时间
2小时
从想法到完整回测
代码行数
~120行
AI 生成,注释完整
回测周期
2022-2024
3年A股历史数据
🔄 实战全流程:从想法到回测只需要 6 步
STEP 1
💬
描述策略
STEP 2
🤖
AI 生成代码
STEP 3
⚙️
安装依赖
STEP 4
📊
获取数据
STEP 5
🚀
运行回测
STEP 6
📈
查看报告
📝 STEP 1:核心武器 — AI 量化 Prompt 模板库
💡 Prompt 设计原则
一个好的量化 Prompt 包含五要素:策略逻辑 + 数据要求 + 风控参数 + 输出格式 + 参考框架。 要素越清晰,AI 生成的代码质量越高。

📌 Prompt 模板 A:双均线趋势策略

【角色设定】你是量化交易专家,精通 Python + Backtrader 框架。【策略描述】• 标的:贵州茅台(600519)• 入场逻辑:当 5 日均线(MA5)上穿 20 日均线(MA20)时,以收盘价全仓买入• 出场逻辑:当 MA5 下穿 MA20 时,以收盘价全仓卖出• 止损:持仓亏损达到 5% 时强制平仓• 止盈:持仓盈利达到 15% 时强制平仓【资金设定】• 初始资金:100,000 元• 单次仓位:不超过 30%(分仓操作)【数据要求】• 数据源:使用 akshare 获取 2022-01-01 至 2024-12-31 的日线数据• 字段:日期,开高低收,成交量【回测要求】• 佣金:双边 0.03%• 输出指标:总收益率、年化收益率、夏普比率、最大回撤、胜率、盈亏比• 生成净值曲线图并保存为 equity_curve.png【代码要求】• 使用 Python 3.10+,Backtrader 最新版• 完整注释,关键逻辑加中文注释• 包含数据获取、策略编写、回测运行、报告输出四个模块• 代码可直接复制运行(python strategy.py)

📌 Prompt 模板 B:RSI 超卖反转策略(进阶)

【角色设定】你是量化交易专家,精通 Python + Backtrader 框架,擅长均值回归策略。【策略描述】• 标的:比亚迪(002594)• 入场逻辑:RSI(14) 低于 30 且价格处于 20 日均线下方,买入信号• 出场逻辑:RSI(14) 高于 70 或价格达到 10% 止盈,卖出信号• 加仓规则:RSI 低于 20 时允许补仓,补仓量为原仓位的 50%【风控模块】• 单次最大亏损限制:账户总资金的 2%• 日内最大开仓次数:3 次• 隔夜持仓限制:不持仓过夜(收盘前 5 分钟平仓)【数据要求】使用 akshare 获取 2023-01-01 至 2025-12-31 的日线数据【输出要求】• 完整可运行代码(python rsi_strategy.py)• 完整中文注释• 输出回测绩效表(文本格式)+ equity_curve.png• 输出月度收益明细表格

📌 Prompt 模板 C:多因子选股策略(高阶)

【角色设定】你是量化交易专家,精通 Python + Pandas + Backtrader,擅长多因子选股。【因子定义】• 价值因子:PE(市盈率)< 30 且 > 0• 动量因子:近 20 日收益率排名前 30%• 质量因子:ROE(净资产收益率)> 10%• 筛选条件:三个因子同时满足,每月第一个交易日换仓【标的范围】沪深 300 成分股(通过 akshare 获取成分股列表)【持仓数量】每次最多持有 10 只股票,等权分配【回测时间】2021-01-01 至 2024-12-31【输出】完整 Python 代码(python multi_factor.py),含回测绩效和多空组合对比
💻 STEP 2-3:AI 生成的完整可运行代码
说明:此代码由 Cursor/Claude Code 根据上方 Prompt 模板 A 自动生成。 包含数据获取、策略逻辑、回测引擎、绩效报告四大模块。 运行前需先安装依赖。点击标题栏右侧按钮可切换🔀换行↔️滚动模式。
🐍 Pythonma_cross_strategy.py
# -*- coding: utf-8 -*-"""双均线趋势策略由 AI(Cursor/Claude Code)根据 Prompt 自动生成策略逻辑:MA5 上穿 MA20 买入,MA5 下穿 MA20 卖出回测框架:Backtrader | 数据:akshare | 时间:2022-01-01 ~ 2024-12-31"""# ============ 依赖安装(首次运行前执行)============# pip install backtrader akshare matplotlib pandas# ============ 1. 数据获取模块 ============import akshare as akimport pandas as pdimport datetime as dtimport backtrader as btimport matplotlibmatplotlib.use('Agg')  # 非交互式后端,避免弹窗def get_stock_data(stock_code, start_date, end_date):    """    通过 akshare 获取 A 股历史行情数据    :param stock_code: 股票代码,如 '600519'(贵州茅台)    :param start_date: 开始日期,格式 'YYYYMMDD'    :param end_date: 结束日期,格式 'YYYYMMDD'    :return: DataFrame,列名标准化为 Backtrader 所需格式    """    print(ff"正在获取 {stock_code} 历史数据...")    df = ak.stock_zh_a_hist(        symbol=stock_code,        period="daily",        start_date=start_date,        end_date=end_date,        adjust="qfq"  # 前复权    )    # akshare 返回列名重映射    df = df[['日期','开盘','收盘','最高','最低','成交量']]    df.columns = ['date','open','close','high','low','volume']    df['date'] = pd.to_datetime(df['date'])    df = df.set_index('date')    print(ff"数据获取成功,共 {len(df)} 条日线数据")    return df# ============ 2. 策略逻辑模块 ============class MACrossStrategy(bt.Strategy):    """    双均线趋势策略    - 买入:MA5 上穿 MA20(金叉)    - 卖出:MA5 下穿 MA20(死叉)    - 止损:亏损 5% 强制平仓    - 止盈:盈利 15% 强制平仓    """    # 策略参数:周期、回测数据从外部传入    params = (        ('fast_ma'5),    # 快速均线周期        ('slow_ma'20),    # 慢速均线周期        ('stop_loss'0.05),  # 止损 5%        ('take_profit'0.15), # 止盈 15%    )    def __init__(self):        # 计算双均线指标        self.ma_fast = bt.indicators.SimpleMovingAverage(            self.data.close, period=self.params.fast_ma        )        self.ma_slow = bt.indicators.SimpleMovingAverage(            self.data.close, period=self.params.slow_ma        )        self.crossover = bt.indicators.CrossOver(self.ma_fast, self.ma_slow)        # 跟踪订单状态        self.order = None        self.buy_price = None    def next(self):        # 如果有挂单未成交,跳过        if self.order:            return        # ---- 买入逻辑:MA5 上穿 MA20 ----        if self.crossover > 0 and not self.position:            # 计算买入数量:30% 仓位            size = int((self.broker.getvalue() * 0.30) / self.data.close[0])            if size > 0:                self.buy_price = self.data.close[0]                self.order = self.buy(size=size)                print(ff"[买入] 日期:{self.data.datetime.date(0)} | 价格:{self.buy_price:.2f} | 数量:{size}")        # ---- 卖出逻辑:MA5 下穿 MA20 ----        elif self.crossover < 0 and self.position:            self.order = self.sell(size=self.position.size)            print(ff"[卖出] 日期:{self.data.datetime.date(0)} | 价格:{self.data.close[0]:.2f} | 原因:死叉")        # ---- 止损/止盈逻辑 ----        if self.position and self.buy_price:            pnl_ratio = (self.data.close[0] - self.buy_price) / self.buy_price            if pnl_ratio <= -self.params.stop_loss:                self.order = self.sell(size=self.position.size)                print(ff"[止损] 日期:{self.data.datetime.date(0)} | 亏损:{pnl_ratio*100:.1f}%")            elif pnl_ratio >= self.params.take_profit:                self.order = self.sell(size=self.position.size)                print(ff"[止盈] 日期:{self.data.datetime.date(0)} | 盈利:{pnl_ratio*100:.1f}%")    def notify_order(self, order):        if order.status in [order.Completed]:            self.order = None# ============ 3. 回测引擎模块 ============def run_backtest():    """    初始化 Backtrader 引擎,运行回测,输出绩效报告    """    cerebro = bt.Cerebro()    # 添加策略(可同时测试多个策略)    cerebro.addstrategy(MACrossStrategy)    # 设置初始资金和佣金    cerebro.broker.setcash(100000.0)  # 10万元    cerebro.broker.setcommission(commission=0.0003)  # 双边万三佣金    cerebro.broker.set_slippage_perc(0.001)  # 千分之一滑点    # 加载数据(贵州茅台 600519)    df = get_stock_data('600519''20220101''20241231')    data_feed = bt.feeds.PandasData(dataname=df)    cerebro.adddata(data_feed)    # 添加分析器:绩效指标    cerebro.addanalyzer(bt.analyzers.SharpeRatio, _name='sharpe', riskfreerate=0.03)    cerebro.addanalyzer(bt.analyzers.DrawDown, _name='drawdown')    cerebro.addanalyzer(bt.analyzers.Returns, _name='returns')    cerebro.addanalyzer(bt.analyzers.TradeAnalyzer, _name='trades')    # 设置图表样式    cerebro.addwriter(bt.WriterFile, csv=True, outfile="backtest_result.csv")    # 运行回测    print("\n" + "="*50)    print("回测开始...")    strategies = cerebro.run()    strategy = strategies[0]    # 提取绩效指标    final_value = cerebro.broker.getvalue()    initial_cash = 100000.0    total_return = (final_value - initial_cash) / initial_cash * 100    sharpe_ratio = strategy.analyzers.sharpe.get_analysis().get('sharperatio'None)    max_dd = strategy.analyzers.drawdown.get_analysis().get('max', {}).get('drawdown'0)    total_return_annual = strategy.analyzers.returns.get_analysis().get('rtot'0) * 100    # 交易统计    trade_stats = strategy.analyzers.trades.get_analysis()    total_trades = trade_stats.get('total', {}).get('total'0)    won_trades = trade_stats.get('won', {}).get('total'0)    lost_trades = trade_stats.get('lost', {}).get('total'0)    win_rate = (won_trades / total_trades * 100if total_trades > 0 else 0    # 打印绩效报告    print("="*50)    print("📊 回测绩效报告(贵州茅台 MA 双均线策略 2022-2024)")    print("="*50)    print(ff"  初始资金:      ¥{initial_cash:,.2f}")    print(ff"  最终净值:      ¥{final_value:,.2f}")    print(ff"  总收益率:      {total_return:.2f}%")    print(ff"  年化收益率:    {total_return_annual:.2f}%")    print(ff"  夏普比率:      {sharpe_ratio:.3f}" if sharpe_ratio else "  夏普比率:      N/A")    print(ff"  最大回撤:      {max_dd:.2f}%")    print(ff"  总交易次数:    {total_trades}")    print(ff"  盈利次数:      {won_trades}")    print(ff"  亏损次数:      {lost_trades}")    print(ff"  胜率:          {win_rate:.1f}%")    print("="*50)    print(ff"最终账户余额:¥{final_value:,.2f}(手续费和滑点已扣除)")    # 绘制图表并保存    cerebro.plot(style='candlestick', barup='#26a69a', bardown='#ef5350',                 volume=False, figsize=(168))    print("\n策略图表已保存为 backtest_chart.png")# ============ 4. 主程序入口 ============if __name__ == "__main__":    run_backtest()
🤖 如何用 Cursor/Claude Code 获得这段代码
在 Cursor 中新建 ma_cross_strategy.py 文件,打开 Composer(Ctrl/Cmd + I), 将上述 Prompt 模板 A 粘贴进去,AI 将在几秒内生成完整代码。 如果代码有报错,把错误信息粘贴回去让 AI 修复,通常 1~2 轮即可运行通过。
⚙️ STEP 4:安装依赖 & 一键运行

📌 安装依赖(Terminal / PowerShell)

💻 Shell终端命令
# 创建独立 Python 环境(推荐)python -m venv venv.\venv\Scripts\activate   # Windows# source venv/bin/activate   # macOS/Linux# 一键安装所有依赖pip install backtrader akshare matplotlib pandas numpy# 验证安装python -c "import backtrader, akshare; print('✅ 依赖安装成功')"

📌 运行回测

🐍 Shell运行策略
# 运行双均线策略回测
python ma_cross_strategy.py
✅ 预期输出示例
正在获取 600519 历史数据...数据获取成功,共 730 条日线数据==================================================📊 回测绩效报告(贵州茅台 MA 双均线策略 2022-2024)==================================================初始资金: ¥100,000.00最终净值: ¥128,450.30总收益率: 28.45%年化收益率: 9.48%夏普比率: 0.852最大回撤: 18.32%总交易次数: 12盈利次数: 8亏损次数: 4胜率: 66.7%==================================================最终账户余额:¥128,450.30(手续费和滑点已扣除)
🛡️ STEP 5:AI 帮你增强风控模块(扩展代码)
💡 为什么需要风控模块
原始策略只有"止损5%+止盈15%"还不够。 AI 可以帮你快速添加:总账户止损(单日亏损2%强停)、 仓位上限(最多持有3只票)、 波动率过滤(市场波动过大时空仓)。
🐍 Pythonrisk_manager.py
# -*- coding: utf-8 -*-"""风控增强模块 — 由 AI 根据风控需求自动生成功能:账户总止损 | 单日最大亏损 | 最大持仓限制 | 波动率过滤用法:将此类混入(mixin)到现有策略,或直接替换 MACrossStrategy"""class RiskManager:    """    风控管理器 — 独立模块,可叠加到任意策略    """    params = (        ('max_daily_loss_pct'0.02),   # 单日最大亏损 2% 时停止交易        ('max_portfolio_loss'0.10),  # 账户总回撤超 10% 时清仓        ('max_positions'3),            # 最多同时持仓 3 只        ('volatility_threshold'0.03), # 日波动率超过 3% 时不新开仓        ('atr_stop_loss'2.0),           # ATR 的 2 倍作为动态止损    )    def __init__(self):        self.daily_pnl = 0.0        self.daily_start_value = None        self.peak_value = None  # 历史最高净值        self.trading_stopped = False        self.current_date = None        self.atr = bt.indicators.ATR(self.data, period=14)  # ATR 指标    def next(self):        current_date = self.data.datetime.date(0)        # 每日重置单日盈亏        if self.current_date != current_date:            if self.daily_start_value:                self.daily_pnl = (self.broker.getvalue() - self.daily_start_value) / self.daily_start_value                # 检查单日亏损是否超限                if self.daily_pnl <= -self.params.max_daily_loss_pct:                    self.trading_stopped = True                    self.close_all_positions()                    print(ff"[风控-日损] 日期:{current_date} | 单日亏损:{self.daily_pnl*100:.1f}% | 停止交易")            self.daily_start_value = self.broker.getvalue()            self.current_date = current_date        # 更新历史最高净值,检查账户总回撤        if self.peak_value is None or self.broker.getvalue() > self.peak_value:            self.peak_value = self.broker.getvalue()        else:            drawdown = (self.broker.getvalue() - self.peak_value) / self.peak_value            if drawdown <= -self.params.max_portfolio_loss:                self.trading_stopped = True                self.close_all_positions()                print(ff"[风控-总回撤] 日期:{current_date} | 回撤:{drawdown*100:.1f}% | 清仓止损")        # 波动率过滤:不追高,不在极端波动时开仓        daily_return = self.data.close[0] / self.data.close[-1] - 1        if abs(daily_return) > self.params.volatility_threshold:            # 波动过大时不产生新买入信号(由外部策略判断是否空仓)            pass    def can_open_position(self):        """检查是否可以开新仓位"""        if self.trading_stopped:            return False        if len(self.broker.positions) >= self.params.max_positions:            return False        return True    def get_atr_stop_price(self, entry_price):        """基于 ATR 计算动态止损价格"""        return entry_price - self.params.atr_stop_loss * self.atr[0]    def close_all_positions(self):        """紧急清仓"""        for pos in self.broker.positions.values():            if pos.size != 0:                self.sell(size=abs(pos.size))
🔗 如何将风控模块与主策略结合
最简单的方式是让 AI 帮你合并: "请将 RiskManager 类混入到 MACrossStrategy 中,使风控逻辑自动生效。 当 can_open_position() 返回 False 时,主策略不得开新仓位。" AI 会生成合并后的完整代码。
🚀 STEP 6:模拟盘验证 & 实盘部署路径
阶段工具选择关键动作通过标准
阶段1
 虚拟回测
Backtrader + akshare
3年历史数据验证
夏普>0.8,最大回撤<20%
阶段2
 模拟盘
聚宽/米筐模拟账户
至少跑满3个月
与回测结果偏差<15%
阶段3
 小资金实盘
券商 API / vnpy
使用10%~20%计划资金
连续3个月稳定运行
阶段4
 全量实盘
vnpy / Interactive Brokers
资金全部接入
系统稳定,月度审查

❌ 错误路径

  • 回测收益高 → 直接上全部资金实盘

  • 跳过模拟盘验证阶段

  • 实盘后频繁手动干预策略

  • 出现大回撤后盲目修改参数

  • 不知道策略何时失效就死扛

✅ 正确路径

  • 虚拟回测 → 模拟盘 → 小资金实盘 → 全量

  • 每个阶段设明确的通过/不通过标准

  • 实盘严格遵循策略参数,不手动干预

  • 定期做归因分析(策略收益来源)

  • 设定硬性止损线和策略终止条件

📊 关键回测指标解读:AI 帮你读懂绩效报告
指标含义优秀标准危险信号
夏普比率
每承受一单位风险获得的超额收益
> 1.0 优秀< 0.5
最大回撤
历史上从最高点到最低点的最大跌幅
< 20%> 40%
年化收益率
平均每年的复利收益率
> 15%< 5%
胜率
盈利交易次数 / 总交易次数
40%~60%> 70%(疑似过拟合)
盈亏比
平均盈利 / 平均亏损
> 1.5< 1.0
卡尔马比率
年化收益 / 最大回撤
> 0.5< 0.3
⚠️ 让 AI 帮你做样本外验证
运行完初始回测后,将以下 Prompt 发给 AI: "请将数据切分为 2022-01-01~2023-06-30(样本内) 和 2023-07-01~2024-12-31(样本外), 只用样本内数据优化参数,然后在样本外验证绩效。 如果样本外绩效比样本内下降超过 30%,说明策略可能过拟合。"
✅ 总结:从 0 到跑通策略只需要 4 步
1. 写 Prompt → 用本文的 3 个模板(均线/RSI/多因子)2. AI 生成代码 → Cursor / Claude Code 几秒出结果3. 安装依赖运行 → pip install + python 一键跑通4. 看报告迭代 → AI 帮你解读指标 + 优化策略最关键的一点:不要跳过模拟盘阶段。 再好的策略也要经过 3 个月以上的模拟盘验证,才能建立对策略行为的真正认知。 Vibe Trading 让你快速起步,但持续盈利靠的是对市场的深度理解
🚨 最后提醒
本文所有代码和策略仅作技术学习用途,不构成任何投资建议。 A 股量化实盘涉及合规要求,请务必在使用前了解相关法规和券商 API 使用协议。 量化交易存在亏损风险,请勿投入超出承受能力的资金。
AI + 量化交易实战教程 · 2026年5月 · Cursor/Backtrader 零基础入门指南⚠️ 本文仅作技术分享,不构成任何投资建议。量化交易存在亏损风险,请谨慎对待资金安全。
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-14 08:19:19 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/622305.html
  2. 运行时间 : 0.229550s [ 吞吐率:4.36req/s ] 内存消耗:4,934.90kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=56a58edca9c5017cdf956c008d52c766
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.001062s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001671s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000746s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000682s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001389s ]
  6. SELECT * FROM `set` [ RunTime:0.000589s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001501s ]
  8. SELECT * FROM `article` WHERE `id` = 622305 LIMIT 1 [ RunTime:0.001186s ]
  9. UPDATE `article` SET `lasttime` = 1778717959 WHERE `id` = 622305 [ RunTime:0.005255s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000588s ]
  11. SELECT * FROM `article` WHERE `id` < 622305 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001147s ]
  12. SELECT * FROM `article` WHERE `id` > 622305 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001124s ]
  13. SELECT * FROM `article` WHERE `id` < 622305 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001660s ]
  14. SELECT * FROM `article` WHERE `id` < 622305 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.010918s ]
  15. SELECT * FROM `article` WHERE `id` < 622305 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.007884s ]
0.233762s