Submit Search
Upload
DataProcessingInBuffettCode-20190213
•
2 likes
•
1,294 views
Shu (shoe116)
Follow
バフェットコード(https://www.buffett-code.com/)における、データ処理の考え方をXBRLを例に話しました。
Read less
Read more
Data & Analytics
Report
Share
Report
Share
1 of 16
Download now
Download to read offline
Recommended
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Yahoo!デベロッパーネットワーク
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Jignesh Shah
WiredTigerを詳しく説明
WiredTigerを詳しく説明
Tetsutaro Watanabe
スケールアップファーストのNoSQL、ScyllaDB(スキュラDB)
スケールアップファーストのNoSQL、ScyllaDB(スキュラDB)
昌桓 李
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Noritaka Sekiyama
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
Yuki Morishita
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Cloudera Japan
Recommended
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Yahoo!デベロッパーネットワーク
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Problems with PostgreSQL on Multi-core Systems with MultiTerabyte Data
Jignesh Shah
WiredTigerを詳しく説明
WiredTigerを詳しく説明
Tetsutaro Watanabe
スケールアップファーストのNoSQL、ScyllaDB(スキュラDB)
スケールアップファーストのNoSQL、ScyllaDB(スキュラDB)
昌桓 李
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Noritaka Sekiyama
Cassandraのしくみ データの読み書き編
Cassandraのしくみ データの読み書き編
Yuki Morishita
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Cloudera Japan
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
NTT DATA OSS Professional Services
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
Yuki Gonda
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredis
nasa9084
Presto ベースのマネージドサービス Amazon Athena
Presto ベースのマネージドサービス Amazon Athena
Amazon Web Services Japan
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Treasure Data, Inc.
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
日本マイクロソフト株式会社
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
Fujishiro Takuya
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例
Takeshi Mikami
MongoDBのアレをアレする
MongoDBのアレをアレする
Akihiro Kuwano
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
Cloudera Japan
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Amazon Elastic MapReduce with Hive/Presto ハンズオン(講義)
Amazon Elastic MapReduce with Hive/Presto ハンズオン(講義)
Amazon Web Services Japan
Apache Sparkにおけるメモリ - アプリケーションを落とさないメモリ設計手法 -
Apache Sparkにおけるメモリ - アプリケーションを落とさないメモリ設計手法 -
Yoshiyasu SAEKI
ビッグデータ処理データベースの全体像と使い分け 2018年version
ビッグデータ処理データベースの全体像と使い分け 2018年version
Tetsutaro Watanabe
【JEUG】 オープンSIEMの世界へ
【JEUG】 オープンSIEMの世界へ
Hibino Hisashi
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
NTT DATA Technology & Innovation
Glue DataBrewでデータをクリーニング、加工してみよう
Glue DataBrewでデータをクリーニング、加工してみよう
takeshi suto
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo!デベロッパーネットワーク
Apache Sparkのご紹介 (後半:技術トピック)
Apache Sparkのご紹介 (後半:技術トピック)
NTT DATA OSS Professional Services
情報爆発シンポジウム infoplosion
情報爆発シンポジウム infoplosion
Rakuten Group, Inc.
FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介
Recruit Technologies
More Related Content
What's hot
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
NTT DATA OSS Professional Services
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
Yuki Gonda
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredis
nasa9084
Presto ベースのマネージドサービス Amazon Athena
Presto ベースのマネージドサービス Amazon Athena
Amazon Web Services Japan
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Treasure Data, Inc.
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
日本マイクロソフト株式会社
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
Fujishiro Takuya
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例
Takeshi Mikami
MongoDBのアレをアレする
MongoDBのアレをアレする
Akihiro Kuwano
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
Cloudera Japan
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Amazon Elastic MapReduce with Hive/Presto ハンズオン(講義)
Amazon Elastic MapReduce with Hive/Presto ハンズオン(講義)
Amazon Web Services Japan
Apache Sparkにおけるメモリ - アプリケーションを落とさないメモリ設計手法 -
Apache Sparkにおけるメモリ - アプリケーションを落とさないメモリ設計手法 -
Yoshiyasu SAEKI
ビッグデータ処理データベースの全体像と使い分け 2018年version
ビッグデータ処理データベースの全体像と使い分け 2018年version
Tetsutaro Watanabe
【JEUG】 オープンSIEMの世界へ
【JEUG】 オープンSIEMの世界へ
Hibino Hisashi
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
NTT DATA Technology & Innovation
Glue DataBrewでデータをクリーニング、加工してみよう
Glue DataBrewでデータをクリーニング、加工してみよう
takeshi suto
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo!デベロッパーネットワーク
Apache Sparkのご紹介 (後半:技術トピック)
Apache Sparkのご紹介 (後半:技術トピック)
NTT DATA OSS Professional Services
What's hot
(20)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredis
Presto ベースのマネージドサービス Amazon Athena
Presto ベースのマネージドサービス Amazon Athena
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Aws auto scalingによるwebapサーバbatchサーバの構成例
Aws auto scalingによるwebapサーバbatchサーバの構成例
MongoDBのアレをアレする
MongoDBのアレをアレする
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Amazon Elastic MapReduce with Hive/Presto ハンズオン(講義)
Amazon Elastic MapReduce with Hive/Presto ハンズオン(講義)
Apache Sparkにおけるメモリ - アプリケーションを落とさないメモリ設計手法 -
Apache Sparkにおけるメモリ - アプリケーションを落とさないメモリ設計手法 -
ビッグデータ処理データベースの全体像と使い分け 2018年version
ビッグデータ処理データベースの全体像と使い分け 2018年version
【JEUG】 オープンSIEMの世界へ
【JEUG】 オープンSIEMの世界へ
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
Glue DataBrewでデータをクリーニング、加工してみよう
Glue DataBrewでデータをクリーニング、加工してみよう
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Yahoo! JAPANにおけるApache Cassandraへの取り組み
Apache Sparkのご紹介 (後半:技術トピック)
Apache Sparkのご紹介 (後半:技術トピック)
Similar to DataProcessingInBuffettCode-20190213
情報爆発シンポジウム infoplosion
情報爆発シンポジウム infoplosion
Rakuten Group, Inc.
FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介
Recruit Technologies
AutoEncoderで特徴抽出
AutoEncoderで特徴抽出
Kai Sasaki
[db tech showcase Tokyo 2017] C25: 世界最速のAnalytic DBがHadoopとタッグを組んだ! ~スケールアウト検...
[db tech showcase Tokyo 2017] C25: 世界最速のAnalytic DBがHadoopとタッグを組んだ! ~スケールアウト検...
Insight Technology, Inc.
[社内勉強会]エンジニアな僕の情報収集法
[社内勉強会]エンジニアな僕の情報収集法
Takahiro Moteki
OSSとクラウドによるコンピューティングモデルの変化
OSSとクラウドによるコンピューティングモデルの変化
Nobuyori Takahashi
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
- Core Concept Technologies
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
Developers Summit
Big data解析ビジネス
Big data解析ビジネス
Mie Mori
Firestoreを勉強してみた
Firestoreを勉強してみた
ishikawa akira
Mr201206 no sql_security
Mr201206 no sql_security
FFRI, Inc.
[db tech showcase Tokyo 2014] L34: そのデータベース 5年後大丈夫ですか by 日本ヒューレット・パッカード株式会社 後藤宏
[db tech showcase Tokyo 2014] L34: そのデータベース 5年後大丈夫ですか by 日本ヒューレット・パッカード株式会社 後藤宏
Insight Technology, Inc.
リクルートライフスタイルの考えるストリームデータの活かし方(Hadoop Spark Conference2016)
リクルートライフスタイルの考えるストリームデータの活かし方(Hadoop Spark Conference2016)
Atsushi Kurumada
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展
Recruit Technologies
[INSIGHT OUT 2011] b21 ひとつのデータベース技術では生き残れない part2 no sql, hadoop
[INSIGHT OUT 2011] b21 ひとつのデータベース技術では生き残れない part2 no sql, hadoop
Insight Technology, Inc.
1,000,000 foot view of Hadoop-like parallel data processing systems
1,000,000 foot view of Hadoop-like parallel data processing systems
Hiroyuki Yamada
データ集計基盤のいままでとこれから 〜Hadoopからdataflowまで使い込んだ経験を徹底共有〜
データ集計基盤のいままでとこれから 〜Hadoopからdataflowまで使い込んだ経験を徹底共有〜
Kazuhiro Mitsuhashi
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Hadoop / Spark Conference Japan
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
griddb
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
Recruit Technologies
Similar to DataProcessingInBuffettCode-20190213
(20)
情報爆発シンポジウム infoplosion
情報爆発シンポジウム infoplosion
FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介
AutoEncoderで特徴抽出
AutoEncoderで特徴抽出
[db tech showcase Tokyo 2017] C25: 世界最速のAnalytic DBがHadoopとタッグを組んだ! ~スケールアウト検...
[db tech showcase Tokyo 2017] C25: 世界最速のAnalytic DBがHadoopとタッグを組んだ! ~スケールアウト検...
[社内勉強会]エンジニアな僕の情報収集法
[社内勉強会]エンジニアな僕の情報収集法
OSSとクラウドによるコンピューティングモデルの変化
OSSとクラウドによるコンピューティングモデルの変化
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
Big data解析ビジネス
Big data解析ビジネス
Firestoreを勉強してみた
Firestoreを勉強してみた
Mr201206 no sql_security
Mr201206 no sql_security
[db tech showcase Tokyo 2014] L34: そのデータベース 5年後大丈夫ですか by 日本ヒューレット・パッカード株式会社 後藤宏
[db tech showcase Tokyo 2014] L34: そのデータベース 5年後大丈夫ですか by 日本ヒューレット・パッカード株式会社 後藤宏
リクルートライフスタイルの考えるストリームデータの活かし方(Hadoop Spark Conference2016)
リクルートライフスタイルの考えるストリームデータの活かし方(Hadoop Spark Conference2016)
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展
[INSIGHT OUT 2011] b21 ひとつのデータベース技術では生き残れない part2 no sql, hadoop
[INSIGHT OUT 2011] b21 ひとつのデータベース技術では生き残れない part2 no sql, hadoop
1,000,000 foot view of Hadoop-like parallel data processing systems
1,000,000 foot view of Hadoop-like parallel data processing systems
データ集計基盤のいままでとこれから 〜Hadoopからdataflowまで使い込んだ経験を徹底共有〜
データ集計基盤のいままでとこれから 〜Hadoopからdataflowまで使い込んだ経験を徹底共有〜
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
オープンソースのビッグデータ・IoT向け スケールアウト型データベースGridDBとPython連携 〜GridDBとPythonと私〜
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
More from Shu (shoe116)
GCPでStreamなデータパイプライン作った
GCPでStreamなデータパイプライン作った
Shu (shoe116)
オープンデータを利用した企業分析ツール"Buffett-Code"について
オープンデータを利用した企業分析ツール"Buffett-Code"について
Shu (shoe116)
データ分析基盤の憂鬱と退屈
データ分析基盤の憂鬱と退屈
Shu (shoe116)
analists_rating_by_lda_hackday_201702
analists_rating_by_lda_hackday_201702
Shu (shoe116)
データサイエンティストの憂鬱と退屈
データサイエンティストの憂鬱と退屈
Shu (shoe116)
idoling_approval_desire
idoling_approval_desire
Shu (shoe116)
tokyo_webmining_no51
tokyo_webmining_no51
Shu (shoe116)
Hadoop Ops & Fabric
Hadoop Ops & Fabric
Shu (shoe116)
エンジニアが日々何を考えているのか、ということ
エンジニアが日々何を考えているのか、ということ
Shu (shoe116)
More from Shu (shoe116)
(9)
GCPでStreamなデータパイプライン作った
GCPでStreamなデータパイプライン作った
オープンデータを利用した企業分析ツール"Buffett-Code"について
オープンデータを利用した企業分析ツール"Buffett-Code"について
データ分析基盤の憂鬱と退屈
データ分析基盤の憂鬱と退屈
analists_rating_by_lda_hackday_201702
analists_rating_by_lda_hackday_201702
データサイエンティストの憂鬱と退屈
データサイエンティストの憂鬱と退屈
idoling_approval_desire
idoling_approval_desire
tokyo_webmining_no51
tokyo_webmining_no51
Hadoop Ops & Fabric
Hadoop Ops & Fabric
エンジニアが日々何を考えているのか、ということ
エンジニアが日々何を考えているのか、ということ
DataProcessingInBuffettCode-20190213
1.
バフェットコードのデータ処理 -XBRLのデータ構造とparserの話- @shoe116
2.
0. 今日話すこと 1. 自己紹介的な 2.
バフェットコードについて ○ バフェットコードって何? ○ バフェットコードが生まれたわけ 3. バフェットコードの日次データ処理 4. XBRLデータ構造とparserの話 ○ XBRLとは ○ XBRLのデータ構造 ○ データ処理におけるparserの考え方 5. まとめ
3.
1. 自己紹介的な なまえ:しゅう (@shoe116) お仕事:広告系エンジニア→データ分析基盤屋さん 推し事:ももくろ→でんぱ組→BiSH→CY8ER、オサカナ 関連語:Hadoop,
Kafka, Storm, Tez, Beam, Cloud Dataflow 開発言語:Java or Scala, Python, Go バフェットコードはデータ処理を中心にwebアプリ以外を担当
4.
2.1 バフェットコードって何? オープンデータを用いた、効率的な企業分析を行うためのwebサイト 使い方は、https://www.buffett-code.com/ にアクセスするだけ 主な機能は以下の3つ 1.
財務・株価データの参照 2. スクリーニング 3. 企業比較 最近、ようやく有料機能出した
5.
機能①. 企業別財務数値・株価指標の参照 ● 国内の上場企業データベースを可視化して提供 ○
検索窓に企業名or銘柄コードを入力 ○ 業種から銘柄を探すことも可能 ○ 例:任天堂の企業詳細ページ ● 企業ごとに以下のデータを提供 ○ 基本的な財務数値と株価指標 ○ 株価推移とヒストリカルマルチプル ○ 大株主情報 ○ 四半期毎の業績と業績予想 ○ 開示資料へのリンク集
6.
機能②. スクリーニング(条件検索) 投資基準に当てはまる企業を検索する https://www.buffett-code.com/screening ● 多彩な検索条件を指定可能 ○
P/L、B/S、C/S ○ 収益性と成長性、財務健全性 ○ 財務数値 ○ キャッシュフロー ○ 研究開発費や上場年数
7.
機能③. 企業比較 複数企業の財務データ・株価指数を、指定した科目で一覧比較 https://www.buffett-code.com/comps ● 柔軟な科目指定 ●
見やすい表示 ○ 最大・最小を色付け ○ 代表値の自動表示 ● 同一銘柄の新旧比較も可能 ○ 3年前のデータの表示
8.
2.2 バフェットコードが生まれたわけ We created Buffet-Code
9.
3. バフェットコードの日次データ加工処理 1. OPENデータ(XBRL
file)を取得、保存 ○ EDINETから、該当日発行分の有価証券報告書(有報)を取得 ○ TDNETから、該当日発行分の決算短信を取得 ○ Edgarから、該当日発行分の10-K, 10-Qを取得 ○ それぞれをオブジェクトストレージに保存 2. 取得したXBRL fileをparseし、RDBに格納 3. 格納されたデータと、当日の株価を元に財務数値を計算、RDBに格納 4. RDB上のスクリーニング、比較用のデータセットを更新
10.
4.1 XBRLとは ● eXtensible
Business Reporting Language ● Edinet, Tdnet, Edgar 等から結構いい感じにDLできるXML ○ Edinet http://disclosure.edinet-fsa.go.jp ○ Tdnet https://www.jpx.co.jp/equities/listing/tdnet/index.html ○ Edgar https://www.sec.gov/edgar.shtml ● XMLのタグごとに、データが入っている $ grep ‘jppfs_cor:NetSales’ test.xbrl <jppfs_cor:NetSales contextRef="Prior1YearDuration" unitRef="JPY" decimals="-3">41275187000</jppfs_cor:NetSales> <jppfs_cor:NetSales contextRef="CurrentYearDuration" unitRef="JPY" decimals="-3">45089432000</jppfs_cor:NetSales>
11.
4.2 XBRLのデータ構造 Tag - contextRef -
unitRef - decimals - value - XBRLには、簡単に言うと ↓ の配列が入っている - 使うときはTag と contextRefでvalueを特定しdecimalsでオフセット - ライブラリ書いたよ! https://github.com/BuffetCode/edinet_xbrl <jppfs_cor:NetSales contextRef="Prior1YearDuration" unitRef="JPY" decimals="-3">41275187000</jppfs_cor:NetSales>
12.
4.3 データ処理におけるparserの考え方 ● 死ぬほど当たり前だけど、parse
:= Inv format ● 感覚的にはserializerとdeserializerを実装するときと似ている ○ 論理的なデータ構造は変えず、物理的なAlignmentだけ変換する ● 論理的なデータ構造から設計するべき 1. 論理的な財務データを考える (FinancialsObject) 2. def XBRL.formatter(financials: FinancialsObject) : XBRLFile を想像する 3. def XBRL.parser(xbrl: XBRLFile): FinancialsObject が決まる ● 論理的な中間表現を介して変換のペアを書くときれいに作れる ○ XBRL => JSONならXBRL parserとJSON Formatter ○ XBRL => TableRowなら、XBRL parserとTableRow Formatter
13.
4.4 「XBRLのparseは難しい」という人へ ● 難しいのparseじゃなくてformat ○
nestしているので、RDBのrowとかCSVにするのは難しい ○ XBRLってつまりXMLなので、難しいはずない ● Parserにparse以外のロジックを書いているコードはよく見る ○ 必要な情報だけ抽出する、内部の変数を上書きするetc ○ 戻り値をformatterに食わせて元に戻らないのはparserじゃない ● XX2YYConverterは↓って実装すると読みやすいしテストしやすい def convert(input: XX): YY obj = XXParser.parse(input) YYFormatter.format(obj)
14.
5. Appendix
15.
Buffett-Codeの現状 1. Buffett-Codeと周辺サービス ○ メインのWebアプリケーション
https://www.buffett-code.com/ ○ フォロワー26.5K超のTwitter https://twitter.com/buffett_code ○ 企業分析に役立つBlog https://blog.buffett-code.com/ ○ CampFire https://camp-fire.jp/projects/view/114594 2. Buffett-Codeの技術発信 ○ OSSの公開 https://github.com/buffetcode ○ Python Packageの公開 https://pypi.org/project/edinet-xbrl/ ○ Buffett-Codeの内部技術の紹介 ■ https://qiita.com/shoe116/items/dd362ad880f2b6baa96f ■ https://qiita.com/shoe116/items/a7b688d05b699cf403a1
16.
● Buffett-Code ○ WebApp
https://www.buffett-code.com/ ○ Usage https://blog.buffett-code.com/entry/18/02/01 ○ Twitter https://twitter.com/buffett_code ○ Blog https://blog.buffett-code.com/ ○ GitHub https://github.com/buffetcode ○ Dev Docs https://qiita.com/shoe116/items/dd362ad880f2b6baa96f ● Data Sources ○ Edinet, http://disclosure.edinet-fsa.go.jp ○ Tdnet, https://www.jpx.co.jp/equities/listing/tdnet/index.html ○ Edgar, https://www.sec.gov/edgar/searchedgar/companysearch.html ● XBRL Info ○ XBRL.org https://www.xbrl.org/ ○ 有報キャッチャー https://ufocatch.com/
Download now