【MQL4定数】シグナル設定の定数:Integer型(ENUM_SIGNAL_INFO_INTEGER)

【辞書】MQLリファレンス

シグナル設定の定数:Integer型

シグナル設定の定数:Integer型は、シグナルの情報を更新・設定するときに使用されます。

シグナルとは、他人のエントリーポイントを表示する機能です。

主に、SignalInfoSetInteger関数で使用されます。

それぞれ、SignalInfoSetInteger関数の引数として使用されます。

 

シグナル設定の取得定数は、Integer型の他にも、String型、Double型があります。

 

シグナル設定の定数:Integer型(ENUM_SIGNAL_INFO_INTEGER)

定数説明
SIGNAL_INFO_CONFIRMATIONS_DISABLEDシグナルと同期させる
SIGNAL_INFO_COPY_SLTP決済の指値・逆指値を同期
SIGNAL_INFO_DEPOSIT_PERCENT預金比率(%)
SIGNAL_INFO_IDシグナルID(読み込みのみ)
SIGNAL_INFO_SUBSCRIPTION_ENABLEDシグナルのトレード許可
SIGNAL_INFO_TERMS_AGREEシグナルの利用規約に同意

シグナル設定の定数:Integer型の使い方

主に、SignalInfoSetInteger関数で使用されます。

それぞれ、SignalInfoSetInteger関数の引数として使用されます。

例えば、以下のように使用します。

  //SignalInfoSetInteger関数
  //シグナルのIDを10に更新
  bool signalInfoSetInteger = SignalInfoSetInteger(SIGNAL_INFO_ID,10);

 

返り値は bool型です。

 

サンプルプログラム

以下は、シグナル設定の定数:Integer型を使ったサンプルプログラムです。各定数を使用してシグナル情報を設定・取得する例を示します。

//+------------------------------------------------------------------+
//| シグナル設定の定数:Integer型 サンプルプログラム                  |
//+------------------------------------------------------------------+
void OnStart()
{
   //--- シグナルのトレードを許可する
   bool resultEnabled = SignalInfoSetInteger(SIGNAL_INFO_SUBSCRIPTION_ENABLED, 1);
   if(resultEnabled)
      Print("シグナルのトレード許可を設定しました");
   else
      Print("シグナルのトレード許可の設定に失敗しました");

   //--- シグナルの利用規約に同意する
   bool resultAgree = SignalInfoSetInteger(SIGNAL_INFO_TERMS_AGREE, 1);
   if(resultAgree)
      Print("利用規約への同意を設定しました");
   else
      Print("利用規約への同意の設定に失敗しました");

   //--- 決済の指値・逆指値を同期する
   bool resultSLTP = SignalInfoSetInteger(SIGNAL_INFO_COPY_SLTP, 1);
   if(resultSLTP)
      Print("決済の指値・逆指値の同期を設定しました");
   else
      Print("決済の指値・逆指値の同期の設定に失敗しました");

   //--- 預金比率を50%に設定する
   bool resultPercent = SignalInfoSetInteger(SIGNAL_INFO_DEPOSIT_PERCENT, 50);
   if(resultPercent)
      Print("預金比率を50%に設定しました");
   else
      Print("預金比率の設定に失敗しました");

   //--- シグナルIDを取得する(読み込みのみ)
   long signalId = SignalInfoGetInteger(SIGNAL_INFO_ID);
   Print("シグナルID: ", signalId);

   //--- 確認ダイアログを無効にする
   bool resultConfirm = SignalInfoSetInteger(SIGNAL_INFO_CONFIRMATIONS_DISABLED, 1);
   if(resultConfirm)
      Print("確認ダイアログを無効にしました");
   else
      Print("確認ダイアログの無効化に失敗しました");
}

 

【補足】シグナル設定の定数:Integer型の列挙型(ENUM_SIGNAL_INFO_INTEGER)

シグナル設定の定数:Integer型は、ENUM_SIGNAL_INFO_INTEGER​という列挙型に含まれています。

列挙型は、定数群をひとまとめにしたものです。

以下のように使います。

ENUM_SIGNAL_INFO_INTEGER signalInfoInteger = SIGNAL_INFO_ID;

上記のようにプログラムすると、signalInfoInteger変数に SIGNAL_INFO_IDの数値が代入されます。