[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 376

 
Integer:

ただし、最初の注文が成行注文の場合のみ。保留中の場合は、何も起こりません。
はい、その通りです。- それは重要な明言です。見逃した。
 
Chiripaha:

そこが(実験のパラメーターの正しさの)ポイントですね。だからこそ、自分に自信がないからこそ、この結果が乖離したら何か間違ったことをしたのかもしれない、と特定するために質問しているのです。これはテストというより、こういう時に、一見よくできたプログラムが失敗して、どこかを探さなければならないことに気づくのです。

この「実験」は偶然に手に入れたものです。並列作業用のプログラムも書きました。この方法は効率が上がらないので、今は断念しました(他のプロジェクトで実現するかもしれません)。その結果、最初のプログラムが処理されない、つまりデータが得られないと、2番目のプログラムが始まらない(より正確には、失敗する)ような事態が発生したのだ。この順番は、EAブロックを配置する窓(=順番)によります。- したがって、ウィンドウの順序が重要である、すなわちエキスパートアドバイザーは並列ではなく、順次処理されると結論づけられる。そして、この順序は、端末のリストにおけるウィンドウの番号付けに依存する。

これが私たちの経験の本質なのです。

しかし、繰り返しになりますが、これは私の結果に対する間違った解釈かもしれません。だから、「滑り」に限らず、今、しつこくこの問題を解いているのです。

EAのオンライン操作のことです。そして、テストの話ですね。テスターのことでしょうか?テスターで複数のEAを同時に動作させるにはどうしたらいいですか?
 
TarasBY:
EAのオンライン操作について言及しました。そして、テストの話ですね。テスターのことでしょうか?テスターで複数のEAを同時に動作させるにはどうしたらいいですか?

いいえ - 間違って(順番が違って)記載しました。- テストというのは、テスターではなく、プログラムのデバッグや機能の洗い出しの段階のテスターという意味です。今回は、資料がないため、mt4の特殊性を確認していました。(時折、これに頼らざるを得ない)。

もちろん、今はオンラインで働くEAの話もありますよ。

 
Chiripaha:

いや~、あれは間違って(首尾一貫性を失い)ますね。- テスターというのは、テスターのことではなく、プログラムをデバッグして、その仕事の特殊性を明らかにする段階のテスターのことである。今回は、資料がないため、mt4の特殊性を確認していました。(時折、これに頼らざるを得ない)。

もちろん、今はオンラインで動くEAについてもです。

端末が同時に複数の取引注文を サーバーに出す可能性を開発者が宣言した場合、どのように順次動作させることで実現できるのでしょうか。
 

皆様、ご返信ありがとうございました。OrdersTotalに 未決済注文が表示されるまでEAが終了しないようにコードを変更してみます。そうすると、2番目は必ずオーダーがあることがわかる。そうであってほしい。

ちなみに、私の経験では、プリントから判断して、EAは順次実行され、何らかの形でキューを作ることさえあります。

 
Arles:

皆様、ご返信ありがとうございました。OrdersTotalに未決済注文が表示されるまでEAが終了しないようにコードを変更してみます。そうすると、2番目は必ずオーダーがあることがわかる。そうであってほしい。

ちなみに、私の経験では、プリントから判断して、EAは順次実行され、何らかの形でキューを作ることさえあります。

Print() は、そのような結論の根拠にはなり得ません。この関数のソースコードをご覧になりましたか?念のため、プリンターはどの時点で時刻を印字するのでしょうか?ファイルへの出力は正確にシーケンシャルに行われ、プリンタはファイルへの出力の瞬間に正確に時刻を書き込むことができるが、記述した事象が発生した瞬間に時刻を書き込むことはできない。
 
TarasBY:
もし開発者が、端末が同時に複数の取引注文をサーバーに出す可能性を宣言した場合、どのように順次作業していけばよいのでしょうか?

これに関しては、何も言えないのが辛いところです。このような開発者と直接コミュニケーションをとって、彼らの主張を理解する方法はほとんどない。

しかし、相手の言うことではなく、自分が実験から得たものを頼りにすることに慣れている私としては、見たままを歌う。- 見えないところは質問して、自分の立ち位置を明確にする。

この(連続した仕事をする)立場は、ごく自然で正しいものだと私は思っているということです。だから、今までこの質問を指定しなかったんです。そうでなければ、ポジションの財務会計に誤りが生じる可能性があるため、正しい。しかし、しかし、これはサーバーレベルでカットすることができます。つまり、何かが正しいかどうかをチェックするのです。しかし、この場合でも、Expert Advisorやターミナルで作業する場合、不要なコマンドや誤ったコマンドが多すぎて、トレードの流れが不要な「ゴミ」で詰まってしまうことになるのです。といった具合に。

 
Chiripaha:

これに関しては、何も言えないのが辛いところです。このような開発者と直接コミュニケーションをとって、彼らの主張を理解する方法はほとんどない。

しかし、相手の言うことではなく、自分が実験から得たものを頼りにすることに慣れている私としては、見たままを歌う。- 見えないものは質問し、自分の立ち位置を明確にする。

要は、そういう(一貫した仕事をする)立場は、ごく自然で正しいことだと私は思っています。だから、以前はなんとなくこの問題にも詳しくなかったんです。そうでなければ、ポジションの財務会計に誤りが生じる可能性があるため、正しい。しかし、しかし、これはサーバーレベルでカットすることができます。何かが正しいかどうかをチェックするのです。しかし、この場合でも、Expert Advisorやターミナルで作業する場合、不要なコマンドや誤ったコマンドが多すぎて、トレードの流れが不要な「ゴミ」で詰まってしまうことになるのです。といった具合に。

読み方-一貫した処理ができれば、このような「菜園」を作る必要はないだろう。(そして忘れてはならないのは、どんな記事も開発者によってモデレートされているということです)。

追伸:私も以前は、誰かの言葉ではなく、自分の経験や論理を頼りにしていました。:)

 
TarasBY:

