続・統計解析的に意味のあるインディケーター作り その2 もっと速くもっと速く
軽くする、なぜか?
統計的にものを見るならデータ量を増やすほうが説明係数があがる
ある地点で頭打ちになるんだろうけど。
まあ十分なデータ量は必要でしょうということです。
昔テレビでみたのは2000個必要だという説。トリビアでみたんで間違いないでしょ。
前回作ったものを2000まで遡るのもいいけどやっぱ重くなります。
そもそも一個しか更新されないデータ量をいちいち計算しなおしてるってのが
どうにも無駄に思えてしょうがない気がします。
すさまじい早さでトレードしたいならそれが大事そうでもありますが
そもそも変わらない値がほとんどです。
俺はあいにくそういう高速トレードはやる気ないので辞めたいわけです。
だってほかのチャートでも比べれるように作ったのに2つも開くと重さはさらに倍。
とてもやってられないので説明係数がなるべく減らないように計算する量をへらしましょう。
ある程度時間がたったらまた計算し直す方法を取ればまあ意味がありそうです、
しかもそれを週末で計算し直すのがスマートな気がします。
ってことでそのスイッチをくっつけていきます。
162行目から
MqlDateTimeで構造体を宣言してます。
time3が現在でtime4が表示チャートで一本分過去にズレた分を入れてます。
それが163~164行目です。月とか日とか曜日とかを分類して細切れに収納してるイメージですかね。
例えば165行目ではtime3.hourで時間の項目だけ取り出して使うったりするのです。
day_of_weekは1が月曜日です、言語によっては違うみたいなので注意してください。
MQL5では1が月曜日です。
あとはほとんどのインディケーターバッファでティックで計算しないで始値の更新のタイミングだけで表示して計算を減らしました。
まあ詳しくはダウンロードして中身を見てみてください。
さて結果です上がティックごと再計算で下がほぼ週初めのみの計算です、
違いがわからないぐらいなんでこれはいいかんじですね。
今回のインディケーターはこちら↓
眠い | fivesasi2.zip ダウンロード | uploader.jp
週末でリセットするのをbool型で書いてあるので選べるようにしたのと
週末使わないでもティックで変わらないものは計算し直さないようになっています。
MaxとMinだけ一本ずれるかもしれないけどそんなの見たらわかるので
だから前回の捨ててこっちを使ったほうがよいよ。
その1
続・統計解析的に意味のあるインディケーター作り - nemui3900’s blog
その3
続・統計解析的に意味のあるインディケーター作り その3 捨てたものに焦点をあてる。 - nemui3900’s blog