マーケット情報の取得について

Eyecatch MetaTrader 4 プログラム中級編

 今回の記事は、「マーケット情報の取得について」です。

MarketInfo関数

 まずマーケット情報についてですが、これは各通貨ペアのAsk、Bid、スプレッド、スワップなど、その通貨ペアに関する情報です。マーケット情報を引き出す関数はMarketInfo関数になります。

double MarketInfo( string symbol, int type)

 戻り値はdouble型で戻り、引数は通貨ペア(symbol)、何の情報か(type)になります。

 通貨ペアは証券会社によっては通貨ペア名の後にproなどが付いている場合がありますが、その場合はそれも入力してください。

 typeはかなりの数がありますので、詳しくはMQL4でMarketInfoと入力して、それにカーソルを合わせてキーボードのF1キーを押してください。MarketInfoのヘルプが出てきますので、そこからtypeのリンクを選択してください。

 下記に例を書かせて頂きます。

MarketInfo("EURUSD",MODE_BID);

 ユーロドルのBidを取得します。

MarketInfo("USDJPY",MODE_ASK);

 ドル円のAskを取得します。

MarketInfo("EURJPY",MODE_POINT);

 ユーロ円の1Pipsの通貨単位を取得します。レートの少数点が2桁なら0.1、小数点が3桁なら0.01などです。

MarketInfo("GBPUSD",MODE_DIGITS);

 ポンドドルの有効桁数を取得します。レートの少数点が4桁なら4、小数点が5桁なら5などです。

MarketInfo("EURGBP",MODE_SPREAD);

 ユーロポンドのスプレッドを取得します。単位はPipsになります。

 MarketInfo関数は主にAの通貨ペアのチャートでEAを動かしている時にBの通貨ペアの情報を取得したい時に取得します。Aの通貨ペアのチャートでEAを動かしていてもBの通貨ペアのポジションを取得可能ですので、この関数を使用すれば一つのEAで複数の通貨ペアの売買が行えます。

 また、同じチャートの情報でもMarketInfo関数でしか取得出来ない情報もありますので、色々と調べて見てください。

注意

内容には注意を払っていますが、保障は出来ません。
実際に運用する場合は、自己責任でお願いします。 

タイトルとURLをコピーしました