
MQL4MQL5 時系列データ(バー・価格)
iVolume()
- できること
- 指定したバーのティック出来高を取得する
- 対応
- MQL4・MQL5
iVolume() とは
銘柄・時間足・バーの位置を指定して、そのバーのティック出来高(価格が更新された回数)を返す関数です。FX では実際の取引量ではなく、ティックの数です。
iVolume() の書式と引数
MQL4 の場合MT4
long iVolume(string symbol, int timeframe, int shift)| 引数 | 型 | 省略時 | 説明 |
|---|---|---|---|
symbol | string | 必須 | 銘柄名。チャートの銘柄なら _Symbol(NULL も可)。 |
timeframe | int | 必須 | 時間足。PERIOD_CURRENT(チャートの時間足)、PERIOD_H1、PERIOD_D1 など。 |
shift | int | 必須 | バーの位置。0 が現在(未確定)のバー、1 がひとつ前の確定したバー。 |
戻り値(MQL4)
ティック出来高(long 型)。
MQL5 の場合MT5
long iVolume(
const string symbol,
ENUM_TIMEFRAMES timeframe,
int shift
)| 引数 | 型 | 省略時 | 説明 |
|---|---|---|---|
symbol | const string | 必須 | 銘柄名。チャートの銘柄なら _Symbol(NULL も可)。 |
timeframe | ENUM_TIMEFRAMES | 必須 | 時間足。PERIOD_CURRENT(チャートの時間足)、PERIOD_H1、PERIOD_D1 など。 |
shift | int | 必須 | バーの位置。0 が現在(未確定)のバー、1 がひとつ前の確定したバー。 |
戻り値(MQL5)
ティック出来高(long 型)。
iVolume() の使い方(コード例)
MQL4・MQL5 共通
long v0 = iVolume(_Symbol, PERIOD_CURRENT, 0);
if(v0 == 1)
Print("新しい足の最初のティックです");OnTick()・OnStart() などの関数の中に書いて使う例です。MetaEditor でコンパイルできることを確認済みです。
MQL4 と MQL5 の違い
MQL4 の Volume[shift] にあたります。












