メインコンテンツへスキップ

概要

Benzinga TypeScript/JavaScript SDK は、Benzinga API と対話するためのモジュール化されたイベントベースのインターフェースを提供します。TypeScript で実装されており、ブラウザと Node.js の両方の環境でシームレスに動作し、キャッシュや詳細な比較などの高度な機能を備えた強化された実装を提供します。

主な機能

  • TypeScript Support - 完全な TypeScript の型定義とインターフェースを提供
  • Universal - ブラウザと Node.js の両方の環境で動作
  • Modular Architecture - 必要なモジュールだけをインストール可能
  • Event-Based - リアルタイムデータ向けのリアクティブプログラミングパターンを採用
  • Advanced Features - キャッシュ、ディープコンパリソン、および各種最適化機能を内蔵
  • Modern - async/await に対応した ES6+ 構文を採用

必要条件

  • Node.js 14 以降

インストール

SDKはモジュール型アーキテクチャを採用しています。まずはコアのセッションモジュールをインストールしてください。
次に、必要に応じて追加モジュールをインストールします。

はじめに

セッションのセットアップ

@benzinga/session モジュールは、Benzinga API に対する認証の基盤となります。他のすべてのモジュールは、この Session オブジェクトに依存します。

設定オプション

Session オブジェクトには、動作をカスタマイズするためのさまざまな設定オプションを指定できます。

基本概念

モジュール化設計

各 Benzinga API ドメインは、個別の npm モジュールとしてパッケージ化されています。これにより、次のことが可能になります。
  • 必要なものだけをインストールできる
  • バンドルサイズを削減できる
  • 関心事の分離を明確に保てる
  • モジュールを個別に更新できる

イベント駆動アーキテクチャ

SDK は、リアルタイムのデータストリームや更新を処理するために、イベント駆動パターンを使用します。

キャッシュとパフォーマンス

SDK には組み込みのキャッシュ機構があり、次の目的で使用されます。
  • 不要な API コールを削減する
  • レスポンス時間を短縮する
  • 帯域幅の使用を最適化する
  • オフライン時のフォールバック手段を提供する

ディープ比較

高度なデータ比較機能により、次のことが可能になります:
  • ネストされたオブジェクトの変更検出
  • 効率的な状態管理
  • スマートな更新トリガー
  • UI アプリケーションでの再レンダリング回数の削減

利用可能なモジュール

このSDKは、各種APIドメインごとに特化したモジュールに整理されています。

コアモジュール

  • @benzinga/session - 認証およびセッション管理(必須)
  • @benzinga/calendar-data - カレンダー関連イベントおよびコーポレートアクション
  • @benzinga/news-data - ニュース記事および市場インテリジェンス
  • @benzinga/quotes - リアルタイム株価およびディレイ株価
  • @benzinga/fundamentals - 企業のファンダメンタルズおよび財務データ

特化モジュール

  • @benzinga/ratings - アナリストレーティングと目標株価
  • @benzinga/options - オプション取引動向と分析
  • @benzinga/transcripts - 決算説明会の書き起こし
  • @benzinga/logos - 企業ロゴとブランディング
  • @benzinga/signals - トレーディングシグナルとインジケーター

TypeScript サポート

SDK は TypeScript で記述されており、完全な型定義を提供します。

使用例

基本的なデータの取得

リアルタイム・データストリーム

カレンダーイベント

企業のファンダメンタルズ

ブラウザでの使用

SDK は、Webpack、Rollup、Vite などのバンドラーを用いたブラウザ環境でも動作します。

エラー処理

try-catch ブロックを使用して、エラーを適切に処理します。
ページネーションされた結果を効率的に処理する:

キャッシュ戦略

組み込みキャッシュを活用して、パフォーマンスを向上させます。

ベストプラクティス

1. セッションオブジェクトを再利用する

アプリケーション全体でセッションインスタンスを 1 つ作成し、それを再利用します。

2. 環境変数

API キーは環境変数として安全に管理してください:

3. 型安全性

型安全な API 操作のために TypeScript を活用する:

4. エラーバウンダリ

本番環境ではエラーバウンダリを実装すること:

リソース

モジュールのドキュメント

特定のモジュールに関する詳細なドキュメントは、各パッケージの README を参照してください:
  • @benzinga/session - コア認証および設定
  • @benzinga/calendar-data - カレンダーイベント API
  • @benzinga/news-data - ニュースおよび記事 API
  • @benzinga/quotes - リアルタイム気配値 API
  • @benzinga/fundamentals - ファンダメンタルズおよび財務データ API

サポート

技術サポートおよび API キーの提供については、Benzinga のサイト cloud.benzinga.com からお問い合わせください。

コントリビューション

Benzinga JavaScript SDK はオープンソースです。ぜひご貢献ください。詳細については GitHub リポジトリ を参照してください。