1 2 3 |
int OrdersTotal(); |
■説 明:エントリー中の注文と保留中注文の総数を返す。
■引 数:なし
■戻り値:エントリー中の注文数と保留中注文数の合計
■具体例:
1 2 3 4 5 |
void OnStart() { Print( "注文総数:" , OrdersTotal() ); } |
■結 果:
(※数字は適当)
■参 考:
1 2 3 |
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
■具体例:
1 2 3 |
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break; |
■結 果:省略
■参 考:
1 2 3 |
string OrderSymbol(); |
■説 明:現在選択中の注文の通貨ペア名を返す。
■引 数:なし
■戻り値:現在選択中の注文の通貨ペア名
■備 考:事前にOrderSelect()関数で対象の注文を選択する必要がある。
■具体例:
1 2 3 |
Print( "選択した注文の通貨ペア:", OrderSymbol() ); |
■結 果:
(※通貨ペア名は適当)
■参 考:
1 2 3 |
string Symbol(); |
■説 明:現在チャートの通貨ペア名を返す。
■引 数:なし
■戻り値:現在チャートの通貨ペア名を格納するシステム変数_Symbolの値
■具体例:
1 2 3 |
Print( "現在チャートの通貨ペア名:", Symbol() ); |
■結 果:
(※通貨ペア名は適当)
■参 考:
1 2 3 |
int OrderMagicNumber(); |
■説 明:現在選択中の注文のマジック(識別)ナンバーを返す。
■引 数:なし
■戻り値:現在選択中の注文のマジック(識別)ナンバー。
■備 考:事前にOrderSelect()関数で対象の注文を選択する必要がある。
■具体例:省略
1 2 3 |
int OrderType(); |
■説 明:現在選択中の注文の、注文タイプを返す。
■引 数:なし
■戻り値:現在選択中の注文の、注文タイプ。注文タイプはオーダープロパティ列挙の値=「OrderSend()関数で使用する注文タイプ」
■備 考:事前にOrderSelect()関数で対象の注文を選択する必要がある。
■具体例:省略
1 2 3 4 5 6 7 8 9 10 11 |
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++; } } |
コメント