毎回新たな発見が得られる
MQL4リファレンス、見ていらっしゃいますか?
リファレンス=辞書ですので、必要な時に必要なものだけ見られていると思います(辞書ってそういうもんですしね)。
普段はそれで十分ですが、時々じっくり上から順に眺めてはいかがでしょうか?という提案です。
言葉と同様、そもそも存在を知らないと使うことができません。
そういう意味で「知る」という行為はとても大事です。
そして、知るためには必要ではない部分も読むしかありません。
ざーっと目次を眺めていき、「これ何だろ?」と引っかかったものを詳細に掘り下げていく、そんな感じで見ていくと新たな発見が得られるかもしれません。
かく言う私も、今回改めてざーっと眺めていたところいくつもの発見がありました。
もう長いことMQL4に携わっていますが、それでもまだまだ知らない機能ってあるんだなぁと実感したものです(だからこうして記事にしているわけです)。
例えば、こんな発見がありました。
ローソク足1本分未来の位置を計算する際、私は今まで
datetime mirai = Time[0] + Period() * 60;
と書いてきました。
Time[0]は現在のローソク足の開始日時、Period()は現在のチャートの時間足(分単位)です。
Period()に60を掛けているのはPeriod()が分単位で、秒に変換する必要があるからです。
これで別に問題ないのですが、もっと便利な関数がありました。
それがPeriodSeconds()です。
PeriodSeconds()はその名の通り、Period()の秒単位版です。つまり、PeriodSeconds() = Period() * 60です。
PeriodSeconds()を使うと上記の式はこうなります。
datetime mirai = Time[0] + PeriodSeconds();
この例ではさほど新しい発見を得ることによる効果を実感しにくいかもですが、自分で作ると複雑なロジックになる処理をさくっと一発で得られる関数(ObjectGetValueByShift)もあったりします。
知っていることを組み合わせればやりたいことを大体実現できてしまう人ほど、この記事は読んでほしいですね。
私もまだまだ未熟者だなぁと痛感した次第です。日々、精進あるのみ!
共に歩んでいきましょう。