MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1687

 
インデックスと返送される注文の量はどう関係しているのですか?いくつかのオーダーを作成し、それらをループさせる。ループは配列ではなく、通常の関数としてOrdersTotalを返す数値になります。なぜなら、注文が格納されている配列インデックスの アドレスが返されないからです。
 

配列サイズは 配列の要素 数(例えばオーダー数)である

最初の要素のインデックスは常に0である。

の場合,最後の1つは配列のサイズより 1つ小さくなります.


要素が1つの配列を作成する場合、その要素にアクセスする唯一の方法は、arr[0]を使用することです。それ以外の場合は、アレイオーバーランエラーが 発生します。

注文の場合も同じで、エラーが出ないだけで、他の方法では最初の要素(注文)にたどり着けません。

 
Документация по MQL5: Операции с массивами
Документация по MQL5: Операции с массивами
  • www.mql5.com
Операции с массивами - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
OrdersTotalは金額だけですが、注文を参照するにはOrderSelectを使用 し、ここではすでに配列を通過していることはわかりました。この点を見落としていました。
 
はい、その通りです。 オーダーセレクト(0,


 
Nerd Trader 配列インデックスの アドレスを返すことはないでしょう。

数字でパスを出すのではなく、取引口座の注文リストでパスを出しているのですそして、注文数はあくまで数字...パスは作れない...100という数字にどうやってパスを作るんだ?まさか...そして、100行のリストでは、それぞれの行のパスを作ることができます。

OrdersTotal() が返す数値は素数 である...常にリストの注文数と一致するように設計されています。

常に1件の注文しかないことが分かっている場合は、OrdersTotal() を使わずに注文番号「0」で作業すればよいのですが...。

 
Nikolay Ivanov #:

数字でパスを出すのではなく、取引口座の注文リストでパスを出しているのですそして、注文数はあくまで数字...パスは作れない...100という数字にどうやってパスを作るんだ?まさか...そして、100行のリストでは、それぞれの行のパスを作ることができます。

OrdersTotal() が返す数値は素数 である...常にリストの注文数と一致するように設計されています。

常に1件の注文しかないことが分かっている場合は、OrdersTotal() を使わずに注文番号「0」で作業すればよいのですが...。

Aleksei Stepanenko(アレクセイ ステパネンコ #:

配列のサイズは配列の要素 数(オーダー数など)です

最初の要素は常にインデックス0である。

の場合,最後の1つは配列のサイズより 1つ小さくなります.


要素が1つの配列を作りたい場合、アクセスする方法はarr[0]を使うしかありません。それ以外の場合は、アレイオーバーランエラーが 発生します。

注文の場合も同じで、エラーが出ないだけで、それ以外の最初の要素(注文)には到達できないのです。

はい、そうです。
 
Nerd Trader OrderSelectを 使用し、すでに配列を経由していることは理解できました。この点を見落としていました。

配列(リスト)はCYCLE(周期)を経ます。オーダーセレクトは、このサイクルで作成されたオーダー番号のオーダーだけを選択し、以降の作業を行う。

Документация по MQL5: Торговые функции / OrderSelect
Документация по MQL5: Торговые функции / OrderSelect
  • www.mql5.com
OrderSelect - Торговые функции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Nerd Trader 配列インデックスの アドレスを返しているのではありません。
このフォームは、ポジションの数を与えることで、どんな配列でも埋めることができるのが便利なところです。私の場合、ArrayResizeがポジションの数に関連しているため、0が供給されるとすべてがクラッシュします。そのため、ポジション数が0以上の場合は、このループに入るという条件を追加しています。私もいつもそれで失敗しているので、今、改めて確認しました。そうしないと、フォルテは配列の0番目の要素を埋めることができないので、このアドバイスは正しいです。
 
素晴らしい、友人たちよ、我々はコンセンサスを得たのだ