MQL4 基礎2

チャート上に縦線を引く

datetime time01 = Time[0];

ObjectsDeleteAll();
ObjectCreate("VLine",OBJ_VLINE,0,time01,0);

1行目:変数time01に現在の時刻(EAを起動した時刻)を代入
2行目:チャート上のオブジェクト(線)をすべて消す
3行目:time01の位置に縦線(名前をVLineとする)を描画

ObjectCreate関数
bool  ObjectCreate("オブジェクト名", オブジェクトの種類, チャート, 横位置, 縦位置);

「オブジェクト名」はその図形を後から修正するときに区別するために決める。
「オブジェクトの種類」は縦線、横線、フィボナッチなどから選ぶ。
「チャート」はどのチャートに描くか。EAを挿入したチャートに描くなら0。
「横位置」はdatetime変数。
「縦位置」はdouble変数。

図形の種類
この他にも色々あります。
図形によっては「横位置」「縦位置」を2点以上指定する必要があります。
2点以上指定する場合、ObjectCreate(.... ,横位置1, 縦位置1, 横位置2, 縦位置2); です。

OBJ_VLINE 垂直線
OBJ_HLINE 水平線
OBJ_TREND トレンドライン
OBJ_CHANNEL チャネル
OBJ_FIBO フィボナッチトレースメント
OBJ_CYCLES 等間隔の連続した垂直線
OBJ_RECTANGLE 長方形
OBJ_TRIANGLE 三角形
OBJ_ARROW_UP 上向き矢印
OBJ_ARROW_DOWN 下向き矢印

 
 

チャート上に水平線を描く

  double price01 = Close[0];  

  ObjectsDeleteAll();
  ObjectCreate("HLine",OBJ_HLINE,0,0,price01);


図形の色を変える
ObjectCreate("HLine",OBJ_HLINE,0,0,price01);
ObjectSet("HLine",OBJPROP_COLOR,Blue); //線の色を青に変える


図形の太さを変える
ObjectSet("HLine",OBJPROP_WIDTH,3); //線の太さを3に変える


図形の位置を変える
ObjectSet("VLine",OBJPROP_TIME1,time02); //横位置をtime02の位置に変更
ObjectSet("HLine",OBJPROP_PRICE1,price02); //縦位置をprice02の位置に変更


指定した図形のみ消す
ObjectDelete(0,"VLine"); //メインチャートのVLineという図形を消す