int OrdersTotal();
■説 明:エントリー中の注文と保留中注文の総数を返す。
■引 数:なし
■戻り値:エントリー中の注文数と保留中注文数の合計
■具体例:
void OnStart() {
Print( "注文総数:" , OrdersTotal() );
}
■結 果:
(※数字は適当)
■参 考:
bool OrderSelect( int index, int select, int pool = MODE_TRADES );
■説 明:
3つの引数を指定して、該当の注文(オーダー)を選択する。注文の選択に成功した場合はtrue、失敗した場合はfalseを返す。
OrderSelect関数は大きく分けて3通りの使い方がある。
- インデックス番号を指定して、トレーディング(取引)プールからオーダーを選択
- インデックス番号を指定して、ヒストリー(履歴)プールからオーダーを選択
- チケット番号を指定してオーダーを選択
■引数:
<1と2のパターン>
第1引数:indexに、インデックス(管理番号)を指定する場合、
第2引数:selectには、「SELECT_BY_POS」を指定し、
第3引数:poolには、「MODE_TRADES」、「MODE_HISTORY」のいずれかを指定する。
取引プールから注文を選択する場合、「MODE_TRADES」を指定。(エントリー中の注文、保留中の注文)
履歴プールから注文を選択する場合、「MODE_HISTORY」を指定。(決済済み注文・キャンセルした注文)
<3のパターン>
第1引数:indexに、チケット番号を指定する場合、
第2引数:selectには、「SELECT_BY_TICKET」を指定する。
注文プール=オーダープール(order pool)
「トレーディング(取引)プール」と「ヒストリー(履歴)プール」をまとめた呼称。
インデックス(index)
オーダープールに集まっているオーダーに割り振られた管理番号のこと。このインデックスの番号は、オーダープールに来た順番に、0, 1, 2, … と割り振られるため、必ず0から始まる連番となる。
■戻り値:true または false
■具体例:
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
■結 果:省略
■参 考:
string OrderSymbol();
■説 明:現在選択中の注文の通貨ペア名を返す。
■引 数:なし
■戻り値:現在選択中の注文の通貨ペア名
■備 考:事前にOrderSelect()関数で対象の注文を選択する必要がある。
■具体例:
Print( "選択した注文の通貨ペア:", OrderSymbol() );
■結 果:
(※通貨ペア名は適当)
■参 考:
string Symbol();
■説 明:現在チャートの通貨ペア名を返す。
■引 数:なし
■戻り値:現在チャートの通貨ペア名を格納するシステム変数_Symbolの値
■具体例:
Print( "現在チャートの通貨ペア名:", Symbol() );
■結 果:
(※通貨ペア名は適当)
■参 考:
int OrderMagicNumber();
■説 明:現在選択中の注文のマジック(識別)ナンバーを返す。
■引 数:なし
■戻り値:現在選択中の注文のマジック(識別)ナンバー。
■備 考:事前にOrderSelect()関数で対象の注文を選択する必要がある。
■具体例:省略
int OrderType();
■説 明:現在選択中の注文の、注文タイプを返す。
■引 数:なし
■戻り値:現在選択中の注文の、注文タイプ。注文タイプはオーダープロパティ列挙の値=「OrderSend()関数で使用する注文タイプ」
■備 考:事前にOrderSelect()関数で対象の注文を選択する必要がある。
■具体例:省略
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA)
{
if(OrderType()==OP_BUY) buys++;
if(OrderType()==OP_SELL) sells++;
}
}
コメント