iHighest

対応するチャート上で見つかった最大値のインデックスを返します(現在のバーとの相対的なシフト)。

int  iHighest(
  const string        symbol,             // 銘柄
  ENUM_TIMEFRAMES     timeframe,          // 期間
  ENUM_SERIESMODE     type,               // 時系列識別子
  int                count=WHOLE_ARRAY,   // 要素数
  int                start=0             // インデックス
 );

パラメータ

symbol

[in]  検索される銘柄です。NULL は現在のシンボルです。

timeframe

[in]  期間です。ENUM_TIMEFRAMES列挙体の値の1つです。0は現在のチャート期間を意味します。

[in]  検索される時系列の識別子です。ENUM_SERIESMODE列挙体の任意の値に等しくなれます。

count=WHOLE_ARRAY

[in]  検索を実行する時系列内の要素の数(現在のバーからインデックスの増加方向に向かって)。

start=0

[in]  最大値の検索が開始される最初のバーのインデックス(現在のバーに対する相対的なシフト)。負の値は無視され、ゼロの値に置き換えられます。

戻り値

対応するチャート上で見つかった最大値のインデックス(現在のバーとの相対的なシフト)またはエラー発生時には-1を返します。エラーの詳細はGetLastError()関数を呼び出して取得できます。

例:

  double val;
//--- 連続する20本のバーの中で最も高い終値の計算
//--- 現在の期間のインデックス4からインデックス23まで
  int val_index=iHighest(NULL,0,MODE_CLOSE,20,4);
  if(val_index!=-1)
     val=High[val_index];
  else
     PrintFormat("iHighest() call error. Error code=%d",GetLastError());