今日のブログは、「レートを取得する関数」という内容です。
サンプルプログラムはこちらです。Zip圧縮していますので解凍してご利用ください。
サンプルプログラムの使い方は、以下の記事で説明しています。
レートを取得する関数
今回もMetaTrader 4のプログラムの記事です。最近のプログラムの記事が好評でしたので、しばらくはプログラムの記事を書こうと思っています。今回紹介するのはレートを取得する関数です。 一番簡単なレートを取得する方法はAskとBidですが、これら以外にも色々とレートを取得する関数があります。
今回紹介するのは、iOpen関数、iHigh関数、iLow関数、iClose関数の四つです。これらの関数はそれぞれ始値、高値、安値、終値のレートを取得することが出来ます。 使用方法は全て同じです。iOpenを例に出すと下記のようになります。
iOpen( string symbol, int timeframe, int shift)
関数の上にカーソルを置いてキーボードのF1キーを押すと、関数の詳細と引数などの入力方法が出てきます。(ただ、全部英語で出てきますので、少々分かり辛いですが……)iOpenの詳細を出すと上記にように出てきます。これを分かりやすくすると下記のようになります。
iOpen( 通貨ペア,タイムフレーム,シフト)
実際に使用すると下記のようになります。
iOpen(NULL,0,0);
この例では、このシステムを使用しているチャートの通貨ペアと時間足の現在の足の始値のレートを取得しています。通貨ペアはNULL、タイムフレームは0と入力するとこのシステムを使用しているチャートの通貨ペアと時間足を自動的に選択してくれます。
他の関数の実例も書いてみます。
iLow("EURUSD",PERIOD_M15,2);
この例では、ユードルの15分足の二つ前の安値のレートを取得しています。このように、これらの関数を使用すれば、MetaTrader 4で選べる全ての通貨ペア、全ての時間足、全てのバーの始値、高値、安値、終値のレートを取得することが可能です。 例えば、ドル円の15分足のレートとユーロドルの1時間足のレートを同時に判断する売買ルールのシステムを製作することも可能です。
サンプルプログラムは、現在の始値、一つ前の足の高値、15分足の現在の安値、ユーロドル現在の終値のレートを取得して変数に入れ、Comment関数でチャート上に表示しています。