はじめに
ファイナンス機械学習 金融市場分析を変える機械学習アルゴリズムの理論と実践
という書籍を読み始めました
せっかくなので内容を忘れないようにメモしていこうと思います
超ざっくり要約と一言感想的な感じで
3.1 はじめに
ざっくり要約
この章では2章で生成した構造化データにラベル(予測値)を与える方法を説明するよ
感想
はい、先生!
3.2 固定時間ホライズン法
ざっくり要約
よくあるリターンのラベル付の方法は、例えば1時間後に1%以上価格が上がったか?(下がったか)といったもので、これは固定時間ホライズン法と呼ばれるが、これはボラの考慮とかできてないのであんまりよくない。
例えば閾値は1%とか固定じゃなくてボラによって変えた方がいいし、利確や損切りを考慮すべきだよね
感想
た、確かに!
3.3 動的閾値の計算
ざっくり要約
利確と損切りを設定するためにはボラの計算が必要
そのコードを紹介するよ
感想
ボラの指数平滑移動平均(EMA)を計算してるねえ
EMAは使ったことあるので理解できた
やっぱりSMAじゃなくてEMAなのね
ただスニペット3.1のコードのコメントに「日次リターン」って書いてあるのはちょっと混乱した
リターンだと損益のことを表してるように見えるけど実際はただの価格の変動だよね
まあいいや
3.4 トリプルバリア法
ざっくり要約
保有ポシションの終了条件として、利食い、損切り、一定時間経過の3つのバリアを設定しようね
感想
なんかトリプルバリア法とか難しそうな言葉を使ってるけど、やってることはただの利食いと損切りと保有時間による決済のことじゃねーか!っていう
何をそんな大袈裟にって感じ
3.5 サイドとサイズの学習
ざっくり要約
サイドとサイズについての学習を行えるようにラベル付けする方法を説明するよ
感想
サイドとサイズの学習をする章なのかと思って読むとなんか違うくって混乱した
やってことは学習ではなく学習のためのラベル付け
章名がミスリード感ある
ラベルは利食いなら1、損切りなら−1、一定期間経過したならその時点の損益がプラスなら1、マイナスなら−1って感じ
あとこのラベルでサイドが学習できるのは分かるけどどうやってサイズを学習するのだ?
よく分からん
3.6 メタラベリング
ざっくり要約
普通、機械学習のラベリング(予測したい値)って、今買うか?売るか?だと思うんだけど、そうじゃなくて、
事前に「今が勝負時や!」ってラベルを与えた上で、機械学習で「どのくらい買うのか?売るのか?」を予測するのがいい感じだよ
事前にラベリングしてあるものに対してラベリングするのでメタラベリングって呼ぶよ
感想
なるほど、新しい概念だ
サイドとサイズっていう複雑な組み合わせを1回の機械学習でやるんじゃなくて、
それぞれ別々で学習させるってことか、確かに強そう
3.7 メタラベリングの使用方法
ざっくり要約
まず最初のラベリングで再現率をできるだけ高めて、メタラベリングで適合率を上げるようにするのがいいよ
もちろん最初のラベリングでは機械学習じゃない、オレオレ理論でやっても良くて、
その場合は機械学習でやる範囲が減る分、オーバーフィッティングしにくくなっていい感じだよ
感想
図3-2は分かりにくすぎ
ググって出た下の説明の方が圧倒的に分かりやすいのでオススメ
https://aidemy.net/courses/2010/exercises/HJWxt3UiUxz
メタラベリング、ベットとサイズの件だけじゃなくて他にも色々応用できそう
ぜひ採用したい手法だなあと思った
3.8 不要なラベルの削除
ざっくり要約
出現回数が少なすぎるラベルは信用できないので削除しちゃった方がいいよ
感想
おk
おわりに
色々と具体的で、実際に機械学習bot作るときに参考になる話ばかりで面白かった!
第4章はこちら