Skip to content

Latest commit

 

History

82 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JQuantsR

J-Quantsは、日本取引所グループ(JPX)が提供する個人投資家向けデータ配信APIです。

JQuantsRは、J-QuantsをRから扱いやすいようにラップしたRパッケージです。

インストール

インストールには4.1.0以上のバージョンのRが必要です。

install.packages("remotes")
remotes::install_github("J-Quants/JQuantsR")

サンプルコード

事前にJ-Quantsよりユーザー登録を行ってください。

library(JQuantsR)

# 各Rセッションの最初にJQuantsR::authorize()を実行してください
authorize(mail_address = "YOUR MAIL ADDRESS", password = "YOUR PASSWORD")
get_daily_quotes(code = "86970")

なお、日付の範囲を指定して取得することができない株価四本値のようなエンドポイントからデータを一括で取得したい場合は、forループやpurrr::mapなどを利用してください。

library(purrr)

start_date <- as.Date("2022-07-01")
end_date <- as.Date("2022-07-31")

dates <- seq(start_date, end_date, by = "1 day") |> 
  format(format = "%Y-%m-%d")

purrr::map_dfr(dates, \(date) {
  print(date)
  get_daily_quotes(date = date)
})

各関数について

概要

本パッケージに含まれる関数は以下の通りです。authorize()を除き、取得したデータをtibbleで返します。

契約しているプランが関数の対象プランではない場合、データを取得することができません。

各関数の引数や返り値、取得できるデータの詳細は、JQuantsRのヘルプやJ-Quants API Referenceをご参照ください。

  • Freeプラン以上
    • authorize(): メールアドレスとパスワードを用いてリフレッシュトークンを取得後、リフレッシュトークンを用いてIDトークンを取得する
      • [POST] /token/auth_user
      • [POST] /token/auth_refresh
    • get_info(): 上場銘柄一覧
      • [GET] /listed/info
    • get_daily_quotes(): 株価四本値
      • [GET] /prices/daily_quotes
    • get_financial_statements(): 財務情報
      • [GET] /fins/statements
    • get_financial_announcement(): 3月期・9月期決算会社の翌営業日の決算発表予定銘柄
      • [GET] /fins/annoucement
    • get_trading_calendar(): 取引カレンダー
      • [GET] /markets/trading_calendar
  • Lightプラン以上
    • get_trades_spec(): 投資部門別売買状況(金額)
      • [GET] /markets/trades_spec
    • get_topix(): TOPIX四本値
      • [GET] /indices/topix
  • Standardプラン以上
    • get_indices(): 指数四本値
      • [GET] /indices
    • get_index_option():日経225オプション四本値
      • [GET] /option/index_option
    • get_weekly_margin_interest(): 信用取引週末残高
      • [GET] /markets/weekly_margin_interest
    • get_short_selling(): 業種別空売り比率
      • [GET] /markets/short_selling
    • get_short_selling_positions(): 空売り残高報告
      • [GET] /markets/short_selling_positions
  • Premiumプラン以上
    • get_breakdown(): 売買内訳データ
      • [GET] /markets/breakdown
    • get_prices_am(): 前場の株価(前場終了時)
      • [GET] /prices/prices_am
    • get_financial_dividend(): 配当金情報
      • [GET] /fins/dividend
    • get_financial_details(): 財務諸表
      • [GET] /fins/fs_details
    • get_futures(): 先物四本値
      • [GET] /derivatives/futures
    • get_options(): オプション四本値
      • [GET] /derivatives/options

JQuantsR::authorize()

  • 各Rセッションにおいて、最初にJQuantsR::authorize()を実行してリフレッシュトークンとIDトークンを取得する必要があります。
    • JQuantsR::authorize()は、リフレッシュトークンとIDトークンを取得し、JQUANTSR_REFRESH_TOKENJQUANTSR_ID_TOKENという変数名の環境変数にそれぞれリフレッシュトークンとIDトークンをセットします。
  • 各Rセッション内で一度JQuantsR::authorize()を実行すれば、id_tokenを引数に取る各関数にIDトークンを渡す必要はありません。
  • メールアドレスとパスワードをそれぞれJQUANTSR_MAIL_ADDRESSJQUANTSR_PASSWORDという変数名の環境変数に設定すれば、JQuantsR::authorize()の引数mail_addresspasswordにそれぞれメールアドレスとパスワードを指定する必要はありません。
    • .RenvironファイルにJQUANTSR_MAIL_ADDRESSJQUANTSR_PASSWORDを記載することを推奨します。
  • リフレッシュトークンとIDトークンの有効期限はそれぞれ1週間、24時間です。いずれかの有効期限が切れた場合、JQuantsR::authorize()を再度実行してください。

その他

  • 本パッケージは現在開発途上であるため、本パッケージの仕様は今後変更される可能性があります。
  • バグ報告や機能追加のリクエストなどはIssuesにご投稿ください。Pull Requestも歓迎です。

Reference

About

J-Quants API client for R

Resources

Stars

7 stars

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages