问题标签 [edgar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
302 浏览

ftp - 生成 EDGAR FTP 文件路径列表

我是编程新手(尽管我愿意学习),所以提前为我的基本问题道歉。

[SEC 通过 FTP 提供所有文件][1],最终,我想批量下载这些文件的一个子集。但是,在创建这样的脚本之前,我需要为这些文件的位置生成一个列表,这些文件遵循以下格式:

/edgar/data/51143/000005114313000007/0000051143-13-000007-index.htm

  • 51143 = 公司 ID,我已经通过 FTP 访问了我需要的公司 ID 列表
  • 000005114313000007/0000051143-13-000007 = 报告 ID,又名“登录号”

我正在努力解决这个问题,因为文档很简单。如果我已经有了000005114313000007/0000051143-13-000007(美国证券交易委员会称之为“入藏号”),那么这很简单。但我正在寻找约 45k 条目,显然需要为给定的CIK ID(我已经拥有)自动生成这些条目。

有没有一种自动化的方法来实现这一点?

0 投票
2 回答
263 浏览

python - Python中的字符串匹配?

我在 Python 中匹配字符串时遇到问题。我要做的是在这样的文档中查找行,尝试将每一行与特定的短语匹配。我正在阅读所有行并将 Beautfiul 汤解析为剥离的字符串,然后遍历文档中所有行的列表。从那里,我使用以下代码来匹配特定的字符串:

当代码运行时,我得到以下输出:

当检查字符串是否相等时,程序永远不会找到它,但是当被问及它的一部分是否在字符串中时,它能够毫无困难地找到它。字符串匹配在 Python 中是如何工作的,这些事件是如何发生的,我该如何修复它以便它能够生成这些精确的短语?

编辑:另一个需要注意的是,这些文档非常大,有的很容易超过 50 页,并且检查字符串是否正好在行中是不够的。它必须是完全匹配的。

0 投票
1 回答
573 浏览

python - 美丽的汤桌刮只刮了一些时间

我正在为使用 BeautifulSoup4 的几家公司从几份包含董事签名的文件中提取一个特定的表格。我的程序在包含表格的部分上方找到一个标题,然后从该位置向下计数两个表格以找到正确的表格(文件是政府文件意味着该格式几乎在所有情况下都适用)。目前,这就是我的做法:

使用此代码,我可以找到大约 70% 的搜索表,但有些只是抛出错误。例如,此文档是找不到表的文档之一(您可以通过对 re.compile 字符串执行 CTRL+F 来找到文档中的部分),但是此文档来自同一家公司,看起来像相同的 HTML 格式会产生积极的结果。

有任何想法吗?

编辑:   可能是一个问题,但还有另一个问题。将搜索字符串缩短为不包含   仍然会导致失败。

EDIT2:似乎有时会发生潜在的错误。我尝试打印出 HTML 数据变量并得到以下信息:

有什么办法可以解决这个问题,同时仍然删除  ?

编辑2:下面的答案确实解决了我遇到的问题,所以我将其标记为已回答。也就是说,字符串中存在随机换行符的另一个潜在问题,因此我修改了我的正则表达式以检查所有单词之间的 '\s+' 而不仅仅是空格。如果遇到此类问题,请务必检查此错误的 HTML 代码。

0 投票
1 回答
337 浏览

xml - 使用 VBA 读取 XML:列出所有出现的标记,包括 contextRef

我是 VBA 和 XML 的新手,非常感谢您的帮助。我有以下代码:

这将访问 SEC 的 Edgar 数据库中的特定 XML 表,并将定义的标签(“us-gaap:GrossProfit”)的值写入 Excel 字段 A1。

但是,此标记可能在此 XML 文件中以不同的值出现多次。我需要的是这些事件中的每一个都被打印到一个excel表中,包括“contextRef”的值和值。

您能否修改我的代码以使其正常工作?非常感谢。

0 投票
0 回答
159 浏览

r - 从R中的URL字符串下载.txt

我正在使用 R 中的 EDGAR 包下载 Apple 的 2005 年年度报告。这是我能做到这一点的代码:

这是我这样做时的输出:

对我来说,这看起来就像我只是检索到这个特定文档的 URL,我实际上并没有下载文本文件。

我想我的下一步是根据 URL 下载文件。我认为使用 AAPL 作为我的 URL 参数来做一个 download.file 是可行的,但我必须遗漏一些东西。

关于如何根据 URL 下载完整文档的想法?谢谢

0 投票
1 回答
582 浏览

r - 每次获取文件时都提示“是”

我将使用 EDGAR 包在 R 中为几家公司下载 2005 10-Ks。我有一个迷你循环来测试哪个有效:

但是,每次运行时,我都会收到是/否提示,我必须输入“是”:

如何提示 R 为每次运行回答“是”?谢谢

0 投票
0 回答
611 浏览

r - 为每个公司下载 10-k,按 SIC 代码分组

我正在使用 R 中的 EDGAR 库来下载所有 2005 10-Ks。下面的代码将提示“是”为我的循环中的每个 CIK 下载 10-K。(h/t to Weihuang Wong 协助我解决这个问题。)

我已经下载了这个映射器并将其加载到 R 中。它为我提供了每个 CIK 代码的 SIC 行业#。

在按 SIC 代码对它们进行分组的同时,如何扩展我的代码以为此列表中的每个 CIK 查找 10-K?我尝试定义 CIK 和 SIC 并创建一个矩阵,但不确定如何使我的维度动态化以获取我将获得的 SIC 代码的数量。

0 投票
1 回答
226 浏览

ruby-on-rails - 使用 EDGAR 查询证券交易委员会 (SEC)

我正在开发一个项目,该项目允许用户使用公司的股票代码从 SEC 和公司交易股票中提取信息。

现在,为了让我能够仅使用股票代码从 SEC 检索信息,我必须首先在 gemstock_quotes中查询公司名称,然后检索公司的CIK 代码。但是,EDGAR 在根据名称查询企业时确实是一场灾难,它在仅基于 CIK 的查询方面做得更好,但是目前,没有其他方法可以仅从 Ticker 获取 CIK,如TICKER => CIK只有序列的查询序列TICKER => COMPANY_NAME => CIK有效。

现在,由于 Edgar 年纪大了,而且不太了解,这意味着对于某些公司来说,使用“COMPANY, INC”格式查找 CIK 代码非常有效。对于某些公司来说,这是行不通的,我必须删除“INC”以便 Edgar 理解。而且有些公司的名字中有特殊字符,埃德加不知道该怎么处理,所以他左右抛出错误。

现在,这里有一个例子:

现在,我已经意识到有些公司实际上并没有在他们的书面公司名称中包含“inc”。这意味着我必须在该公司名称中添加“INC”,以便 edgar 了解我在寻找哪家公司。

但我无法将东西添加到@stock.name- 有人可以帮我弄清楚怎么做吗?

我尝试了不同的变体

任何帮助都会非常有用。

0 投票
1 回答
37 浏览

r - 在第二个实例上部分提取非结构化数据

我有一个来自 Edgar 的巨大文本文件。我只想从业务风险部分提取一部分文本。

例如,如果文本是这样的:

Bshehebvegegeveghdhebejejrjbfbfk

我想将开始位置提取为he(第二个实例)结束位置ge(第二个实例)。

所以我的输出将是 - hebvegege

我想要 R 中的代码。我对业务风险部分特别感兴趣。

0 投票
1 回答
1561 浏览

python - From 10-K——提取SIC、CIK、创建元数据表

我正在使用 Edgar 的 10-Ks。为了协助文件管理和数据分析,我想创建一个表格,其中包含每个文件的路径、提交的公司的 CIK 号(这是 SEC 颁发的唯一 ID)以及它所属的 SIC 行业代码. 下面是一张直观地代表我想要做的图像。

我要提取的两件事列在每个文档的顶部。CIK # 将始终是在短语“CENTRAL INDEX KEY:”之后列出的数字。SIC # 将始终是“标准工业分类”后面的括号中的数字,然后是对该特定行业的描述。

这在所有文件中都是一致的。

待办事项:

  1. 循环文件:提取文件路径、CIK 和 SIC 编号——注意我每个文档只得到一个返回,每个结果都是按顺序排列的,所以我的字段之间的记录对齐。

  2. 将这些字段合并在一起——我猜最好的方法是将每个字段提取到它们自己单独的列表中,然后合并,也许是一个 Pandas 数据框?

最终,我将使用此表来帮助我对 SIC 行业之间的数据进行子集化。

谢谢你看看。如果我可以提供其他文件,请告诉我。

我要提取的两条元数据位于每个文档的顶部。 CIK # 将始终是一个列在短语后面的数字