*

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

公開日: : 初心者EA自作 ,

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

 

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

まだ、駆け出しのころは

 

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

 

これだと、

始値のタイミングと

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

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

 

Barsを使う

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

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

 

iBars()を使う

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

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

 

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

 

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

 

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

 

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

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

 

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

 

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

Message

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

CAPTCHA


このコメントはWEBに公開されるので、問い合わせ等はメールなどでお願いします。

関連記事

[MT4]EAに口座縛り/期間限定縛りをかける種類と方法(MT5)

良いEAができると、クレクレ厨がよってきますが、身内の人にならひっそりと配布したい場合もあります。

記事を読む

(MQL4)iCustomでインジケーターをEA化するやり方[EA自作]

インジケーターとiCustom 今回はインジケーターのシグナルを使って、EAを作ります。 iCu

記事を読む

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

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

記事を読む

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

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

記事を読む

MT4チャート上にバイナリーオプションのようなボタンパネルを作ってみた

注:これは、MT4のチャート上でバイナリーオプションのような操作パネルを表示させているだけで、実際に

記事を読む

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

     


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

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

Translate »
ページトップへ