記事一覧
SBI証券の保有資産データを毎日自動で取得してみる【その7】
前回は、Google Driveに保存しているPortFolioMaster.csvをDataFrameに読み込むところまで出来きました。
今回は、PortFolioMaster.csvに日々取得したCSVファイルをDataFrameに読み込んでマージして行く処理を行っていきます。
そのままCSVファイル同士を結合した方が早いんじゃないかと思いましたが、DataFrameで結合した方がカラム名
SBI証券の保有資産データを毎日自動で取得してみる【その6】
前回は、Google Cloud Functionsで取得した保有資産データを、毎日自動でGoogle DriveにCSVファイルで保存するところまでできました。
とりあえず何日間か様子を見ていましたが問題なく毎日データが取得できているようです。
ということで、既存のPortFolioMaster.csvに日々取得したCSVファイルをマージしていきたいと思います。
まずは、Google Dr
SBI証券の保有資産データを毎日自動で取得してみる【その5】
前回は、Google Cloud Functionsで取得した保有資産データを、Google DriveにCSVファイルで保存するところまでできました。
今回は、この処理を毎日自動で実行するようにしていきたいと思います。こちらのサイトを参考にしたいと思います。
これを見ると、関数のトリガーをPub/Subに設定する必要があるようですが、すでに作成した関数のトリガーはhttpです。なので変更しよ
SBI証券の保有資産データを毎日自動で取得してみる【その4】
前回は全く進まなかったので、引き続き今回も認証を進めていきます。
OAuth 2.0 クライアント IDもローカルPCで認証をやっていきたいと思います。こちらのサイトを参考にさせてもらいました。ありがとうございます。
ローカルPCで認証をすると出来るファイルcredentials.jsonとtoken.pickleをCloud Shellのmain.pyと同じフォルダにコピーします。どうやって
SBI証券の保有資産データを毎日自動で取得してみる【その3】
前回は、Google Cloud FunctionsでSBI証券のサイトにログインして保有資産データをDataFrameに取得するところまでできました。
今回は、取得したデータをGoogle DriveにCSVファイルで保存していきたいと思います。
Cloud FunctionsからGoogle Driveにアクセスできるようにするには、認証する必要があるようです。方法はOAuth 2.0 ク
SBI証券の保有資産データを毎日自動で取得してみる【その2】
前回は、Google Cloud FunctionsでSBI証券のサイトにログインするところまでできました。
前回書き忘れていましたが標準ライブラリ以外で必要となるライブラリは、ターミナルでpipでインストールして、main.pyと同じフォルダにrequirements.txtという名前のファイルを作り、ライブラリ名を記入する必要があります。
pandasbs4lxml
では、今回は保有資産
SBI証券の保有資産データを毎日自動で取得してみる【その1】
以前「SBI証券の資産推移をグラフで表示する方法を考えてみる日記」という記事を書きました。Google Colabを使ってSBI証券のサイトにログインしてポートフォリオ画面から保有資産の情報を取得してグラフを表示するという内容です。
Google Colabだとスマホのブラウザから実行できるので、わざわざPCから実行しなくてもよくて、外出していても実行できるところが便利なのですが、毎日スマホのブ
SBI証券の電子ポストからPDFファイルを自動でダウンロードしてみる【その4】
前回、電子ポストのDPFファイルを全てダウンロードするところまで処理出来ました。
今回は、今後のために電子ポストにダウンロードしていないPDFファイルがあればダウンロードするような処理を追加していきたいと思います。
ダウンロードしていないPDFファイルをどうやって判断するかですが、ダウンロードボタンをクリックする前に、epostフォルダにこれからダウンロードしようとする件名+日付のPDFファイ
SBI証券の電子ポストからPDFファイルを自動でダウンロードしてみる【その3】
前回はダウンロードしたPDFファイルの名前を分かりやすいように件名+日付に変えていきました。
今回は、一覧ページのPDFファイルを全件ダウンロードした後に、次のページへ遷移してダウンロードする処理を追加していきたいと思います。
前回は3件までダウンロードするテストをしましたが、1ページの20件をダウンロードした後に次のページへ遷移する必要があるので、次のページへ行くボタンのHTMLを見てみます
SBI証券の電子ポストからPDFファイルを自動でダウンロードしてみる【その2】
前回は電子ポストの画面で1件目のPDFファイルをダウンロードするところまでできました。
今回はダウンロードしたPDFファイルの名前を分かりやすいように件名+日付に変えていきたいと思います。
前回作成した関数に以下の処理を追加していきます。
・ダウンロードしたファイル名を取得する
・変更後のファイル名を取得する
・ファイル名を変更する
ダウンロードしたファイル名をどうやって取得しようかと考え
SBI証券の電子ポストからPDFファイルを自動でダウンロードしてみる【その1】
SBI証券では、さまざまな通知をWebサイト上で閲覧する電子交付サービスを提供しています。
「電子交付サービス」とは、「取引報告書」・「取引残高報告書」等を書面での交付(郵送)に代えて、WEBサイト上で電子書面(PDFファイル)で閲覧いただけるサービスです。
電子交付サービスを申し込むと電子ポストで電子書面を閲覧することが可能になります。
電子ポストには過去5年分までのデータしか保存されない
SBI証券の損益管理を自動化してみる日記【その12】
前回は特定口座とNISA口座のデータをマージしました。今回は、データを集計してグラフ作成をやっていきたいと思います。作りたいデータとグラフは以下の通りです。
年ごとの損益集計を集計してグラフにする。口座全体、特定口座、NISA口座ごとにそれぞれ作成する。
年、月ごとの損益を集計してピボットテーブルにする。
年月ごとの損益を棒グラフにして、累積損益を折れ線グラフにする。
では以前作った関数dra
SBI証券の損益管理を自動化してみる日記【その11】
さて、今回は特定口座とNISA口座のデータをマージして、データの集計とグラフ作成をしていきたいと思います。
まずはcreate_master_profit_data()という関数を作って、特定口座とNISA口座のデータをマージしてマスターデータを作っていきます。
def create_master_profit_data(): data_dir = '/content/drive/My D
SBI証券の損益管理を自動化してみる日記【その10】
さて、前回はNISAの過去の損益データを取得してGoogleDriveにCSVファイルに保存するところまでいきました。今回は、今後新しく追加されるNISAの損益データを取得してマージしていく関数add_latest_nisa_profit_data()をつくっていこうと思います。
関数の処理の流れとしては以下の感じですかね。
SBI証券のNISA口座画面の売却損益の検索条件の年指定を今年に設定。
SBI証券の損益管理を自動化してみる日記【その9】
さて、今回はNISA口座の損益データを取得していきたいと思います。
新しい関数get_nisa_profit_data()を作ります。SBI証券のトップページから口座管理→口座(NISA)とクリックしていきます。なるべく多くの結果を表示したいので表示結果200件をクリックします。私の場合結果が101件しかなかったので1ページで収まります。
def get_nisa_profit_data(dr
SBI証券の損益管理を自動化してみる日記【その8】
さて、前回は取得した損益データを元に、年ごと取引内容ごとにグラフに表示するとこところまで出来ました。
今回は、月ごとの損益グラフとその累積折れ線グラフを作成していきたいと思います。前回作成したdraw_profit_graph関数に処理を追加していきます。
その前に月ごとの損益と累積グラフの前に、行に年、列に月の形で集計したピボットテーブルも見たいので先にそちらを作ることにします。
#