読んでみて ください。一貫した処理ができれば、このような「菜園」を作る必要はないでしょう。(そして忘れてはいけないのは、どんな記事も開発者によってモデレートされているということです)。

追伸:私も、他人の言葉よりも、自分の経験や論理を頼りにするのが常である。:)

ただ、断言はしていないことを肝に銘じておいてください。逆に、「それは本当なのか、そうでないのか?: ))そして、私が実際に得たものを論拠として挙げてください。

そして、「滑り」の問題は、私にとってはまだ未確認のままです。すなわち、オープン。: ))

節制について推測しています。- しかし、また - 推測は述べることを意味しない。もしそうなら、「スリープ」に対する公式なコメントが出ることを心から願っています。なぜなら、この掲示板では、私の推測のような議論が多く、公式なものはなかなか出てこないからです(もちろん参考書は別ですが-でも、そこではこのテーマに関する情報は乏しく、理解しがたいのです)。そうでなければ、ここでこれほど話題になることはないだろう)。そして同時に、一貫性と並列性について明らかにさせることです。- 私にもわかると便利なんですけどね。

 
Chiripaha:

これに関しては、何も言えないのが辛いところです。このような開発者と直接コミュニケーションをとって、彼らの主張を理解する方法はほとんどない。

しかし、相手の言うことではなく、自分が実験から得たものを頼りにすることに慣れている私としては、見たままを歌う。- 見えないものは質問し、自分の立ち位置を明確にする。

このポジションは(一貫して)ごく自然で正しいものだと私は考えているということです。だから、今までこの質問を指定したことがないのです。そうでなければ、ポジションの財務会計に誤りが生じる可能性があるため、正しい。しかし、しかし、これはサーバーレベルでカットすることができます。何かが正しいかどうかをチェックするのです。しかし、この場合でも、Expert Advisorやターミナルで作業する場合、不要なコマンドや誤ったコマンドが多すぎて、トレードの流れが不要な「ゴミ」で詰まってしまうことになるのです。といった具合に。

すべてのスクリプトとExpert Advisorは、それぞれ独自のスレッドで動作します。トレードオーダーは、彼らから別のキューに集められる。そして、自由貿易の流れの中で分配される。自由貿易の流れの数は8と同じにすることができます。

Print()は、出力する瞬間に出力可能なものを出力する。複数スレッドの存在は、ログから判断することができます。出力は、start()関数の一番最初と一番最後に表示されます。間にディレイを入れる。複数のExpert Advisorを異なるツールで実行する。ログを見てください。あるExpert Advisorの出力の間に、他のExpert Advisorの出力があることがわかります。

void start()
 {
  Print(Symbol(), " Start");
  Sleep(3000);
  Print(Symbol(), " End");
 }