
使用IB(盈透证券)的那些年
文章平均质量分 68
这个专栏主要是记录我使用Interactive Brokers(盈透证券)过程中了解到的知识、经验和技巧。
优惠券已抵扣
余额抵扣
还需支付
¥99.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
云金杞
量化研究员\CTA量化基金经理,金融硕士,CIIA,CFP,FRM,CFA,擅长使用python进行数据分析和建模,熟练使用backtrader、tbquant等量化平台。
展开
-
使用IB的那些年---初衷
这个专栏主要是记录我使用Interactive Brokers(盈透证券)过程中了解到的知识、经验和技巧。 很早之前就了解到IB,第一次实际接触是在2018年,当时做外汇交易的时候需要从IB和oanda中选择一个平台,就简单研究了下IB和oanda在外汇上交易的优势和劣势。对于中小客户来说,相对来说还是oanda的交易成本更少一些;对于大客户来说,IB的交易成本更少一些;所以,当时选择了oanda做外汇交易。可惜,因为政策原因,目前,中国境内的客户,应该是不能在oanda上进行交易了;另外使用过程中原创 2021-12-05 15:41:56 · 1387 阅读 · 0 评论 -
【TWS API 问题4】如何从IB中下载外汇、数字货币、股票、期货、期权的历史K线数据?
6. 打开tws,登录账号,然后在文件/全局配置/API/设置/启用ActiveX和套接客户端,选择这个,注意下面套接字端口号,一般模拟账号是7497,实盘账号是7496,这个在获取数据的时候,会使用到。下面就是具体的代码了,运行这些代码可以下载2个外汇和2个数字货币的数据,如果订阅了具体的数据源,可以下载股票、期货和期权的数据。注:这些代码中我调整了很多的不符合pep8规范的格式,仅仅测试了下载数据是没有问题的,如果用于下单,交易之类的,需要自行进行测试,实盘交易的时候盈亏自负。原创 2023-11-25 12:50:10 · 1391 阅读 · 0 评论 -
【TWS API 问题3】盈透证券的TWS API使用过程中如何实现一个订单成交之后自动取消其他的订单?
完成一个组订单会导致取消剩余的组订单,而部分完成会导致组重新平衡。OCA订单组允许投资者在指定的目标水平输入价格,如果一个完成,其他两个将自动取消。或者,投资者可能希望在下跌的市场中持有eMini标准普尔指数期货的多头头寸,或者以更优惠的价格出售美国国债期货。使用OCA订单类型对两个订单进行分组为投资者提供了两次进入类似头寸的机会,同时只冒着承担单个头寸的风险。请问在陆续所下的n个定单中之一被触发执行后,⚠️在保留该订单子订单不被取消的前提下⚠️,如何快速取消其他全部订单呢?原创 2022-09-18 15:27:05 · 1135 阅读 · 0 评论 -
【TWS API 问题2】如何用盈透证券的TWS API持续获取5分钟K线的问题?
这种方法和订阅5秒钟K线合成更大周期的K线具有类似之处,但是实际运行起来,更加的精确一些,时间误差可能只差一个250ms这样的间隔。这是相对简单,也是比较low的一种方式,计算具体的时间,每隔5分钟调用一下最新的历史的K线数据,这样做,实现起来比较简单,但是也有一些需要注意的问题,比如本地时间和服务器时间的差距,程序运行的速度,获取数据的速度等问题。由于IB上订阅的5秒钟K线是实时推送的,每隔5秒钟来一次,这样可以把过去5分钟的5秒钟K线数据合成一个5分钟的K线数据进行使用。方法一:定时调用K线。原创 2022-09-18 15:20:03 · 1460 阅读 · 0 评论 -
【TWS API问题1】在代码中设置contract之后获取相关信息或者下单的时候,报错200,怎么办
如果在使用TWS API 的过程中出现了错误代码,建议就先去官网上查找下错误代码的解释网址如下这个案例中,设置contract是按照我原先的文章:【TWS API使用教程3】—如何使用TWS API从盈透证券中设置contract及获取contract的信息?中的一些代码片段来设置合约的,举例说明,contract设置如下contract = Contract()contract.symbol = "ES"contract.secType = "FUT"contract.exchange =原创 2022-04-20 22:23:09 · 957 阅读 · 1 评论 -
【TWS API 使用教程8】一个基于TWS API的简单的程序化策略
使用前面的TWS API写成的simpleClient做了一个简单的策略,供大家参考。不要用于实盘,大概率会亏损。from datetime import datetimefrom threading import Threadimport timeimport sys from ibapi.client import EClient, Contractfrom ibapi.order import Orderfrom ibapi.wrapper import EWrapperfrom ib原创 2022-01-03 16:35:36 · 1481 阅读 · 1 评论 -
【TWS API 使用教程7】如何使用TWS API 从盈透证券中筛选满足一定条件的contract?
在 TWS API的官方代码文档中,有一篇介绍如何使用市场扫描仪的文章,在前面的文章中,进行了粗略的翻译:19、TWS API和IB中的市场扫描仪在后续的文章中,有一篇讲解了如何直接在TWS中使用扫描仪获取相应的筛选后的contract【TWS使用系列3】如何使用市场扫描仪找到美国的小市值股票?这篇文章,使用TWS API中的市场扫描仪相关的函数,直接在代码中对contract进行筛选。想要使用扫描仪筛选contract,首先是需要创造一个扫描仪。创造扫描仪相关的代码如下,其实最主要的三个属性值原创 2022-01-02 19:25:03 · 1570 阅读 · 3 评论 -
【TWS API使用教程6】---如何使用TWS API在盈透证券中获取数据?
在关于TWS API的翻译文档中,有两篇讲TWS中的数据的文章,这篇主要讲解如何使用TWS API获取具体的数据。11、TWS和IB中的streaming市场数据13、TWS API和IB中的历史数据在TWS API中获取数据主要通过五个函数,下面将对每个函数进行具体的讲解。注意,有些数据是可以免费获取的,有些数据是需要订阅相应权限的,否则会被拒绝。订阅数据权限的说明,可以参考以前的TWS API的翻译文档。 # Request ten ticks containing midpoint data原创 2021-12-30 23:02:02 · 2857 阅读 · 7 评论 -
【TWS API使用教程5】---如何使用TWS API在盈透证券中下单(place order)、获取订单信息、获取持仓、获取账户汇总信息?
在ibapi的client中,有一个placeOrder的函数用于下单,每次下单调用这个函数即可,这个函数很长,对于ibapi底层不感兴趣的读者,只需要了解这个函数是怎么使用的即可。def placeOrder(self, orderId:OrderId , contract:Contract, order:Order): """Call this function to place an order. The order status will be returned b原创 2021-12-26 13:21:10 · 1430 阅读 · 0 评论 -
【TWS API使用教程4】---如何使用TWS API在盈透证券中设置order?
在原先对TWS API翻译的文章中,有两篇是专门讲解各种类型的order的,讲解的非常全,但是难懂,适合作为参考文献经常查漏补缺,而不适合作为一个教程。8、IB和TWS API中的一些基本order9、IB和TWS API中的一些高级order如何设置order在TWS API中,order是一个order类的一个实例,使用的时候,首先从ibapi.order中import Orderfrom ibapi.order import Order然后对Order类进行初始化,形成一个实例,然后设置具原创 2021-12-25 21:58:03 · 709 阅读 · 0 评论 -
【TWS API使用教程3】---如何使用TWS API从盈透证券中设置contract及获取contract的信息?
在原先的文章7、TWS API和IB中的金融工具介绍详细翻译了TWS API中如何设置一个contract,用于获取数据、下单等操作,以及如何查找contract。本文尝试在应用层面上,来看看如何设置和查找contract。在上一篇文章中,【TWS API使用教程2】—如何使用 TWS API在ubuntu和windows上分别设置contract、获取contract详细信息、设置order、下单、获取持仓信息、获取账户信息,对常用的一些操作进行了整合,如果上篇文章的代码没有问题,接下来就重点介绍如何设原创 2021-12-25 12:39:04 · 12660 阅读 · 0 评论 -
【TWS API使用教程2】---如何使用 TWS API在ubuntu和windows上分别设置contract、获取contract详细信息、设置order、下单、获取持仓信息、获取账户信息
这个是接下来几篇文章的汇总,先提供代码,大家尝试运行之后,没有问题了,再详细了解下,这些代码究竟有什么意义。在测试的过程中,发现同样的代码,在ubuntu上和在windows上表现是不一样的具体就是在windows上,基本上每两秒都会断联一次,导致运行的过程中,需要经常重新连接之后才能使用,这可能是python某些包在windows或者ubuntu上表现不一样导致的。在windows上下单会运行成功,但是不会报给TWS,可能是TWS哪里设置有问题。在ubuntu上下单是正常的。晚上回家了,尝试在原创 2021-12-23 17:02:54 · 2064 阅读 · 0 评论 -
【TWS API使用教程1】---如何在自己创建的client和TWS之间创建一个连接,并请求当前的时间
原先翻译了最开始的TWS API的文档,官方对TWS API的讲解是相当全的,但是就是有些太官方了,不太容易理解。最近阅读Matthew Scarpino的《Algorithmic Trading with Interactive Brokers:Python and C++》,尝试按照这本书里面的逻辑,对TWS API再做一次梳理,以便能够增加理解。作为教程的第一篇文章,就尝试实现两个最基本的功能,创建连接和请求当前的时间。我相信,看这篇教程之前,您一定安装好了TWS 和 TWS API,并进行了相关原创 2021-12-23 11:48:23 · 4178 阅读 · 4 评论 -
【TWS使用系列3】如何使用市场扫描仪找到美国的小市值股票?
很多时候,我们需要对市场上各种各样的交易品种进行初步筛选,选出某些能够满足我们需求的交易品种,本文尝试使用市场扫描仪功能,选择一些我们想要的交易品种。TWS的市场扫描仪,提供了一些基本的筛选交易品种的功能。在监控界面中,点击右面的一个小加号,可以弹出几个选项,其中有一个就是魔方市场扫描仪,点击就会蹦出下面的页面,选择创建一个新的扫描仪,输入小市值股票筛选集合,选择美国的股票进行筛选根据筛选条件进行筛选点击完成,这样就筛选出来了想要的小市值股票。但是比较遗憾的就是,按照现在的条件筛选出来的小市原创 2021-12-22 17:15:51 · 633 阅读 · 2 评论 -
【TWS使用系列2】如何通过TWS下单及查看账户盈亏
在左上角,提供了一个下单的功能在订单输入中,可以选择具体交易哪个品种,最下面是一个买卖方向,可以决定是买还是卖中间有一个数量,是买卖多少量再后面有几个订单类型的选项,比如市价单MKT、限价单LMT最中间显示的是当前bid和ask的价格再然后就是一个订单的有效期,默认是day,应该是当日有效最右边是一个提交功能,点击就可以提交了举例说明,我想要市价买入USD/JPY,25000的数量,立即提交生效的话,点击下图中的提交的话,立马就会生效了可以在左下面的窗口中,查看当前的持仓,发现我现在原创 2021-12-22 16:53:32 · 656 阅读 · 0 评论 -
【TWS使用系列1】如何从TWS的自选列表中添加/删除自选股?
首先,选择想要添加的自选股的代码,这里选一些中概股吧中概股代码链接:http://www.wstock.net/wstock/us_cn.htm其次,找到右边中间的地方,有监控、投资组合、收藏等,找到其中没有交易品种的一行点击,让其状态改变,然后输入代码,尝试输入新浪的代码,SINA,点击enter,之后会根据代码,出现各种不同的情况,有的只出现一个股票,有的会出现很多的交易品种,比如股票、基金、指数等,如果代码输错了,有可能一个也不会出现。新浪的代码SINA只有新浪股票这一个,可以点击一下这个股票原创 2021-12-22 16:31:16 · 1393 阅读 · 0 评论 -
21、TWS API和IB中的新闻和公告
新闻API 新闻需要特定于 API 的新闻订阅;TWS 中的大多数新闻服务在 API 中也不可用。从TWS v966开始,默认情况下,帐户中启用了三个API新闻服务,并且可以从API获得。它们是:Briefing.com 一般市场专栏 (BRFG)Briefing.com 分析师行动 (BRFUPDN)道琼斯时事通讯 (DJNL)所有TWS版本还提供四项额外的新闻服务,这些服务需要首先在帐户管理中进行特定的API订阅。它们的数据费用与仅在TWS中订阅相同新闻的数据费用不同。与所有订阅一样,它们原创 2021-12-05 20:03:20 · 470 阅读 · 0 评论 -
20、TWS API和IB中的显示组
显示组显示组功能允许API客户端与TWS颜色分组窗口集成。TWS 颜色分组窗口由 TWS 中的彩色链标识,并通过 API 由整数标识。目前,该数字的范围从1到7,并映射到特定的颜色,如TWS所示。查询显示组IBApi.EClient.queryDisplayGroups方法用于请求 TWS 中所有可用的显示组。 self.queryDisplayGroups(19001)IBApi.EWrapper.displayGroupList是对IBApi.EClient.queryDisplayGro原创 2021-12-05 20:01:03 · 256 阅读 · 0 评论 -
19、TWS API和IB中的市场扫描仪
市场扫描仪TWS Advanced Market [Scanner](https://www.interactivebrokers.com/en/software/webtrader/webtrader/marketscanners/market scanners.htm)中的某些扫描可以从TWS API通过IBApi.EClient.reqScannerSubscription访问。self.reqScannerSubscription(7001, ScannerSubscriptionSamples原创 2021-12-05 19:57:01 · 504 阅读 · 0 评论 -
18、TWS和IB中的错误处理信息
错误处理当客户端应用程序向TWS发送消息时,需要具有预期响应的响应(即下订单,请求市场数据,订阅帐户更新等),TWS几乎总是**1)响应相关数据或2)**向IBApi::EWrapper::error发送错误消息。**可能发生无响应的异常:*如果在TWS v972之前的竞争会话期间(当模拟用户在与关联的实时用户同时登录不同的计算机上时)发出市场数据请求,则TWS不会返回消息。此外,如果在完全建立连接之前发出请求(由返回的 2104 或 2106 错误代码"数据服务器正常"*表示),则可能没有来自请求的原创 2021-12-05 19:55:07 · 800 阅读 · 0 评论 -
17、TWS API和IB中的财务顾问
财务顾问分配方法和组财务顾问和IBroker账户结构提供了许多方法和配置文件,以指定交易应如何分布在多个账户中。此功能允许在多个账户之间进行交易。该 API 具有与 TWS 相同的可用功能。财务顾问账户的组和配置文件订单分配方法可以直接在TWS:分配和转移中创建,也可以通过API直接使用IBApi.EClient.replaceFA()方法。根据以下方法名称的建议,一个集团将根据固有属性(例如账户的清算价值或净值)分配订单,而配置文件将提供根据明确比率或百分比在各个不同账户之间分配比例的可能性。但原创 2021-12-05 19:53:08 · 3865 阅读 · 0 评论 -
16、TWS API和IB中关于数字货币的操作
加密货币从TWS v10.10和TWS API v10.10开始,添加了对加密货币的支持。加密货币支持历史数据,流式市场数据和订单下达。加密货币交易许可由于加密货币是现有账户的新内容,用户必须通过客户门户>设置>账户设置>交易体验和权限"来请求加密货币交易许可。加密货币没有市场数据订阅要求。协定定义示例请注意,对于所有加密货币合约,该交易所应为**“PAXOS”。**contract = Contract();contract.symbol = "ETH";contrac原创 2021-12-05 19:50:52 · 2531 阅读 · 0 评论 -
15、TWS API和IB中的期权相关的操作
Option Chains给定证券的Option Chains可以使用函数 reqContractDetails 返回。如果期权合约的定义不完整(例如行使价未定义)并用作 IBApi::EClient::reqContractDetails的参数,则将返回所有匹配期权合约的列表。下面的例子显示了一个"不完整"的期权IBApi.Contract ,没有最后一个交易日,行使价也没有定义乘数。在大多数情况下,使用这种合约会导致合约歧义错误,因为有很多工具与相同的描述相匹配。IBApi.EClient.reqC原创 2021-12-05 19:49:06 · 5484 阅读 · 0 评论 -
14、TWS API和IB中的账户和投资组合数据
账户和投资组合数据TWS通过其账户和投资组合窗口提供您的账户和投资组合的全面概述。此信息可以使用 TWS API 通过三种不同类型的请求/操作获得:Managed Accounts单个用户名可以处理多个帐户。如"连接"部分所述,一旦建立连接,TWS 将自动发送管理帐户列表。该列表也可以通过IBApi.EClient.reqManagedAccts方法获取:self.reqManagedAccts()以上内容将导致通过IBApi.EWrapper.managedAccounts交付的以逗号分隔的帐户原创 2021-12-05 19:46:45 · 393 阅读 · 0 评论 -
13、TWS API和IB中的历史数据
历史市场数据从 API 接收历史数据与接收流式处理顶级实时数据实时市场数据具有相同的市场数据订阅要求。API历史数据功能从TWS图表或历史Time&Sales 窗口中提取某些类型的数据。因此,如果TWS图表中特定工具、数据类型或周期的数据不可用,则API也无法提供这些数据。与TWS不同,TWS可以为大多数工具创建"延迟图表",而无需任何市场数据订阅,其数据在当前时刻前10-15分钟之前;API 始终需要 Level 1流式处理实时数据来返回历史数据。通常,smart-routed历史数据请求将原创 2021-12-05 19:44:20 · 8323 阅读 · 2 评论 -
12、TWS API和IB中的订单管理
Order ManagementPlacing Orders下一个有效标识符也许在成功连接到TWS后收到的最重要的事件是IBApi.EWrapper.nextValidId,它也在调用IBApi.EClient.reqIds方法后触发。顾名思义,nextValidId 事件提供下订单所需的下一个有效标识符。此标识符只不过是序列中的下一个数字。这意味着,如果有单个客户端应用程序向帐户提交订单,则不必在每次需要提交新订单时都获取新的有效标识符。将从 nextValidId 方法接收的最后一个值增加一个就足原创 2021-12-05 19:41:59 · 944 阅读 · 0 评论 -
11、TWS和IB中的streaming市场数据
流媒体市场数据可以从TWS获取不同类型的市场数据:顶级市场数据(一级)市场深度(二级)5 秒实时K线实时市场数据为了从 API 接收实时的顶级、深度或历史市场数据,有必要在TWS中为请求的工具提供实时市场数据订阅。实时数据要求的完整列表:(1)指定品种的交易许可(2)注资账户(外汇和债券除外),以及(3)指定用户名的市场数据订阅要订阅实时市场数据:登录您的账户管理,导航到管理账户 - >交易配置 - >市场数据,然后根据您需要的产品选择您希望订阅的相关软件包和/或订阅。原创 2021-12-05 19:39:54 · 4797 阅读 · 0 评论 -
10、IB和TWS API中一些常见的关于订单的算法
IB算法自适应算法Adaptive Algo将IB的Smartrouting功能与用户定义的优先级设置相结合,以便在执行时进一步的降低成本。使用自适应算法可以比常规的限价单或市价单平均获得更好的执行价格。参数描述值适应性优先级"Priority"选择器决定了扫描获得更好的执行价格所需的时间。"Urgent"设置仅进行短暂扫描,而"Patient"扫描工作速度较慢,并且更有可能为您的订单实现更好的整体成交。Urgent>Normal >PatientbaseO原创 2021-12-05 19:36:24 · 688 阅读 · 0 评论 -
9、IB和TWS API中的一些高级order
高级订单和算法在基础订单类型的基础上,还可以使用下面的高级订单:Hedging对冲订单和一篮子订单比较相似,当使用对冲订单的时候,当主订单被执行之后子订单才会提交。就像在TWS中,对冲订单可以用在外汇交易、贝塔对冲 或者 配对交易中Hedging Orders in TWS以外汇对冲为例,当以基础以外的货币购买合约时,您可以附加外汇订单,将基础货币转换为合约货币,以支付交易成本,这要归功于TWS API的附加订单机制。@staticmethoddef MarketFHedge(parentOr原创 2021-12-05 19:34:26 · 487 阅读 · 2 评论 -
8、IB和TWS API中的一些基本order
通过TWS API,可以定义TWS中已经可用的大多数订单。可用订单1.基本订单Auction(类似于国内的集合竞价)An Auction order 在开市前期间输入电子交易系统,以计算的开盘价(COP)执行。如果您的订单在开盘时未成交,订单将作为限价订单重新提交,限价设置为COP或开市后的最佳买入价/卖出价。 支持的产品: FUT, STK 支持的交易所:Supported exchangesorder = Order()order.action = actio原创 2021-12-05 19:20:19 · 4412 阅读 · 0 评论 -
7、TWS API和IB中的金融工具介绍
金融工具(合约)概述IBApi.Contract 对象表示交易工具,如股票、期货或期权。每次需要合约的新请求(即市场数据、下单等)被发送到TWS时,平台都会尝试将提供的合约对象与单个候选对象进行匹配。如果有多个合约与同一描述匹配,TWS将返回错误,通知您存在歧义。在这些情况下,TWS需要进一步的信息,以将与所提供的描述相匹配的合约清单缩小到单个要素。查找合约描述的最佳方法是在TWS本身内。在TWS中,您可以通过双击合约或通过合约信息->描述菜单轻松检查合约的描述,您可以通过右键单击TWS中的合原创 2021-12-05 19:05:23 · 767 阅读 · 0 评论 -
6、TWS API的体系结构和连接
对 API 进行编程 :体系结构EClientSocket 和 EWrapper Classes一旦TWS启动运行并主动监听传入的连接,我们就可以编写代码了。这就把我们带到了TWS API的两个主要类:IBApi.EWrapper接口和IBApi.EClientSocket。实现 EWrapper 接口IBApi.EWrapper接口是 TWS 向 API 客户端应用程序传递信息的机制。通过实现此接口,客户端应用程序将能够接收和处理来自TWS的信息。有关如何实现接口的更多信息,请参阅编程语言的文档。原创 2021-12-05 18:39:04 · 754 阅读 · 0 评论 -
5、TWS API的故障排除和支持
故障排除和支持API 文档包含所有 API 函数的完整描述。此外,API本身的源代码是免费分发的,是更深入地了解API工作原理的重要资源。如果在查看这些资源后仍有关于可用 API 功能的问题,API 支持组可以提供帮助。重要的是要记住,IB无法提供编程帮助或提供有关如何编写自定义应用程序代码的建议。API 组可以查看包含 API 应用程序与 TWS 之间通信记录的日志文件,并提供有关 API 可以提供哪些内容的详细信息。关于从IB系统开始的一般建议:在使用API之前,请熟悉TWS中的类似功能:TW原创 2021-12-05 18:26:23 · 1349 阅读 · 0 评论 -
4、TWS API在Excel中的使用
可以使用的Excel API在windows系统中利用不同的技术手段,可以开发几个API供Excel使用。RTD Server for ExcelDDE Socket Bridge APIActiveX for Excel API重要提醒:示例表格应用程序在API下载的时候可以一块下载,他们只是给第三方的开发者简单展示这些API功能。它们没有强大的错误处理功能,也不打算用作生产级交易工具。提供 Excel API 技术介绍的录制网络研讨会可从 IB 网站获得:录制的 Excel API 网络原创 2021-12-05 18:02:46 · 992 阅读 · 0 评论 -
3、第三方软件中使用TWS API的相关问题
为了使用IB,第三方软件生产商会把TWS API整合到他们自己的平台中。正是由于TWS API的存在,一些知名的平台,比如Ninja Trader 或者 Multicharts可以和TWS进行交互,用于获取市场数据、下单和管理账户、组合的信息。需要额外注意的是,很多的第三方API平台并不是对于所有的IBKR账户结构都兼容的。在开一个特殊的账户类型或者转化一个账户类型之前,先和软件生产商确认下。比如,很多的第三方的平台,如 NinjaTrader and TradeNavigator,不兼容IB连接的账户结原创 2021-12-05 16:17:05 · 692 阅读 · 0 评论 -
2、TWS API接口的使用说明
通过TWS API 可以通过Java, .NET (C#), C++, Python, 或者 DDE 实现程序化交易。序言TWS API 是一个简单但是功能强大的接口,通过它,可以 把我们的交易策略实现自动化交易,可以请求市场数据,可以实时监控我们的账户和投资组合。目标用户TWS API 的目标用户是有经验的专业并且有意愿增强TWS功能的开发者。很遗憾的说,IB不提供任何编程语言的咨询。在希望我们提供API方面的帮助之前,请先参阅我们的可以利用的文档、应用示例、以及我们的博客论坛等网络资源。如何原创 2021-12-05 16:01:02 · 1442 阅读 · 0 评论 -
1、TWS API的相关配置
一、模拟账户注册打开ib的网站,注册一个模拟账户,用于在backtrader上进行模拟交易。二、安装TWS 安装IB的软件TWS,里面有详细的步骤,ubuntu安装之前可能需要安装下面的依赖包。sudo apt-get install -y libcanberra-gtk-module登录之后,API settings里面的内容保持默认就好三、安装ibpy官网上的方法可以参考,但是似乎比较旧了,实际上直接使用下面的命令就可以直接安装pip install IBPy2四、测试TWS原创 2021-12-05 15:47:01 · 2022 阅读 · 0 评论