SignalBaseGetString 関数
この関数は、選択したシグナルの文字列型のプロパティ値を取得します。
取得できるプロパティ値は ENUM_SIGNAL_BASE_STRING 列挙値にある内容です。
シグナルの選択は SignalBaseSelect関数を使用します。
データ型と構成・戻り値
string SignalBaseGetString(①);
戻り値は、選択したシグナルの文字列型のプロパティ値を返します。
引数 [1]
SignalBaseGetString関数は 1個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | property_id | enum | - | - | シグナルのプロパティ識別子。 ENUM_SIGNAL_BASE_STRING 列挙値から選択します。 |
使用例
SignalBaseGetString関数による選択シグナルプロパティ値の確認
SignalBaseGetString関数を使ってインデックスが「999」のシグナルのプロパティ値 (文字列型) を確認します。
コード
// SignalBaseGetString関数による選択シグナルプロパティ値の確認
#property strict
void OnInit() {
int s_index=999; // ★選択するシグナルのインデックス
int t=SignalBaseTotal();
if(s_index >= t) {
Print("インデックスを 0~", t-1, "の範囲で設定して下さい。");
} else {
SignalBaseSelect(s_index);
Print("①シグナルID:", SignalBaseGetInteger(SIGNAL_BASE_ID)); // 0
Print("②シグナル購読開始日:",(datetime)SignalBaseGetInteger(SIGNAL_BASE_DATE_PUBLISHED)); // 1
Print("③モニタリング開始日:",(datetime)SignalBaseGetInteger(SIGNAL_BASE_DATE_STARTED)); // 2
Print("④購読数:", SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS)); // 4
Print("⑤アカウントの種類:", SignalBaseGetInteger(SIGNAL_BASE_TRADE_MODE)); // 5
Print("⑥アカウントのレバレッジ:", SignalBaseGetInteger(SIGNAL_BASE_LEVERAGE)); // 6
Print("⑦取引回数:", SignalBaseGetInteger(SIGNAL_BASE_TRADES)); // 7
Print("⑧利益(単位:Pips):", SignalBaseGetInteger(SIGNAL_BASE_PIPS)); // 8
Print("⑨ポジション比率:", SignalBaseGetInteger(SIGNAL_BASE_RATING)); // 9
Print("⑩ブローカー名:", SignalBaseGetString(SIGNAL_BASE_BROKER)); //10
Print("⑪ブローカーサーバー:", SignalBaseGetString(SIGNAL_BASE_BROKER_SERVER)); //11
Print("⑫シグナル名:", SignalBaseGetString(SIGNAL_BASE_NAME)); //12
Print("⑬シグナル作成者のログイン:", SignalBaseGetString(SIGNAL_BASE_AUTHOR_LOGIN)); //13
Print("⑭シグナルの基軸通貨:", SignalBaseGetString(SIGNAL_BASE_CURRENCY)); //14
Print("⑮シグナル購読価格:", SignalBaseGetDouble(SIGNAL_BASE_PRICE)); //15
Print("⑯利益:", SignalBaseGetDouble(SIGNAL_BASE_GAIN)); //16
Print("⑰口座残高:", SignalBaseGetDouble(SIGNAL_BASE_BALANCE)); //17
Print("⑱最大ドローダウン:", SignalBaseGetDouble(SIGNAL_BASE_MAX_DRAWDOWN)); //18
Print("⑲証拠金:", SignalBaseGetDouble(SIGNAL_BASE_EQUITY)); //19
Print("⑳投資利益率(%):", SignalBaseGetDouble(SIGNAL_BASE_ROI)); //20
Print("選択シグナルインデックス:", s_index, " 全シグナル数:", t);
}
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)
行の後ろにあるコメントの数値は、引数①の識別子に対応する値です。識別子の代わりにこの値を使うこともできます。
結果
他のシグナルを確認したい場合は、5行目の「int s_index=999;」の値を変えてください。