聚宽第一个策略怎么写?双均线策略手把手教程
摘要:从新建研究环境到跑出第一条回测曲线:初始化、选股、买卖逻辑、下单函数,一个能跑通的最小策略模板。
前置条件
已注册聚宽账号;懂一点点 Python 语法(函数、if、列表)。
手把手操作
1
新建策略:环境与框架
聚宽的策略是一个 Python 文件,核心两段:initialize(context) 只跑一次做初始设置,handle_data(context, data) 每个时间单位跑一次处理逻辑。
在 initialize 里可以设置基准、滑点、手续费,注册定时任务(比如每周一调仓)。
小贴士:先不要追求复杂,能跑通再谈优化。
2
选股与定时调仓
用 run_weekly / run_daily 注册调仓函数,在函数里挑标的。
新手建议从 ETF 入手(如沪深 300 ETF、中证 500 ETF),波动小、规则简单、不用处理停牌退市。
小贴士:ETF 免印花税、不会退市,是新手最友好的标的池。
3
写买卖逻辑(双均线示例)
取 20 日与 60 日均线,短均线上穿长均线买入,下穿卖出。
下单用 order_target_value(标的, 金额) 这类目标持仓函数,比手算股数省事,也自动处理整手。
小贴士:用目标持仓函数,比自己算数量更不容易出错。
4
跑回测与看图
点「编译运行」跑历史区间,重点看:年化、最大回落、交易笔数、换手率。
把手续费与滑点设成贴近真实的值(比如万三、滑点 0.1%~0.2%),否则结果虚高。
小贴士:先看最大回落能不能扛住,再看收益。
新手容易踩的坑
- 用未复权价格算均线 → 除权日出现假信号
- 买卖全仓来回切换 → 换手过高,成本吃光收益
- 参数调到「刚好看」为止 → 典型过拟合
- 忽略涨跌停与停牌 → 回测能成交、实盘成交不了
相关问答
不会 Python 能写策略吗?
至少要能看懂循环、判断、函数调用;网上有大量现成模板可以改参数。完全不想碰代码的话,可以先从别人公开的策略克隆开始看。
为什么我的回测没有交易?
常见原因:选股条件太严筛出空列表、时间区间取在工作日之外、下单函数写在 initialize 里只执行了一次。
回测用多大资金合适?
与你要投的金额接近即可,太小会让一手都买不起、结果失真;ETF 起步按几千到几万测比较贴近实际。
本文用到的链接
- 灵犀Quant 网站:首页 · www.lingxw.com · 登录 / 个人中心
- 一点通(QMT 自动下单脚本)下载:下载中心(登录后免费下载)
- 使用手册:manual.html · 产品定价:pricing.html · 帮助中心:help-center.html