github上不停搜索、clone、测试,大多都是僵尸项目。缝合怪如我,才能集齐这些基本工具包。解放双手,1核1G部署上云就可以。
回测曲线美如画,实盘落地全靠手。今天不讲复杂策略,就演示下 如何用30行代码让策略自动跑起来。
分三步
- 安装基础工具包
pip install jvquant # 人生苦短用Python ,pip包的文档示例:https://pypi.org/project/jvQuant/
- 获取通信令牌 注册后领取免费试用Token(可以无限注册)
- 跑通示例代码 重点调试三个模块:
websocket_client.py 监听实时行情
ctp_client.py 模拟交易下单
sql_client.py 验证智能选股
实时行情自动量化流程图
一般用户入门的三大问题
- 实时行情怎么接?
Tushare的15分钟延迟能跑策略?Wind买不起怎么办?Level2数据是不是机构专属? - 怎么自动执行交易报单?
“涨停板追击”策略总不能让我连续6小时盯盘吧?集合竞价的交易信号如何触发? - 复杂条件如何快速筛选?
想找“30日均线抬头+量比大于3+北向资金连续增持”的标的,难道要自己写爬虫?
大道至简:其实只用一个Python包就可以
github上有很多僵尸包,不再维护,东平西凑很是头疼。其实只要一个pip
工具包,就可以完美地解决所有基础设施问题。核心就三个模块:
▶ 实时行情订阅(关键代码骨架)
# 沪深Level2逐笔行情实时推送示例
from jvquant import websocket_client
def handle_level2(data):
# 这里接入你的策略逻辑
if data['price'] > your_strategy_threshold:
trade_client.buy(data['code']) # 直接联动交易模块
# 启动沪港美三地行情监听
ws = websocket_client.Construct(
market="ab",
token="你的账户",
ab_lv2_handle=handle_level2 # 绑定Level2回调函数
)
ws.add_lv2(["600519","i000001","123034"]) # 可订阅股票/指数/可转债
- 港美A实时行情都有
- Websocket实时推送的,比http轮询更合适
▶ 交易指令报单
# 自动交易示例(支持国内主流券商CTP)
from jvquant import ctp_client
trade_client = ctp_client.Construct(token="令牌", ctp_acc="账户", ctp_pwd="密码")
# 策略触发买入(示例)
trade_client.buy("600519", "贵州茅台", 1750.0, 100)
# 盘后自动清仓逻辑
if signal == "clear_position":
for stock in holdings:
trade_client.sale(stock["code"], stock["name"], stock["price"], stock["qty"])
- 调用接口就可以实现券商的所有功能,ETF、可转债也可以交易,用程序控制T+0交易更合适
▶ 智能数据库救活选股策略
传统方法爬财务数据太痛苦,他们提供的语义查询堪比直接可用的策略:
# 智能选股示例:找"科创板+近3日涨幅>15%+MACD金叉"
result = sql_client.query(
"科创板, 3日涨幅大于15%, MACD金叉",
page=1,
sort_type="涨幅降序"
)
# 输出结果:[{'code':'688111','name':'金山办公','涨幅':17.2%...}]
- 还有很多其他数据库功能,参考链接: 语义分析智能数据库 · 开发文档
这才是散户刚需
- 成本革命
对比动辄数十万的Wind/Polygon,WebSocket行情+Level2年费不到专业方案的零头 - 避免碎片化
不用再拼凑Tushare(数据)+ 掘金(交易)+ 自建数据库(分析),一个pip包全搞定 - 真实场景闭环
从行情解析→策略计算→自动下单→持仓管理
完整链路跑通,这才是量化实操的本质
用这套框架跑了可转债套利策略,核心代码不到200行(包含异常处理)。当看到程序自动抢到涨停板时,突然理解为什么说 “量化本质是手和眼的时间解放”。
阻碍散户的从来不是策略逻辑,而是把想法变成现实的那最后一公里。当你看到策略自动交易成功时,可重复验证的策略也就落地成功了。