多能工生産技術者の日常

20歳からFXの自動売買を開発しています。24歳からは株式投資等で純資産1000万円を目指します。


スポンサードリンク

【python】~FXテクニカル指標のデータ整形について~

スポンサーリンク

こんばんは。KeyKです。
LSTMの進捗が無かったので、LSTMに読み込ませるデータの整形方法について考察します。

学習させるデータの種類

以前も話しましたが、学習させるデータは0~1の範囲内にある数値が良いそうです。(何故かは詳しく知りませんが・・・)
オシレータ系指標は、相場の売られ過ぎ・買われ過ぎを判断する指標です。そのため、値は0~1 (0%~100%)となるのでこの値はそのまま使える事になります。
ここで問題となるのが、オシレータ指標以外の指標を使うときです。上限。下限がなく、0~1となるように値を整形することが難しいです。そのため、いくつか案を考えました。


案1. 【平均足のデータ整形】
安値と高値の乖離価格を1とします。あとは終値と高値、始値と安値などを1に対する割合として設定します。しかしこの方法だと、上昇か下降を判断することができません。ここを改良したいですね。

案2. ボリンジャーバンド移動平均線のデータ整形】
これが難しいんですよね。泣
現在の終値などから移動平均線の乖離に対して1と設定することができないためです。昔使用していた指標で「移動平均乖離率」というものがあります。これは、移動平均線からの乖離率を表したものです。ローソク足の値動きは移動平均線に従うため、移動平均乖離率は0に収束します。この指標の欠点は、収束値は0ですが上限下限が無い事にあります。

案3.ADXのデータ整形】
これも上限がないため難しいですね。それでも作るとすると、最大値を60、最小値を0としてその範囲内に収まるように割り当てます。(基本的にADXが60を超えることは無いと思っているので)

考察

もしLSTMで負値を扱うことができれば、-1~1となるようデータ整形ができます。これは調べれば何とかなりそうです。
しかし、もし0~1しか使えないとなると、上昇・下降トレンドをどのように表すかがカギとなります。
正しいデータ、洗練された良いデータを使えば人工知能の予測精度は各段に向上します。0~1で整形できるように多くの案を出して作成をしていこうと思います。



f:id:KeyK:20191101232210j:plain






   

プライバシーポリシー お問い合わせ