*

(MQL4)ロウソク足が確定したタイミング(始値)で演算するやり方[EA自作]

Originally posted 2019-06-21 17:22:47.

EAやインジケーターの演算はティック更新毎に行われますが、演算内容によってはロウソク足が確定するタイミングだけ演算すればOKということもあります。

 

ロウソク足が確定するタイミングの条件(強制始値のみ)

まだ、駆け出しのころは

 

なんて記述を愚かにもしていたこともあったのですが、 なぜこれがダメなのかわかりますか。

 

これだと、

始値のタイミングと

現在のロウソク足の中でたまたまレートが始値と一緒になったときと、

区別がつかないので、必要十分条件ではありません。

 

Barsを使う

現在のチャートに表示されているロウソク足の本数を返す予約済み変数Barsを使います。ロウソク足が更新されると、これが増加するので、

これでOKです。もちろんチャート操作で表示するロウソク足の本数を変えられたりすると、そのタイミングでおかしなことになる可能性があります。(まず、ないですけどね)

 

iBars()を使う

Barsの場合、現在のEA・インジケーターがセットされているチャートのロウソク足の本数を返すので、

もしユーザーが意図しない時間枠にEA・インジケーターをセットした場合は、演算のタイミングが狂ってしまいます。

 

例えば、15分ごとに何かの演算をしたいとした場合、15Mチャートにセットしなければなりませんが、トレードそのものは5分足で行いたい場合にミスマッチになってしまいます。

 

そこで、そんなときにはiBars()を使います。

 

PERIOD_M15で時間枠を指定・固定しているのでこれで15分ごとに演算を行います。

 

ただし、ティック更新が極端に少ない場合、たとえば15分以上ティックが来なかったりすると、またそれはそれでバグの要因になるので、

指定時間に絶対演算させたい場合はWhileかfor文でループさせましょう。

 

これに関する記述方法はがっちりマンデー手法のソースコードにあるので、そちらを参照してください。

 

この投稿は役に立ちましたか? 役に立った 役に立たなかった 3 人中 2 人がこの 投稿 は役に立ったと言っています。

Message

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

とある両建てロジックのEA検証(コードあり)

今回はちょっとしたシンプルな実験を行います。 お題は両建てです。 ポジションが0の場合SLTP付

記事を読む

ティック更新の最大の時間間隔を調べるEA

EAというのはどうしても演算をティック到達に依存しているので、ティックが長時間到達しないというのは意

記事を読む

MT4の”本当の”スプレッドを表示する(チェックソフト配布)

トレードでは基本的にスプレッドが手数料として上乗せされています。通常であればBid=Close(終値

記事を読む

(MQL4)EA内で時間をずらすやり方(日本時間) [EA自作]

EAの演算時刻をずらす方法 MT4の時刻は多くの場合日本時間ではなく、サーバーが置いてある場所

記事を読む

テクニカル指標(RSI)を使ったEAの作り方[EA自作]

今回はテクニカル指標によるEAの一つとして、RSIのEAを作ります。 ※実際に稼働させるEAには他

記事を読む

 
  • fxfx.work

    (↑広告です。このサイトの管理者の運営ではありません)

     


  • 横瀬兼元(ペンネーム)です。

    プロフィール
    商材を買わせようとする偽者がいるらしいのでご注意ください。
    ツイッター始めました(イマサラー)
    https://twitter.com/FxantennaC
    (埋め込みするとページ表示が極端に遅くなるので、リンクでご容赦を) 4000文字未満のトピックや話題はツイッターで発信しています。
  • fxfx.work

    (↑広告です。このサイトの管理者の運営ではありません)

Translate »
ページトップへ