2022/04/19

JPX J-Quants API の Early access NFT に当選しました

日本取引所グループで、J-Quants API という取り組みがスタートしました。
個人投資家に向けて、投資情報を API で入手できるようにする取り組みで、4/18 から Early access が始まりました。

アクセスキーをNFTで配布

この Early access は、事前に応募した人から抽選で当たった人だけが参加できるのですが、当たった人には Early access へのアクセスキーが NFT として配布されます。

私がもらった NFT は、https://opensea.io/assets/matic/0x929da6bb317a268e6953c2ea0ae4fad9f0ae11a0/121 です。シリアルナンバー #121 ですね。

https://opensea.io/collection/j-quantsnft-accesskey を見ると、発行された NFT が全部見れます。シリアルナンバーが #1〜#30 と #100〜#139 に分断されていて、#30 は Early access 開始前の 4/14 に発行されていて、#100 以降は 4/18 発行なので、#1〜#30 は JPX 内部の方がお持ちなんじゃないかな、と思いました。レア物ですね。

現時点では #139 まで発行されてますが、当選した人が登録したときに mint されるとのことと、当選者は1名 invite できるとのことで、まだ invite も終わっていないと思うので、まだ増えるでしょう。100名くらいになるんでしょうか。

Early access 終了後は NFT はアクセスキーとしての役割は終え、記念品(?) として残るそうです。おもしろい。

API 試してみた

NFT を使って J-Quants API のページにログインすると、アクセスキーを取得できます。24時間しか有効期間が無いし、自動更新できないんですが、まぁ検証目的なのでしょうがないですね。
翌日決算発表予定を取得する API があったので、Python で叩いてみました。

コード:
import requests
import json

import accesskey

headers = {
'Authorization': 'Bearer {}'.format(accesskey.ACCESS_KEY)
}
r = requests.get("https://api.jpx-jquants.com/v1/fins/announcement", headers=headers)
data = r.json()
print(json.dumps(data, indent=4, ensure_ascii=False))
結果:
{
    "Code": "24110",
    "Date": "20220415",
    "CompanyName": "ゲンダイエージェンシー",
    "FiscalYear": "3月31日",
    "SectorName": "情報・通信業",
    "FiscalQuater": "本決算",
    "Section": "スタンダード"
}
SectorName, FiscalQuater (Quarter のことかな? 報告しておこう), Section が日本語なのはちょっとつらい気もしますが、それでも API で取れるのはいいですね。いろんな自動化の夢が拡がります。

6月からはβ版利用者が一般募集になるとのことなので、それまでアーリーアダプタを謳歌しようと思います。


2021/08/27

M1 mac (macOS / AArch64) 用 JDK 17 の Release-Candidate Builds を動かしてみた

Java 17 は2021年9月リリース予定となっています。先立って JDK 17 の Release-Candidate Builds が 2021年8月6日に公開されました。
今回は、M1 mac (macOS / AArch64) 版を動かしてみたので、さらっと手順を紹介します。

2021/07/31

第2期決算出しました

第2期の決算処理を終え、確定申告・納税も済ませました。

昨年は「第2期は税理士さん頼まないとちょっと厳しいかもしれません」と言ってましたが、今回も何とか自力でやりました。今期はお金の動きが多かったのでちょっと大変でした。

今回は、電子申告にチャレンジし、無事出来たので、いい経験値でした。ですが、電子納税は手続きが間に合わず、窓口での払込みになってしまいました。次は電子納税にチャレンジです。

引き続きよろしくお願いいたします。


2020/10/13

Windows 10 機の接続モニタより高い解像度で Chrome リモートデスクトップを使いたい (NVIDIA 機向け)

我が家の Windows 10 機は、グラフィックカードが NVIDIA GeForce GTX 1050 です。接続しているモニタは16年物くらいのえらい古い物なんですが、最近壊れてしまって、電源を入れてから1秒くらいしか画面が映りません……。でも、MacBookPro から Chrome リモートデスクトップで接続して使っているため、特に困っておらず、買い替えに至っていません。

ただちょっと不満だったのが、解像度が 1280×1024 になってしまうことでした。Windows 純正のリモートデスクトップでは、クライアント側の環境に合わせて解像度が変更できますが、Chrome リモートデスクトップではモニタに映っている通りの解像度にしかなりません。接続されているモニタの解像度が 1280×1024 のため、Chrome リモートデスクトップでも 1280×1024 で使うしかないのです。クライアント側の MacBookPro は、通常 1440×900 という解像度なのですが、私は Display Menu というアプリを使って 2880×1800 まで解像度を上げています。そのため 1280×1024 というのはとても狭く感じ、不満だったのです。

ここ数ヶ月、どうにかして 2880×1800 の解像度で Windows 10 機に接続できないかといろいろ試していたのですが、やっとできたので、その手順を記しておきたいと思います。

2020/08/31

Java 15 そろそろ来ますね

OpenJDK 15 は、Final Release Candidate が出ており、2020/9/15 に GA となる予定です。もう間も無くですね。

どんな機能が入るのか、ざっと紹介しておきます。

2020/08/29

R - 入門本編 5章 配列と行列

