如果是这样,请描述一下你的经验:
- 开发难易度 - 佣金 - 沙盒环境等
据我所知,TradeStation 是最著名的交易软件。其他大部分交易软件提供API(如NinjaTrader、MetaStock等)。另外,有自动化交易系统比赛 - 可以看这里。
此外,交易所和经纪人都必须支持自动化交易。我了解的大多数交易所在未经事先允许的情况下是不允许自动化交易的。
有许多经纪人可以为您提供API访问权限,使您可以进行交易。显然,您将支付佣金以及买卖价差,这可能比直接市场的价差更大。它们在允许您交易的工具类型方面也会有所不同。
如果您想要一种简单的方式,可以使用预包装软件,例如Tradestation(糟糕的专有语言)、NinjaTrader(稍微好一些,基于C#)或SmartQuant(更好,基于C#)。这些通常具有与执行交易的多个经纪公司的预构建接口。InteractiveBrokers也具有直接的API,但他们的声誉是令人头疼的。
我建议检查其他论坛,例如EliteTrader,该论坛拥有大量关于不同经纪公司相对优点的信息。那里也有很多人通过API进行交易。
大多数电子证券交易所不提供API,而是提供消息规范。要让它们接受您的消息(即直接与它们进行交易),您将不得不花费大量资金并成为交易所的会员 - 这就是IB所做的。即使是实时市场数据源(您需要以合理的方式进行交易),也可能非常昂贵。
这与我几年前提出的一个问题类似: 在线经纪商提供API的有哪些?
我建议研究一下交互经纪商,这是我最终选择的经纪商。他们的API支持包括Java、C++、ActiveX和Excel的DDE在内的多种语言。你可以通过API有效地完成几乎所有你可以使用其相当强大的交易平台所能做的事情。
作为仅仅是一个经纪商,很难击败IB的低手续费(我的大部分订单都太低了,以至于它们被舍入到每个订单的1美元最低佣金)。再加上一个相当简单的API,它就难以被击败。
此外,还可以查看我之前提出的问题(链接在上面,也可在这里),以获取更多关于提供API的经纪商的信息。
我刚开始尝试使用TradeKing的API。它很简单,使用oauth。$5的交易佣金也还不错。
E-trade也有一个API,但是你需要经过一些步骤才能获得生产环境的访问权。他们还通过Comet接口提供实时流媒体服务。似乎没有任何关于etrade的库,除了etrade所提供的Java库。
我认为这是最新的一个,它有在线IDE/调试器/可视化工具,并且可以与交互式经纪人进行模拟交易和实盘交易。此外,这个平台还有一个非常好的研发社区。
联系你所需要交易的证券交易所,获取交易API和测试服务器。如果你所需要的证券交易所在OMX平台上,你将会获得X-Stream API(未经管理的C++)和文档。