はじめに
はじめまして、えだまめと申します。
昨年からAWSをはじめまして、そろそろアウトプットもしつつレベルアップしていきたいので筆をとりました。
どうぞよろしくお願いします。
さて皆さんAWS summit2023は行かれましたでしょうか?
私は業務都合で行くことが叶わなかったのですがライブ配信にて拝聴させていただきました。
中でもAWS-08 Amazon QuickSightでBI環境を統合する
で紹介されたMLを使用した予測計算
について興味が沸いたため、この度は人気ETF「QQQ」において予測させてみました。
※この記事は個人的な実験の記事です※
※予測値はあくまで参考で実際の取引における材料にしないことをおすすめします※
目次
- 米国のYahoo!Financeからcsvファイルを入手
- S3bucketを作成
- csvファイルをアップロード
- マニフェストファイルを作成/アップロード
- QuickSightの有効化/アクセス設定
- S3からデータセットを取り込み
- データセットから分析を作成
- MLを使用した予測計算
- 予測値と実績値の比較
csvファイルを入手
以下、米国のYahoo!Financeのリンクから取得します。
https://finance.yahoo.com/
検索ボックスで「QQQ」を検索し、historical Dataより期間指定の上でapply実行後にdownloadします。
ここではshowの説明については省略します。
S3bucketを作成
バケット名は任意のものを付与し、その他は全てデフォルトで作成します。
csvファイルをアップロード
S3メニューのアップロードから、上記で取得したcsvファイルをアップロードします。
今回は以下二つのファイルを使用します。
マニフェストファイルを作成/アップロード
QuickSightではS3からファイルを取得する際にまずマニフェストファイルを参照します。
このマニフェストファイルに書かれたオブジェクトURLについてデータを取得するようになります。
今回は実績データからの予測値評価用で別にデータセットを作成するため二つ用意します。
{
"fileLocations": [
{
"URIs": [
"s3://my-finance-qqq/QQQ_2022.csv" ##オブジェクトの概要からS3 URIを記述
]
}
],
"globalUploadSettings": {
"format": "CSV",
"delimiter": ",",
"containsHeader": "true"
}
}
{
"fileLocations": [
{
"URIs": [
"s3://my-finance-qqq/QQQ_2022-2023.csv" ##オブジェクトの概要からS3 URIを記述
]
}
],
"globalUploadSettings": {
"format": "CSV",
"delimiter": ",",
"containsHeader": "true"
}
}
QuickSightの有効化/アクセス設定
有効化については省略します。最初のアカウント登録みたいな感じで簡単にできます。
上記で作成したS3にQuickSightからアクセスするためにアクセス許可設定を行います。
S3からデータセットを取り込み
QuickSightからデータセット追加でS3を選択します。
データソース名は任意のもので大丈夫です。
マニフェストファイルのアップロードURLをS3でオブジェクトの概要からオブジェクト URL
を記述
注意:URLはマニフェストファイルのものです。csvファイルではありません。
データセットから分析を作成
ビジュアルには折れ線グラフを選択し、データフィールドにDateとCloseをドラックアンドドロップで設定します。
これで2022/1/1~2023/04/22までの実際の株価がグラフ化されます。
MLを使用した予測計算
MLといっても組み込まれているので、必要なのはワンクリックです。
右上の・・・から予測を追加をクリックします。
デフォルトでは14日後までを予測するみたいです。
予測値と実績値の比較
左上が2022年実績値+2023予測値です。
左下が2023年実績値です。
右下は本日以降(2023/4/22時点)の予測値です。
予測値と実績値の比較ですがあまり予測できていませんね。。。
もちろん値以外の外的要因によって株価は上下するものですのでやはり参考程度だなという感じです。
実績期間をもっと増やせば予測がより正確になるのかもしれませんね。
本日以降(2023/4/22時点)の予測値については下降傾向となりましたが実際どうなるかはわかりません。
まとめ
値が具体的に予測値として出ているので一つの指標として活用しやすいと思います。
より正確にさせるためには適切なデータセットを使うことがより重量になってくると思います。
以上、ここまで閲覧いただきありがとうございました。