SymbolInfoInteger

指定されたシンボルの対応するプロパティを返します。この関数には2つのバリアントがあります。

1.すぐにプロパティ値を返します。

long  SymbolInfoInteger(
   string                    name,      // symbol
   ENUM_SYMBOL_INFO_INTEGER  prop_id    // identifier of a property
 
   );

2.関数が正常に実行されたかどうかに応じて、trueまたはfalseを返します。成功した場合、プロパティの値は受信者変数に配置され、最後のパラメーターによって参照によって渡されます。

bool  SymbolInfoInteger(
   string                    name,      // symbol
   ENUM_SYMBOL_INFO_INTEGER  prop_id,   // identifier of a property
   long&                     long_var   // here we accept the property value
   );

パラメーター

[in]シンボル名。

prop_id

[in]シンボルプロパティの識別子。値は、ENUM_SYMBOL_INFO_INTEGER列挙の値のいずれかです。

long_var

[out]要求されたプロパティの値を受け取るlong型の変数。

戻り値

long型の値。実行が失敗した場合、エラーに関する情報はGetLastError()関数を使用して取得できます。

  • 4106 —「マーケットウォッチ」でシンボルが選択されていない(利用可能なリストにない)、
  • 4051 —シンボルプロパティの無効な識別子、
  • 4024 —内部エラー。

注意

関数が最後のティックに関する情報を取得するために使用される場合、SymbolInfoTick()を使用することをお勧めします。ターミナルは取引口座に接続されているため、まだ一重引用符が表示されていない可能性があります。そのような場合、要求された値は無期限になります。

ほとんどの場合、SymbolInfoTick()関数を使用するだけで十分で、ユーザーは1回の呼び出しでAsk、Bid、Last、Volume、および最後のティックの到着時刻を受け取ることができます。

例:

void OnTick()
  {
//— obtain spread from the symbol properties
   bool spreadfloat=SymbolInfoInteger(Symbol(),SYMBOL_SPREAD_FLOAT);
   string comm=StringFormat(“Spread %s = %I64d points\r\n”,
                            spreadfloat?“floating”:“fixed”,
                            SymbolInfoInteger(Symbol(),SYMBOL_SPREAD));
//— now let’s calculate the spread by ourselves
   double ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);
   double bid=SymbolInfoDouble(Symbol(),SYMBOL_BID);
   double spread=ask-bid;
   int spread_points=(int)MathRound(spread/SymbolInfoDouble(Symbol(),SYMBOL_POINT));
   comm=comm+“Calculated spread = “+(string)spread_points+” points”;
   Comment(comm);
  }

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">