SignalBaseSelect

端末で利用可能なシグナルから操作を続けるためにシグナルを選択します。

bool  SignalBaseSelect(
  int    index     // シグナルインデックス
  );

パラメータ

index

[in]  売買シグナルのベースにおけるシグナルインデックス

戻り値

成功の場合は true、それ以外の場合は false。エラーの詳細を読むには GetLastError() を呼びます。

例:

void OnStart()
 {
//--- 端末のシグナルの総量を取得する
  int total=SignalBaseTotal();
//--- 全てのシグナルを処理する
  for(int i=0;i<total;i++)
    {
    //--- シグナルをインデックスで選択する
    if(SignalBaseSelect(i))
       {
        //--- シグナルプロパティを取得する
        long   id    =SignalBaseGetInteger(SIGNAL_BASE_ID);         // シグナル ID
        long   pips  =SignalBaseGetInteger(SIGNAL_BASE_PIPS);       // ピップス単位での利益
        long   subscr=SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS); // サブスクライバの数
        string name  =SignalBaseGetString(SIGNAL_BASE_NAME);         // シグナル名
        double price =SignalBaseGetDouble(SIGNAL_BASE_PRICE);       // シグナル価格
        string curr  =SignalBaseGetString(SIGNAL_BASE_CURRENCY);     // シグナル通貨
        //--- 全ての収益性の高い無料の信号をサブスクライバとともに出力する
        if(price==0.0 && pips>0 && subscr>0)
          PrintFormat("id=%d, name=\"%s\", currency=%s, pips=%d, subscribers=%d",id,name,curr,pips,subscr);
       }
    else PrintFormat("Error in call of SignalBaseSelect. Error code=%d",GetLastError());
    }
 }