オーダー_ポジション_ID

 

こんにちは。

を使っている人はいますか?

 if ( OrderSelect( ticket ) )
 {
  long pos_id = long( OrderGetInteger( ORDER_POSITION_ID ) );

  if ( pos_id > 0 )
  {
  }
}

私、注文が部分的に実行されるとき pos_id は常に 0 になります。

なぜ?

MQのヘルプより。

オーダー_ポジション_ID

注文が執行されたときに付けられるポジション識別子。実行された各注文は、新しいポジションを 開いたり、既存のポジションを変更したりする取引を 発生させます。このポジションの識別子は、この時点で約定した注文に設定されます。

 
誰も知らないの?
 
使っています :)注文をポジションにリンクさせる必要があるときに、マジックとして
 
Yurich:
使っています :)マジックとして、注文とポジションをリンクさせる必要がある場合。

では、なぜ0なのか?

だって、ヘルプに書いてあったら、こう書いてあったでしょう。

ポジションID注文が執行 されたときに付けられる。

それなら、ゼロでいいのかもしれません。

でも、こう書いてある。

実行された各注文は新しいポジションを開く、または 既存のポジションを変更 する取引を発生さ せます。このポジションの識別子には、その時点で約定している注文が設定されます。

そして、部分的に実行された注文も取引を発生させる。

どういうことですか?

 
Mikalas:

では、なぜ0なのか?

servicedeskにあります。

誰か使っているのか」という質問に答えていたのですが、不正確でした、ポジションIDを使って います。

 
Yurich:

servicedeskにあります。

誰か使っているのか」という質問に答えていたのですが、不正確でした、ポジションIDを使って います。

なるほど、ありがとうございます。

しかし、それは位置の識別子であり、注文時のみである。

 
Mikalas:

私の場合、注文が部分的に実行された場合、pos_idは常に0になります。

なぜ?

pos_idは何のためにあるのか理解できないためか、使っていません。

前のポジションを閉じて、新しいポジションを開く(フリップ)場合、注文はどのようなIDを持つべきなのでしょうかね?

p.s.市民の 取引ポジションは1つだけであるべきだという考え方です(買い、売り、ヘッジのどの方法であっても)。位置がないようであれば、一時的なものです)。

 
Serj_Che:

pos_idは何に使うのか理解できないからか、使っていません。

前のポジションを閉じて、新しいポジションを開く(フリップ)場合、注文はどのようなIDを持つべきなのでしょうかね?

p.s.市民の 取引ポジションは1つだけであるべきだという考え方です(買い、売り、ヘッジのどの方法であっても)。位置がないようであれば、一時的なものです)。

この文献では曖昧な表現がなされているため、混乱が生じます。

というように、異なる解釈をされる可能性があります。一部実行された注文も作成されるため

そのため、オーダーにはORDER_POSITION_IDを 割り当てる必要があります。

 
Mikalas:

こんにちは。

を使っている人はいますか?

注文が部分的に約定したときは、いつもpos_id = 0にしています。

なぜ?

ORDER_POSITION_IDは、取引サーバーがまだ取引に関する情報を送信する時間がない、注文が実行された直後に要求 されるからかもしれません。

記事を読むMetaTrader 5のトレードイベント


 
Rosh:

これは、ORDER_POSITION_ID が注文実行直後に要求されるため、取引サーバーが取引に関する情報を送信 する時間がまだないためと思わ れます。

記事を読むMetaTrader 5のトレードイベント


答えに自信がない?
 
Rosh:

おそらく、ORDER_POSITION_IDは注文が実行された直後、取引サーバーがまだ取引に関する情報を送信する時間がないときに要求さ れるからでしょう。

記事を読むMetaTrader 5のトレードイベント


明確ではありません。チケットがあれば、トランザクションが実行され、サーバーからレスポンスを受け取っています。

チケットはあるが、サーバーに回答が届いていないとはどういうことでしょうか?

理由: