トップ  >  MQL4リファレンス  >  オブジェクト関数  >  ObjectCreate
スポンサーリンク
検索

↑の検索エンジンが表示されない人は、
↓の古い検索エンジンを使用して下さい。
カスタム検索
MQL4リファレンスツリー
ObjectCreate


ObjectCreate


この関数はオブジェクトを生成します。
オブジェクト生成時に名前・タイプ・チャートサブウインドウ座標を指定します。
関数は2種類のバリアントがあります。


関数書式(チャートID指定):
bool  ObjectCreate(
   long          chart_id,      // チャートID
   string        object_name,   // オブジェクト名
   ENUM_OBJECT   object_type,   // オブジェクトタイプ
   int           sub_window,    // ウインドウインデックス
   datetime      time1,         // 1番目の時間のアンカーポイント
   double        price1,        // 1番目の価格のアンカーポイント
   ...
   datetime      timeN  = 0,    // N番目の時間のアンカーポイント
   double        priceN = 0     // N番目の価格のアンカーポイント
   );


関数書式(チャートID指定無し):
bool  ObjectCreate(
   string        object_name,   // オブジェクト名
   ENUM_OBJECT   object_type,   // オブジェクトタイプ
   int           sub_window,    // ウインドウインデックス
   datetime      time1,         // 1番目の時間のアンカーポイント
   double        price1,        // 1番目の価格のアンカーポイント
   datetime      time2,         // 2番目の時間のアンカーポイント
   double        price2,        // 2番目の価格のアンカーポイント
   datetime      time3,         // 3番目の時間のアンカーポイント
   double        price3        // 3番目の価格のアンカーポイント
   );



■引数
引数名 初期値 I/O 詳細
chart_id - In チャートID
object_name - In オブジェクト名。
チャート(サブウインドウを含め)内で固有の名称である必要があります。
object_type - In オブジェクトタイプ。
ENUM_OBJECT列挙の値を指定します
sub_window - In チャートサブウインドウの番号。
0はメインチャートウインドウを意味します。
指定したサブウインドウ番号は存在しているもの(WindowsTotal()関数で返される値未満)に限ります、
存在していないサブウインドウ番号を指定した場合は戻り値にfalseが返されます。
time1 - In 1番目の時間のアンカーポイント
price1 - In 1番目の価格のアンカーポイント
time2 0 In 2番目の時間のアンカーポイント
price2 0 In 2番目の価格のアンカーポイント
time3 0 In 3番目の時間のアンカーポイント
price3 0 In 3番目の価格のアンカーポイント
timeN 0 In N番目の時間のアンカーポイント
priceN 0 In N番目の価格のアンカーポイント


■戻り値
オブジェクト作成された場合はtrueを返します。
既に同じ名前のオブジェクトが作成されている場合はfalseを返します。
エラーコードの確認はGetLastError()関数を使用します。


■備考
OBJ_LABELタイプのオブジェクトは座標設定(引数のtime,price)を無視します。
ObjectSet()関数を使用して、OBJPROP_XDISTANCEOBJPROP_YDISTANCEプロパティで設定する必要があります。

座標は引数のtimeとpriceのペアで渡す必要があります。
例えば、OBJ_VLINEタイプのオブジェクトは時間(time1)だけ必要ですが、
価格(price1)の値も渡す必要があります(この場合価格の値は任意の値で構いません)。


サンプルソース:
void OnInit(){
    // オブジェクト全削除
    ObjectsDeleteAll();

    // 垂直線オブジェクト(Time[10]の位置に作成)
    ObjectCreate("obj_vline",OBJ_VLINE,0,Time[10],0);

    // Time[10]とClose[10]のピクセル座標取得
    int pixcel_x,pixcel_y;
    ChartTimePriceToXY( 0,0, Time[10],Close[10], pixcel_x,pixcel_y );

    // テキストラベルオブジェクト生成
    ObjectCreate( "obj_label", OBJ_LABEL,0,0,0);               // テキストラベルオブジェクト生成
    ObjectSet(    "obj_label", OBJPROP_XDISTANCE,pixcel_x);    // テキストラベルオブジェクトX軸位置設定
    ObjectSet(    "obj_label", OBJPROP_YDISTANCE,pixcel_y);    // テキストラベルオブジェクトY軸位置設定

    // テキストラベルオブジェクト、テキストタイプ設定
    ObjectSetText("obj_label", "ラベル表示" , 11 , "MS ゴシック" , clrWhite); 
}


結果:





スポンサーリンク
スポンサーリンク


Copyright ©2015 MT4でEA自作しちゃお~ All Rights Reserved.


Top

inserted by FC2 system