Dr.EAの正規ブログ。EAの編集方法についての記事を書いています。興味がある方は、是非ご覧下さい。2019年11月26日MT4インジケーター作成入門ローソク足を表示させるインジケーターを作成してみよう!ここでは、ローソク足(みたいな形のもの)を表示させるインジケーターの作成方法を解説します。記事一覧で前回までの記事をチェックしよう!「MT4インジケーター作成入門」の記事一覧ローソク足描画のための知識にゃんた博士ぇー!インジケーターの描画タイプにローソク足が無いにゃ!!Dr.EA縦に伸縮する棒と帯を組み合わせてローソク足っぽく見せるんじゃよにゃんた棒と帯??Dr.EAヒストグラムで表示させるのじゃよMT4のヒストグラムの特徴サブウィンドウのヒストグラムは、0を起点にプラス方向やマイナス方向に伸びるグラフです。チャートウィンドウのヒストグラムは、インジケーター用配列2つで1セットとして、縦棒や縦帯を描画します。2つの配列のうち小さい値の方を下端、大きい方を上端として、値の大きい方が棒や帯として描画されます。値の小さい方は、下端を決定するだけでチャート上には描画されません。チャートウィンドウのヒストグラムは、インジケーター用配列のインデックスの並んだ偶数・奇数(例えば、0と1、2と3)でセットにします。奇数・偶数(1と2など)ではセットにできません。重なった部分の表示MetaTrader4のインジケーターは、重なった部分がある場合は後から表示したものが上になり下になったものは隠れてしまいます。赤色のMAを表示させた後、もう1本同じ設定のMAを黄色で表示させた場合、赤色のMAが隠れて黄色のMAのみが表示されます。赤色のMAの幅を太くすると、黄色MAの周りが赤いライン表示になります。1つのカスタムインジケーターで、重なる部分がある場合はインジケーター用配列のインデックス番号が大きい方が上になります。ローソク足描画の準備Dr.EAローソク足描画用のカスタムインジケーターを新規作成していくぞい!新規作成ボタンで新規インジケーターファイルのコードを表示させるのじゃにゃんたあれれ、どうやるんだっけ??にゃんたは振出しに戻った。今回は、ヒゲ用と実体用の2セット(4つのインジケーター表示用バッファ)のヒストグラムを使用します。ヒゲ用の縦棒(太さ1)の上に実体の縦帯(太さ3)をかぶせるようにします。3陽線を青っぽく、陰線を赤っぽく表示するように色を選びました。配列宣言インジケーター用配列にする配列をグローバル領域に次のように宣言します。red_body[];バッファの割り当てと描画タイプ指定OnInit()関数内で、先に宣言しておいた配列をインジケーター用バッファに割り当てて、描画タイプにヒストグラムを指定します。DRAW_HISTOGRAM);ローソク足を表示させる処理OnCalculate()関数内にローソク足を表示させるためのコードを書いていきます。過去のローソク足も表示させるこれまで学んできた通り、過去のローソク足も描画させるために、次ののようにfor()文を使ったコードにします。}インジケーター用配列に値を格納する今回はローソク足を表示させるので、必要な値はそのローソク足の四本値です。実体用の配列blue_body[]とred_body[]には、始値Open[]または終値Close[]の値を代入しますが、どちらにどちらを代入するのかを考えます。□blue上の表をみると、陽線でも陰線でも配列blue_body[]にはClose[]の値を代入して、配列red_body[]にはOpen[]の値を代入すればよいことがわかります。OnCalculate()関数内のfor()文の{}括弧内に次のコードを追加します。Open[i];ヒゲ用の配列ヒゲ用の配列blue_shadow[]とred_shadow[]には、高値High[]または安値Low[]の値を代入しますが、どちらにどちらを代入するのかを考えます。□blue上の表をみると、陽線と陰線でそれぞれ違う値を代入する必要があるので、次のように場合分けをして値を代入します。return(rates_total);}今回の完成ファイル【Sample_Indicator_08.mq4】をダウンロードあとがきローソク足をヒストグラム2セット使用して描画する方法を解説してきました。ローソク足はインジケーターで表示しなくてもチャート上に表示できるのであまり意味がありませんが、平均足などのローソク足っぽいインジケーターを作成するのに今回の記事が役に立つのではと思います。今回完成したインジケーターでは、始値と終値が同じ十字線の場合は、赤色になるようにしてありますが、ヒストグラム3セット目を用意して、十字線の為の色を作るのもよいですね。コメントをキャンセル名前メールアドレス(公開されません)サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。運営者のプロフィール星野慶次EA作成代行「Dr.EA」のメインEAクリエイター。FX自動売買「Dr.EAのブログ」シェアTOPへ。