R における「配列 (array)」は、ベクトルを多次元に拡張したものである。2次元のものは特に「行列 (matrix)」と呼ぶ。逆に言うと、R では3次元以上のものは行列とは呼ばない。

R - 入門本編 4章 順序付き因子と順序無し因子

R では質的変数、すなわち順序尺度、名義尺度を表現する方法として「因子 (factor)」が用意されています。モデル構築にあたっては、順序尺度は「順序付き因子 (ordered factor)」、名義尺度は「順序無し因子 (unordered factor)」として正しくデータを表現しておく必要がありますので、よく理解しておきましょう。

2020/08/23

R - 入門本編 3章 オブジェクト、そのモードと属性

R の型システムの入門編。型をいちいち明示しない言語では、型システムをちゃんと理解しておかないとちょいちょいつまずくので、しっかり把握しておきたい。

2020/08/20

R - 入門本編 2章 数字とベクトル

R を使うにあたって、ベクトルの理解は必須です。ベクトルを基本的なデータ構造とし、様々な演算子や関数がベクトルに対して定義されることにより、データ分析のためのプログラミングが非常に簡潔に記述できるようになっています。
An Introduction to R の2章に沿いつつ (古い版ですが……)、若干の+αがあります。

2020/08/16

jnethack-3.6.6-0.1 を macOS Catalina 10.15.6 で動かしてみた

JNetHack をやりたくて、ビルドしてみたのですが、ちょっと手こずったので、記録しておきます。参考になれば幸いです。

JNetHack って何?

知らない方も多いと思うので、簡単に説明しておきますと、JNetHack は NetHack を日本語化したものです。

NetHack はいわゆるローグライクゲームです。rogue → Hack → NetHack と発展してきた、rogue の直系の子孫的存在です。

2020/07/28

第1期決算出しました

決算処理を終えました。確定申告も済ませました。
今年は難しいお金の動きはなかったので、何とか自力で終えられました。よかったです。
第2期は税理士さん頼まないとちょっと厳しいかもしれません。いっぱい稼がないとですね。

決算で忙しかったので、記事が全然進んでいませんが、下書きは多少書き溜まっているので、随時出していこうと思います。
引き続きよろしくお願いいたします。

2020/06/06

R - 実践編 5 多変量時系列のモデル推定

R の vars パッケージや dse パッケージを使って、多変量時系列を VAR モデルや状態空間モデルにフィッティングさせてみました。

2020/05/28

R - 実践編 4 時系列のモデル推定

時系列データに当てはまるモデルの推定を R で行ってみましょう。実践編 3 で用いたものと同じ時系列 TS を対象として、モデルを推定した様子を紹介したいと思います。

R - 実践編 3 時系列の単位根検定

R で実際に時系列データの単位根検定をしてみましょう。Phillips-Perron 検定と Augmented Dickey-Fuller 検定が使用できます。

R - 実践編 2 データフレームにおける計算、集計

分析対象データをデータフレームに読み込んだあと、本格的な分析に入る前に、計算や集計などを行う必要があることが多いかと思います。R での代表的なやり方を説明します。

R - 実践編 1 ファイルの読み込み、データフレームの加工

実際に R でデータ解析を行うために、CSV ファイル、TSV ファイルの読み込みを行ったときの知見をまとめました。

2020/05/27

都心にカブトムシいた!

先日、千鳥ヶ淵付近を散歩していたら、カブトムシを発見しました。

カブトムシ

こんな都心部にカブトムシがいるとは、と思いましたが、良く考えたら靖国神社や皇居にはいっぱい居るはずですね。そのあたりから飛んできたんでしょうか。それよりも、5月にこんなしっかりしたサイズのカブトムシが居ることの方が珍しいかもしれません。

いずれにしても珍しいものを見ました。

R - 入門本編 7章 ファイルからデータを読み込む

実践的には、プロンプトから data.frame() だの c() だのを駆使してデータフレームを構築することはまずありません。当然ながら、外部ファイルからデータを読み込んでデータフレームを構成することができますので、その方法を習得しておきましょう。

2020/05/24

アーキテクチャ設計のポイント

業務要件を実現するだけであれば、アーキテクチャ設計は不要です。ではアーキテクチャ設計では何をすべきなのか? 私がアーキテクチャ設計を行うときのポイントを備忘録的にまとめました。


2020/05/23

時系列分析 (5) - 状態空間モデル

AR, MA, ARMA, ARIMA, VAR, VARMA, VARIMA, ... などの時系列モデルは、観測値を直接モデル化するものでした。今回紹介する状態空間モデル (State-space model) の場合は、状態の時系列変化と、その状態から観測される値とに分けてモデル化する手法です。AR モデル、ARMA モデルなども状態空間表現を取ることができますし、状態空間モデルではより多様なシステムが記述できます。例えば、時変的な回帰係数を持つ回帰モデルなどが表現できます。
また、状態空間モデルではカルマンフィルタという強力なアルゴリズムによって、条件付き同時分布が効率よく計算できるため、ARMA のパラメータ推定を行うに際して、ARMA の状態空間表現に対してのカルマンフィルタによる推定が良く行われています。