18:13:20.インジケーターとiCustom今回はインジケーターのシグナルを使って、EAを作ります。iCustomという関数を使うとインジケーターをEAのロジックに組み込むことができるようになります。すべてのインジケーターがiCustomでデータを取得できるわけではありません。シグナルをバッファとして出力するインジケーターでないとiCustomが使えません。具体的には、チャート上にセットしたインジケーターのラインや矢印にマウスカーソルをのせて、Value1やValue2などという表示がでれば、iCustomでEA化できます。(表示が出なくても、チャート上の表記をEAにそのまま組み込むという荒業もあります。バッファ,シフト);という記述で扱うことができます。インジケーター名の後にはそのインジケーターのパラメータを複数渡すことができます。バッファというのはそのインジケーターが返す値の種類のことです。MT4のインジケーターには8つまでのバッファを組み込むことができ、それぞれのバッファにシグナルのデータが格納されています。バッファ1には上向きの矢印の数値が入っていたり、バッファ2には下向きの矢印のデータが入っていたり、といった具合です。それぞれのバッファにはシグナルのデータが入っているので、iCustomの引数のバッファの数値を変えると、そのインジケーターの上矢印の値や下矢印の値などをそれぞれ取得できます。シフトは欲しい値のロウソク足の場所です。0なら現在のロウソク足、1なら一本前のロウソク足になります。ZigZagインジケーターを例に今回はMT4に標準搭載されているZIGZAG(ジグザグ)というインジケーターでEA化します。デフォルトでインジケーターフォルダにセットされているのでダウンロードする必要はありません。ZigZagは以下のようなジグザグ線を描くインジケーターです。ZigZagはそのロウソク足が頂点になったときにバッファ0と1と2が値を返します。今回は3つ前のロウソク足が頂点になった際にエントリーするロジックを考えます。ZigZagの下向き頂点で買いエントリー、上向き頂点で売りエントリーこれまでに作ったコードをベースにZigZagのEAを作ります。3つ前のロウソク足でのZigZagはiCustom(Symbol(),Period(),"ZigZag",0,3);1iCustom(Symbol(),Period(),"ZigZag",0,3);として記述できます。頂点になった場合にはそのときの高値or安値のレートが返ります。して条件を組んでしまうと、小数点以下で一致しないバグが起こります。)になっていることがあるという訳です。そのため、少数を3桁に四捨五入する関数を使います。少数第何位か)で数の小数点をそろえることができます。その通貨ペアの最小桁数を表すDigitsを使います。NormalizeDouble(iHigh(Symbol(),Period(),3),Digits)となります。NormalizeDouble(iLow(Symbol(),Period(),3),Digits)となります。テスト結果は以下のようになります。リペイントインジケーターに注意ZigZagはリペイント(再描写)を行うので、EAでエントリーしたときの様子と後から見た様子がかなり変わります。このような後出しインジケーターは多く、インジケーターをEA化する際にはこのような点にも注意しなければなりません。・セットしたタイミングによって描写が変わるインジケーターなどがあります。役に立ったと言っています。TweetPREV(MQL4)MT4のチャート上にボタンを作るやり方[EA自作]NEXT(MQL4)初めてのEA自作のための教科書~実用編~[EA自作]関連記事[MT4]EAに口座縛り/期間限定縛りをかける種類と方法(MT5)良いEAができると、クレクレ厨がよってきますが、身内の人にならひっそりと配布したい場合もあります。「EAが動かな~い」というときには様々な原因と可能性がありますが、それらを一個一個解消していかないと記事を読むとある両建てロジックのEA検証(コードあり)今回はちょっとしたシンプルな実験を行います。実践編(EA自作)何年か前に「iCustomを使ってインジケーターをEA化する」という記事を書いたのですが、意外とアク記事を読む(↑広告です。このサイトの管理者の運営ではありません)プロフィール横瀬兼元(ペンネーム)です。プロフィール商材を買わせようとする偽者がいるらしいのでご注意ください。Japan本サイトは、日本在住者にFX取引を勧誘することを意図したものではありません。外国為替取引はすべての投資家に適しているわけではない高水準のリスクを伴います。レバレッジは一層大きなリスクと損失の可能性を生み出します。外国為替取引を決定する前に、投資目的、経験の程度およびリスクの許容範囲を慎重に考慮してください。当初投資の一部または全部を失うことがあります。したがって損失に耐えられない資金投資をしてはなりません。外国為替取引に関連するリスクを検討し、疑義があるときは中立的な財務または税務アドバイザーに助言を求めてください。