シグナル情報の取得定数:Integer型
シグナル情報の取得定数:Integer型は、シグナルの情報を取得するときに使用されます。
シグナルとは、他人のエントリーポイントを表示する機能です。
主に、SignalBaseGetInteger関数で使用されます。
それぞれ、SignalBaseGetInteger関数の引数として使用されます。
口座情報の取得定数は、Integer型の他にも、String型、Double型があります。
シグナル情報の取得定数:Integer型(ENUM_SIGNAL_BASE_INTEGER)
| 定数 | 返り値の型 | 説明 |
| SIGNAL_BASE_DATE_PUBLISHED | long | シグナルの公開日時 |
| SIGNAL_BASE_DATE_STARTED | long | チャート監視開始日時 |
| SIGNAL_BASE_ID | long | シグナルID |
| SIGNAL_BASE_LEVERAGE | long | シグナルのレバレッジ |
| SIGNAL_BASE_PIPS | long | シグナルの利益(pips) |
| SIGNAL_BASE_RATING | long | シグナルのポジション比率 |
| SIGNAL_BASE_SUBSCRIBERS | long | シグナルの購読数 |
| SIGNAL_BASE_TRADES | long | シグナルの取引数 |
| SIGNAL_BASE_TRADE_MODE | long | シグナルのトレードモード (0:リアル,1:デモ,2:コンテスト) |
シグナル情報の取得定数:Integer型の使い方
主に、SignalBaseGetInteger関数で使用されます。
それぞれ、SignalBaseGetInteger関数の引数として使用されます。
例えば、以下のように使用します。
//SignalBaseGetInteger関数
//シグナルIDを取得
long signalBaseGetInteger = SignalBaseGetInteger(SIGNAL_BASE_ID);
返り値は long型です。
サンプルプログラム
以下は、シグナル情報の取得定数:Integer型を使って、各種シグナル情報を取得・表示するサンプルプログラムです。
//+------------------------------------------------------------------+
//| シグナル情報(Integer型)取得サンプル |
//+------------------------------------------------------------------+
void OnStart()
{
// シグナルの総数を取得
int totalSignals = SignalBaseTotal();
if(totalSignals == 0)
{
Print("利用可能なシグナルがありません。");
return;
}
// 最初のシグナルを選択
if(!SignalBaseSelect(0))
{
Print("シグナルの選択に失敗しました。");
return;
}
// シグナルIDを取得
long signalId = SignalBaseGetInteger(SIGNAL_BASE_ID);
Print("シグナルID: ", signalId);
// シグナルの公開日時を取得
long datePublished = SignalBaseGetInteger(SIGNAL_BASE_DATE_PUBLISHED);
Print("公開日時: ", TimeToString((datetime)datePublished, TIME_DATE | TIME_MINUTES));
// チャート監視開始日時を取得
long dateStarted = SignalBaseGetInteger(SIGNAL_BASE_DATE_STARTED);
Print("監視開始日時: ", TimeToString((datetime)dateStarted, TIME_DATE | TIME_MINUTES));
// シグナルのレバレッジを取得
long leverage = SignalBaseGetInteger(SIGNAL_BASE_LEVERAGE);
Print("レバレッジ: ", leverage);
// シグナルの利益(pips)を取得
long pips = SignalBaseGetInteger(SIGNAL_BASE_PIPS);
Print("利益(pips): ", pips);
// シグナルのポジション比率を取得
long rating = SignalBaseGetInteger(SIGNAL_BASE_RATING);
Print("ポジション比率: ", rating);
// シグナルの購読数を取得
long subscribers = SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS);
Print("購読数: ", subscribers);
// シグナルの取引数を取得
long trades = SignalBaseGetInteger(SIGNAL_BASE_TRADES);
Print("取引数: ", trades);
// シグナルのトレードモードを取得
long tradeMode = SignalBaseGetInteger(SIGNAL_BASE_TRADE_MODE);
string tradeModeStr;
switch((int)tradeMode)
{
case 0: tradeModeStr = "リアル"; break;
case 1: tradeModeStr = "デモ"; break;
case 2: tradeModeStr = "コンテスト"; break;
default: tradeModeStr = "不明"; break;
}
Print("トレードモード: ", tradeModeStr, " (", tradeMode, ")");
}このサンプルでは、SignalBaseSelect関数で最初のシグナルを選択した後、SignalBaseGetInteger関数に各定数を渡してシグナル情報を取得しています。
【補足】シグナル情報の取得定数:Integer型の列挙型(ENUM_SIGNAL_BASE_INTEGER)
シグナル情報の取得定数:Integer型は、ENUM_SIGNAL_BASE_INTEGERという列挙型に含まれています。
列挙型は、定数群をひとまとめにしたものです。
以下のように使います。
ENUM_SIGNAL_BASE_INTEGER signalBaseInteger = SIGNAL_BASE_ID;上記のようにプログラムすると、signalBaseInteger変数に SIGNAL_BASE_IDの数値が代入されます。





