如何从Interactive Brokers获取证券的ISIN?

时间:2017-08-16 10:09:29

标签: python interactive-brokers

我正试图在我的盈透证券投资组合中获取证券的国际证券识别码(ISIN)。

在文档中,我找到了两个地方,提到 ISIN

    {li} secId以及secIdType内的Contract字段:Source {li} secIdList ContractDetails内的<from ib_insync import * ib = IB() ib.connect("127.0.0.1", 4002, 0) for pfi in ib.portfolio(): for detail in ib.reqContractDetails(pfi.contract): print(detail) 字段:Source

    但是我无法通过API来填充这些字段。示例代码:

    ContractDetails(summary=Contract(conId=13181, symbol='AEE', secType='STK', exchange='SMART', primaryExchange='NYSE', currency='USD', localSymbol='AEE', tradingClass='AEE'), marketName='AEE', minTick=0.01, orderTypes='ACTIVETIM,ADJUST,ALERT,ALGO,ALLOC,AON,AVGCOST,BASKET,COND,CONDORDER,DARKONLY,DARKPOLL,DAY,DEACT,DEACTDIS,DEACTEOD,DIS,GAT,GTC,GTD,GTT,HID,IBKRATS,ICE,IMB,IOC,LIT,LMT,LOC,MIT,MKT,MOC,MTL,NGCOMB,NODARK,NONALGO,OCA,OPG,OPGREROUT,PEGBENCH,POSTONLY,PREOPGRTH,REL,RPI,RTH,RTHIGNOPG,SCALE,SCALEODD,SCALERST,SMARTSTG,SNAPMID,SNAPMKT,SNAPREL,STP,STPLMT,SWEEP,TRAIL,TRAILLIT,TRAILLMT,TRAILMIT,WHATIF', validExchanges='SMART,AMEX,NYSE,CBOE,ISE,CHX,ARCA,ISLAND,VWAP,DRCTEDGE,NSX,BEX,BATS,EDGEA,CSFBALGO,JEFFALGO,BYX,IEX,CVGXALGO,PSX', priceMagnifier=1, longName='AMEREN CORP', industry='Utilities', category='Electric', subcategory='Electric-Integrated', timeZoneId='EST5EDT', tradingHours='20170816:0400-2000;20170817:0400-2000', liquidHours='20170816:0930-1600;20170817:0930-1600', mdSizeMultiplier=100)
    

    输出:

    td

    如您所见,上述字段均未填写。您是否知道如何获得ISIN以获得安全性?

1 个答案:

答案 0 :(得分:1)

我每天都在使用 IB API 。因此,我希望使用函数

获得 ISIN

reqFundamentalData

您必须使用4个参数,第三个称为reportType。在这里,您可以选择名为ReportSnapshot的最简单类型。您将收到一个xml - 文件,在第二部分(Common Stock)中,您会找到包含ISIN的行。例如,在AAPL的请求中:

<IssueID Type="ISIN">US0378331005</IssueID>

它并不复杂。如果您需要示例代码,请问我。

更多信息:IB about reqFundamentalDatadocumentation of the function