簡體   English   中英

閱讀XBRL事實 - Java

[英]Reading XBRL facts - Java

我需要從SEC 10-K文件中獲得一些事實,例如總收入,毛利潤,毛利潤,運營費用等,以及相應的背景。

對於像https://www.sec.gov/Archives/edgar/data/1318605/000156459018002956/tsla-20171231.xml這樣的文件,僅使用XPath來找出所需的幾個元素和值似乎是可行的。 但是有一些文件( https://www.sec.gov/Archives/edgar/data/19617/000001961718000057/jpm-20171231.xml ),其中總費用在具有擴展分類標准的不同細分中分解。

我的問題是

  1. 使用這些文件的可靠方法是什么? 說,如果我只想要總運營支出。 有沒有可靠的方法來找到我需要閱讀的元素,然后可以總結一下?
  2. 我嘗試使用UBMatrix庫來讀取xbrl文件。 它適用於某些文件(非SEC,可以讀取節點值)但是對於SEC 10-K文件會拋出NPE。 難道有來自SEC的xbrls實例文檔失敗的特殊原因嗎? (雖然沒有檢查庫代碼)

在任何情況下,如果只使用XPath這樣做我可能更喜歡。 xbrl文檔的有效性並不重要。

使用XBRL文件最可靠的方法是使用XBRL處理庫。 Java中有一些,一些是專有的(收費)和一些開源的。

xbrl.org上有一個維護的工具和服務列表:

https://www.xbrl.org/the-standard/how/tools-and-services/

據我所知,美國證券交易委員會的文件是可靠的,被很多人廣泛使用並在許多處理器上進行了測試。 如果UBMatrix存在問題,例如空指針異常,我建議與他們聯系並讓他們知道,以便他們可以解決它。

從理論上講,使用XPath / XQuery / XSLT也是可能的,因為XBRL使用XML語法,但你需要注意通過解析上下文(這是關系術語中的連接),你實際上是從頭開始重新實施不完整的XBRL處理器,存在隨之而來的漏洞和沉沒成本的風險。 除了核心XBRL(例如,尺寸,......)之外,還有許多細微之處和規范生態系統需要考慮,以便不檢索錯誤的值。 通過使用現有的處理器,您正在建立在其他人已經投入的努力之上,以便使所有XBRL語義正確:這是XBRL作為標准的好處。

最后一點:用於總收入,毛利等的確切XBRL標簽可能因公司而異,因為有些標簽使用自己的標簽(擴展名),而不是US-GAAP標簽。 此外,一些公司省略了一些需要消費者根據其他事實計算的事實。 這可以使用XBRL處理器頂部的映射和公式來解決。 查爾斯霍夫曼通過大量有用的建議分享了有關此事的報告,並在線維護這些映射(搜索關鍵詞的是:基本會計概念,報告框架)。

根據您對數據的看法,我建議您查看XBRL US API 這提供了對所有SEC文件的API訪問,並使數據以JSON形式提供。 您可以獲得免費的API密鑰,用於“私人,非商業研究和開發”

我還要看一下Arelle開源項目,這是一個用Python編寫的XBRL處理器。 特別是,它有一個插件,它將提供xBRL-JSON格式的數據,您可能會發現它比原始XML文件更容易使用,並將處理Ghislain所指的處理這些的復雜性。 。

有一個專用的API返回JSON格式的公司基礎。 您可以使用包eodhistoricaldata-apihttps://www.npmjs.com/package/eodhistoricaldata-api )提供的方法getFundamentals(symbol) )。

該方法返回季度和年度財務(資產負債表,現金流量,收入報表),包括總收入,毛利潤,毛利潤,運營支出等。

例如:

