テクニカル分析3 完? 結局機械学習で予測
前回,三つの条件を組み合わせて検証してみました.
それぞれの相関などを見て,閾値などを決めようと思いましたが,人間がやるより機械学習させた方がいいことを思い出しました.
過去の機械学習の応用をしてみた結果を書きたいと思います.
準備段階
前回自分で決めたデータセットを用いました.めんどくさいのでプライム市場1年分です.50MAとかを自分で計算しているので,正確に1年ではありませんが,それはどうでもいい..はず.
合計2640個でした.こんなにあるんですね.
もう片っ端から情報をつめこみました.
MACDやRSIといった前回考えた指標から,ADX・Rや直近高値,ローソク形状など.
これを学習させます. 5日後など未来の情報を入れないように・・・.
機械学習へ
やったことはおおむね前回と一緒です.
前回と違う点は,私が条件を付けてあるデータであるという事です.汎用性ではなく,特殊性を追求しました.ある条件下でどのようになるかといった拘束があると結構精度が変わる気がします.
結果としては,
教師データに対する正解率
88.19%
トレーニングデータに対する正解率
55.21%
微妙!
いやいや少し待ってください.私の目的は値上がり幅を予測することではなく,儲けることです.
少し詳細に見てみます.
この画像は,予測した値上がり率に対して実際どうだったかを表す行列です.(わかりづらくてすみません・・・)
例えば一番左の列だと,-10%となると予測されたものの一覧です.全部で33データが-10%以上だと判定されています.
そして,縦に実際の答えが示されていて,
本当に-10%であったものが25データ,-10%<x<-6%であったものが2データ...みたいな感じで並んでいます.
私は値上がりするものを買おうと思っているので,右列に着目します.
値上がると予測されたもののうち,ちゃんと値上がった割合は,
78.9%
でした.結構よくないですか!!??
ここまで大きいのなら,これに従ってトレードするのをやってみてもいいかもしれません.
また別の記事でその結果でも示したいと思います.
精度の向上
少し語弊がありますが,データの数が少し少ない気もします.
3年分くらい使ってみようかな.(時間がとてもかかるけど)
精度は下がるかもしれませんが,こっちの方が信頼できる.
最後に
これで楽に儲けられたらいいなあ.と思いながら.
でも78%は少し感動しました.毎週上がりそうなやつが出ればいいですが,
とりあえず今日は出ませんでした.
残念!