2017-02-18 43 views
1

我工作的一个项目,允许用户从两个SEC和对公司使用该公司的股票,股票个股拉出信息(SEC)。查询证券交易Comission使用EDGAR

现在,为了让我能够使用股票代码仅从SEC检索信息,我必须首先查询公司名称的gem stock_quotes,然后检索公司的CIK代码。然而,EDGAR是很好,真正的灾难,当谈到基于其名称的查询业务,它并查询基于CIK的一个更好的工作而已,但目前,没有其他办法从北京时间获得CIK只在TICKER => CIK唯一序列TICKER => COMPANY_NAME => CIK作品的查询序列。

现在,因为埃德加是老了,没有很好地理解,这意味着,对于一些企业,发现使用格式的CIK代码“COMPANY,INC”完美的作品。对于一些公司来说,这是行不通的,我必须删除“INC”才能让Edgar理解。有些公司在他们的名字中有特殊的字符,埃德加不知道该怎么处理,所以他左右抛出错误。

现在,这里有一个例子:

@sec = SecQuery::Entity.find("#{@stock.name}".gsub("INC", "").gsub("COM", "").gsub("USD0.0001", "").gsub("USD0.001", 
    "").gsub("USD0.01", "").gsub("USD0.1", "").gsub("USD1.0", "")) 

现在,我已经达到了一个点,我已经意识到有些公司居然没有包括在他们写的公司名称“INC”。这意味着我必须将“INC”添加到该公司的名称中以便了解我正在寻找哪家公司。

但我无法添加的东西到@stock.name - 有人能帮助我弄清楚如何?

我用尽的

@sec = SecQuery::Entity.find("#{@stock.name}".insert(-1, "INC") 

@sec = SecQuery::Entity.find("#{@stock.name}".concat(" INC") 

@sec = SecQuery::Entity.find("#{@stock.name}".gsub(/$/, ' INC') 

任何帮助不同的变化将是非常有用的。

回答

1

你可以只是做...

@sec = SecQuery :: Entity.find( “#{@ stock.name}” +( “INC”))

+0

哇。那实际上工作。我不知道。谢谢史蒂夫。 – Crashtor