"Highlights": {
    "MarketCapitalization": 54915055616,
    "MarketCapitalizationMln": "54915.0556",
    "EBITDA": 616286976,
    "PERatio": null,
    "PEGRatio": "-1.5700",
    "WallStreetTargetPrice": "321.8900",
    "BookValue": "26.2790",
    "DividendShare": null,
    "DividendYield": null,
    "EarningsShare": "-4.8500",
    "EPSEstimateCurrentYear": "-6.5600",
    "EPSEstimateNextYear": "-2.0000",
    "EPSEstimateNextQuarter": "-1.6700",
    "MostRecentQuarter": "2018-09-30",
    "ProfitMargin": "-0.1022",
    "OperatingMarginTTM": "-0.0710",
    "ReturnOnAssetsTTM": "-0.0271",
    "ReturnOnEquityTTM": "-0.3397",
    "RevenueTTM": "17523644416.00",
    "RevenuePerShareTTM": "103.3240",
    "QuarterlyRevenueGrowthYOY": "1.2860",
    "GrossProfitTTM": "2222487000.00",
    "DilutedEpsTTM": "-10.5600",
    "QuarterlyEarningsGrowthYOY": null
},
// ...
"Income_Statement": {
        "currency_symbol": "USD",
        "quarterly": {
            "2018-09-30": {
                "date": "2018-09-30",
                "filing_date": "2018-11-02",
                "researchDevelopment": "350848000.00",
                "effectOfAccountingCharges": null,
                "incomeBeforeTax": "271320000.00",
                "minorityInterest": "1344731000.00",
                "netIncome": "311516000.00",
                "sellingGeneralAdministrative": "729876000.00",
                "grossProfit": "1523665000.00",
                "ebit": "442941000.00",
                "operatingIncome": "442941000.00",
                "otherOperatingExpenses": null,
                "interestExpense": "-169858000.00",
                "extraordinaryItems": null,
                "nonRecurring": null,
                "otherItems": null,
                "incomeTaxExpense": "16647000.00",
                "totalRevenue": "6824413000.00",
                "totalOperatingExpenses": "6381472000.00",
                "costOfRevenue": "5300748000.00",
                "totalOtherIncomeExpenseNet": "-171621000.00",
                "discontinuedOperations": null,
                "netIncomeFromContinuingOps": "254673000.00",
                "netIncomeApplicableToCommonShares": "311516000.00"
            },
            // ...
"Balance_Sheet": {
        "currency_symbol": "USD",
        "quarterly": {
            "2018-09-30": {
                "date": "2018-09-30",
                "filing_date": "2018-11-02",
                "intangibleAssets": "291476000.00",
                "totalLiab": "23409144000.00",
                "totalStockholderEquity": "4508838000.00",
                "deferredLongTermLiab": "0.00",
                "otherCurrentLiab": "2266778000.00",
                "totalAssets": "29262713000.00",
                "commonStock": "171000.00",
                "otherCurrentAssets": "158627000.00",
                "retainedEarnings": "-5457315000.00",
                "otherLiab": "2285172000.00",
                "goodWill": "65226000.00",
                "otherAssets": "1233979000.00",
                "cash": "2967504000.00",
                "totalCurrentLiabilities": "9775324000.00",
                "shortLongTermDebt": "2106538000.00",
                "otherStockholderEquity": "8271000.00",
                "propertyPlantEquipment": "19733969000.00",
                "totalCurrentAssets": "7920491000.00",
                "longTermInvestments": "17572000.00",
                "netTangibleAssets": "4152136000.00",
                "shortTermInvestments": "0.00",
                "netReceivables": "1155001000.00",
                "longTermDebt": "9726589000.00",
                "inventory": "3314127000.00",
                "accountsPayable": "3596984000.00",
                "totalPermanentEquity": "0.00",
                "noncontrollingInterestInConsolidatedEntity": "0.00",
                "temporaryEquityRedeemableNoncontrollingInterests": "0.00",
                "accumulatedOtherComprehensiveIncome": "0.00",
                "additionalPaidInCapital": "0.00",
                "commonStockTotalEquity": "0.00",
                "preferredStockTotalEquity": "0.00",
                "retainedEarningsTotalEquity": "0.00",
                "treasuryStock": "0.00"
            },
            // ...
"Cash_Flow": {
        "currency_symbol": "USD",
        "quarterly": {
            "2018-09-30": {
                "date": "2018-09-30",
                "filing_date": "2018-11-02",
                "investments": null,
                "changeToLiabilities": "895197000.00",
                "totalCashflowsFromInvestingActivities": "-560965000.00",
                "netBorrowings": "-221931000.00",
                "totalCashFromFinancingActivities": "-84218000.00",
                "changeToOperatingActivities": "98770000.00",
                "netIncome": "311516000.00",
                "changeInCash": "739728000.00",
                "totalCashFromOperatingActivities": "1391281000.00",
                "depreciation": "502825000.00",
                "otherCashflowsFromInvestingActivities": "128600000.00",
                "dividendsPaid": "0.00",
                "changeToInventory": "-55055000.00",
                "changeToAccountReceivables": "-587594000.00",
                "salePurchaseOfStock": "0.00",
                "otherCashflowsFromFinancingActivities": "42839000.00",
                "changeToNetincome": "179168000.00",
                "capitalExpenditures": "-559765000.00"
            },

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM