CSV 形式の株価データを加工する

2024年3月6日

trdsql

CSV、LTSV、JSON、YAML、TBLNでSQLクエリを実行できるCLIツール。様々なフォーマットに出力できます。

GitHub – noborus/trdsql: CLI tool that can execute SQL queries on CSV, LTSV, JSON, YAML and TBLN. Can output to various formats.

CSV 形式の株価データをダウンロードする

出力する項目を選び文字列の切り出しと株価の四捨五入と並び替えのサンプル

trdsql -is 1 "select substr(c8,1,4) ,round(c6, 1),c1 from ./ticker/ticker4.csv ORDER BY c8,c1 DESC" >ticker\ticker.csv
Date,Open,High,Low,Close,Adj Close,Volume,tick
2023-11-27,5073.0,5108.0,5016.0,5091.0,5091.0,76400,1000.T
2023-12-04,5001.0,5176.0,4917.0,4950.0,4950.0,33780,1000.T
1000,4950,2023-12-04
1000,5091,2023-11-27

縦に並んでいる株価データを横に並べる

株価データに銘柄の名前をつけて計算する 抽出条件をつける

エクセルの VLOOKUP のようなことをします

trdsql "SELECT u.c1,h.u2,u.c3,u.c4,TRUNC(100*h.c2/h.c15) FROM ./ticker/t.csv as u LEFT JOIN ./ticker/n.csv as h ON(u.c1=h.c1) WHERE h.c2*1<5000"  >ticker\tic.csv
1000,951,742

"1000","HD"
1000,HD,951,742,128.0

後順に並び替えてパーセントを文字列に追加

trdsql "SELECT *,concat(c5,'%%') FROM ./ticker/N.csv ORDER BY c5*1 DESC"  >ticker\tic.csv
1000,HD,951,742,128.0,128.0%

Posted by eightban