3、套利工具准备:交易软件选择、数据源获取(Wind/Choice/Tushare)、API接口基础

做期现套利,说白了就是两件事:看准价差快速下单

看准价差需要数据,快速下单需要工具。这一章,我就带你把这些家伙事儿都备齐了。

我个人习惯是,先把数据源搞定,再选交易软件。因为数据是子弹,软件是枪。没子弹,枪再好也白搭。

3.1 交易软件怎么选?

市面上的交易软件五花八门,但真正适合做期现套利的,其实就那么几款。我挑几个常用的说说。

软件名称 适用场景 我的评价
文华财经(WH6/WH8) 期货手动交易、简单套利 上手快,适合新手。但量化功能偏弱
交易开拓者(TB) 期货程序化交易 策略回测强,但学习曲线陡
掘金量化(GM) 多市场、多品种套利 支持Python,我比较常用
自研系统(CTP直连) 高频、极速套利 延迟最低,但开发成本高
我的建议:如果你刚开始做,先用文华或者TB把逻辑跑通。别一上来就搞自研,容易把自己搞崩。我曾经有个朋友,花了三个月写交易系统,结果策略还没跑通,行情已经走完了。

嗯,这里要注意一点:交易软件的核心是速度。期现套利赚的就是价差回归的那点钱,有时候就几个tick。你下单慢一秒,可能就被别人抢走了。

3.2 数据源:Wind、Choice、Tushare

数据是套利的基础。没有数据,你就像瞎子摸象。我常用的数据源有三个,各有千秋。

3.2.1 Wind(万得)

金融圈的标配。数据全、更新快、接口稳定。但价格也贵,一年几万块。适合机构用户。

我个人习惯用Wind的Excel插件做快速分析,用Python API做批量处理。

Wind Python API示例:
from WindPy import w
w.start()

# 获取IF主力合约的行情
data = w.wsq("IF00.CFE", "rt_last,rt_vol")
print(data)

3.2.2 Choice(东方财富)

性价比高。数据质量不错,价格只有Wind的三分之一。适合中小团队和个人。

Choice的Python接口叫ChoiceData,用法和Wind类似。如果你预算有限,选Choice没错。

避坑指南:我曾经用Choice拉历史数据时,发现某些合约的复权因子有误。所以,任何数据源都要做交叉验证。别盲目相信。

3.2.3 Tushare(开源)

免费、开源、社区活跃。适合个人学习和策略验证。但数据延迟较高,不适合实盘。

Tushare的接口很友好,用Python调一下就行。

import tushare as ts
pro = ts.pro_api('你的token')

# 获取沪深300指数成分股
df = pro.index_weight(index_code='000300.SH', start_date='20240101')
print(df.head())

你想想看,三个数据源怎么选?我的建议是:学习用Tushare,研究用Choice,实盘用Wind。这样成本最低,效果最好。

3.3 API接口基础

API,说白了就是让程序帮你干活。你写一段代码,告诉它「去把数据拿过来」,它就乖乖去做了。

做期现套利,你至少需要掌握两个API:行情API交易API

3.3.1 行情API

用来获取实时价格、历史数据。比如上面提到的Wind、Tushare都属于行情API。

我个人习惯用WebSocket做实时行情,用REST API做历史数据拉取。为什么?因为WebSocket是长连接,延迟低;REST是一次性请求,适合批量。

3.3.2 交易API

用来下单、撤单、查持仓。国内期货最常用的是CTP(综合交易平台)接口。

CTP是上期技术开发的,几乎所有期货公司都支持。但它的接口是C++写的,对Python不太友好。不过别担心,有封装好的Python版本,比如vnpyctp-python

CTP交易API示例(Python封装版):
from vnpy_ctp import CtpGateway

gateway = CtpGateway()
gateway.connect(
    address="tcp://180.168.146.187:10130",
    broker="9999",
    userid="你的账号",
    password="你的密码"
)

# 下单
gateway.send_order(
    symbol="IF2406",
    direction="long",
    price=3500.0,
    volume=1
)
警告:CTP接口的交易密码资金密码是分开的。我第一次用的时候搞混了,结果账户被锁了半小时。嗯,别问我怎么知道的。

3.4 实战中的工具组合

说了这么多,到底怎么搭?我分享一个我常用的组合:

  1. 数据源:Wind(实盘)+ Tushare(回测)
  2. 行情推送:WebSocket直连期货公司
  3. 交易执行:CTP接口 + 自研Python脚本
  4. 监控界面:Grafana + InfluxDB(可视化价差)

这个组合的好处是:数据准、速度快、可视化好。我用了两年多,没出过大问题。

小技巧:如果你不想自己搭监控,可以用掘金量化或者文华的套利界面。虽然灵活性差一点,但胜在省事。

3.5 本章小结

工具这东西,够用就行。别追求最贵、最全的。我见过有人买了五六个数据源,结果策略没跑通,光数据费就花了好几万。

记住:工具是为你服务的,不是让你伺候它的。先把最简单的组合跑起来,再慢慢优化。

下一章,我们开始讲真正的核心——价差计算与套利信号识别。到时候,这些工具就派上用场了。