string Symbol()
現在の金融商品の名前を文字列で返す。
Sample:
int total=OrdersTotal();
for(int pos=0;pos
{
// 注文が閉じているか取り消されているかもしれないので
// 選択可能かをチェックする
if(OrderSelect(pos, SELECT_BY_POS)==false) continue;
if(OrderType()>OP_SELL || OrderSymbol()!=Symbol()) continue;
// performs some processing…
}
int Period()
期間(チャート時間枠)で定義された時間(分)を返す。
Sample:
Print("Period is ", Period());
void WindowRedraw( )
現在のチャートを強制的に再描画させる。
通常、オブジェクトプロパティが変更された後に使われる。
Sample:
//---- set new properties for some objects
ObjectMove(object_name1, 0, Time[index], price);
ObjectSet(object_name1, OBJPROP_ANGLE, angle*2);
ObjectSet(object_name1, OBJPROP_FONTSIZE, fontsize);
ObjectSet(line_name, OBJPROP_
int WindowBarsPerChart()
チャート上に表示されている足の数を返す。
Sample:
// work with visible bars.
int bars_count=WindowBarsPerChart();
int bar=WindowFirstVisibleBar();
for(int i=0; i
{
// …
}
string WindowExpertName()
この関数が呼ばれたMQL4プログラムに依存する、実行中のエキスパート、スクリプト、カスタムインジケータ、ライブラリの名前を返す。
Sample:
string name=WindowExpertName();
GlobalVariablesDeleteAll(name);
int WindowFind(string name)
nameの名前を持つインジケータが見つかれば、この関数はそのインジケータが含まれているウィンドウ番号を返す。それ以外は-1を返す。
Note:もしカスタムインジケータのinit()関数内でWindowFind()関数を呼び出すと-1を返す。
Parameters:
name - 簡易インジケータ名
Sample:
int win_idx=WindowFind(“MACD(12,26,9)”);
int WindowFirstVisibleBar()
現在のチャートの一番左に見えている(初めて現れる)足の番号を返す。足番号は最新から最古の逆順で番号付けされていることに注意するべきである。
現在の足や価格配列で最も新しい足の番号は0である。
最古の足の番号はBars-1である。
もし初めて現れる足番号が2もしくはチャート上に表示されている足の数より小さい場合、チャートウィンドウは完全に表示されていないことを意味し、左にスペースがある。
Sample:
// work with visible bars.
int bars_count=WindowBarsPerChart();
int b
int WindowHandle( string symbol, int timeframe)
チャートのシステムウィンドウハンドルを返す。
もし関数が呼び出されるまで、symbol、timeframeのチャートが開かれていなかった場合、0を返す。
Parameters:
symbol - 計算したい通貨名。NULLを指定すると現在の通貨。
timeframe - 時間枠。時間枠列挙型のどれか。0は現在の時間枠。
Sample:
int win_handle=WindowHandle(“USDX”,PERIOD_H1);
if(win_handle!=0)
Print(“USDX,H1
bool WindowIsVisible( int index)
もしチャートサブウィンドウが可視化されているならTRUEを、それ以外はFALSEを返す。
チャートサブウィンドウはインジケータ内の可視化プロパティによって見えなくすることができる。
Parameters:
index - チャートサブウィンドウ番号
Sample:
int maywin=WindowFind(“MyMACD”);
if(maywin>-1 && WindowIsVisible(maywin)==true)
Print(“window of MyMACD is visible”);
else
double WindowPriceMax(int index=0)
現在のチャートの指定されたサブウィンドウ(メインウィンドウ:0, サブウィンドウ1:1, …,)における垂直方向の最高値を返す。
もしサブウィンドウ番号が指定されていなければ、メインウィンドウの最高値を返す。
関連項目:WindowPriceMin()、WindowFirstVisibleBar()、WindowBarsPerChart()
Parameters:
index - サブウィンドウ番号(0:メイン)
Sample:
double top=WindowPriceMax();
double bott