iHigh
iHighの説明
指定した通貨ペア、時間足、バーのシフトの高値を返す。
double iHigh(①string symbol,②int timeframe,③int shift);
①string symbol
高値を取得する通貨ペアの指定。現在のチャートの通貨ペアを指定したい場合は、「NULL」と記述。
②int timeframe
高値を取得する時間軸の指定。
種類 |
定数 |
説明 |
PERIOD_CURRENT |
0 |
現在の時間足 |
PERIOD_M1 |
1 |
1分足 |
PERIOD_M5 |
5 |
5分足 |
PERIOD_M15 |
15 |
15分足 |
PERIOD_M30 |
30 |
30分足 |
PERIOD_H1 |
60 |
1時間足 |
PERIOD_H4 |
240 |
4時間足 |
PERIOD_D1 |
1440 |
日足 |
PERIOD_W1 |
10080 |
週足 |
PERIOD_MN1 |
43200 |
月足 |
⑤int shift
高値を取得したいバーの位置の指定。
現在のバーであれば「0」、1本前のバーであれば「1」、2本前のバーであれば「2」...と記述。
ソースコード例
int OnInit()
{
double high01 = iHigh(NULL,0,0);
double high02 = iHigh(NULL,0,1);
Comment("現在の足の高値は、"+high01+"です。\n"+"1本前の足の高値は、"+high02+"です。");
return(INIT_SUCCEEDED);
}
表示例
注意事項
上記例だと、初期化関数(OnInit)の中で処理を行っているため、インジゲーターをチャートに適用したときの高値を取得して、画面左上に表示しています。
そのため、現在の足の高値が更新されても表示されている高値は更新されません。また、足が確定して、次の足に更新されても表示は更新されません。
常に新しい高値を取得したい場合は、start()の中に記述する必要があります。
関連ページ