MQL4で原理的に解決可能なタスクですか? - ページ 3

 

決議としてのマスターは、GVで開くことができる注文の最大許容数を合計してみましょう。各スレーブは、まずGV>0であればこのGVを1つ減らし、次にオーダーを開く。各スレーブがまず注文を開ける権利を獲得し、注文を開けるというものだ。

 

8人の奴隷の代わりに、8人のアナーキストが群がっているのです ;))

親方の許可を得て、この無秩序な集団が野原に出て、好き勝手なことをするのです。

 
avtomat:

そして、なぜ、なぜ、同じマジックが2つも作られているのか?

グローバル変数を使って、含まれるEAに重ならない魔法領域を割り当てることができる。対応するチェックと代入はinit()で行われる。

さらに、各シンボルに対して開く注文の数を、明示的に指定するか、マスターを指定して制限することができ、マスターが制御することになる現在の一般的な状況に応じて、制限することができます。


"そして、なぜ、どうして、同じ魔法使いが2人作られるのか?"

それは私のミスです。同じではなく、もちろん違う。

問題は、奴隷EAがセッターで、それぞれが8つのニーを開くことができ、もちろん同一のメイジを持つということです。

私のコードはExpert Advisorの活動を制限し、一度に2つ以上のペアのグリッドを構築しないようにする必要があります。

オープンしたマジシャンを比較する配列を使ったループを書きました。もし2つの異なるマジシャンがすでにオープンしていたら、つまり2組がすでにネットを作り始めていたら、グローバル変数が 残りの組の新しいネットを作ることを禁止しています。楽器で制限することも可能で、要は制限するのですが、うまくいかないというか、うまくいくのですが、ウィザードが「そろそろグローバル変数を上書きしようかな」と思う暇がないのです。

 
avtomat:

8人の奴隷の代わりに、8人のアナーキストが群がっているのです ;))

親方の許可を得て、この無秩序な集団が野原に出て、好き勝手なことをするのです。


その通り、彼らはグローバルに従いますが、マスターに発言の機会が与えられる限り、群衆はすでに2組ではなく4〜6組に散らばっているのです
 
Sepulca:

決議としてのマスターは、GVで開くことができる注文の最大許容数を合計してみましょう。各スレーブは、まずGV>0であればこのGVを1つ減らし、次にオーダーを開く。各スレーブがまず注文を開ける権利を獲得し、注文を開けるというものだ。


トレーディングEAのコードに入り込むことは、オプションではなく、彼らが耳を傾けるのは、グローバル
 
スレーブが何らかのアクションを起こした場合、マスターに報告する必要があります。そして、主人はその要約を述べ、それに基づいて奴隷のその後の行動(あるいは不作為)を決定する。
 
そのため、この問題がmql4の助けを借りて解決できるかどうか尋ねました。多分、新しいソリューションか、ターミナル全体をハングアップさせずにマスターを起動する狡猾な方法だと思いますが、マスターが投票権を与えられた時ではなく、常に動作するようにするためです。
 

各スレーブslave1, slave2, ..., slave8には、それぞれのセマフォwork1, work2, ..., work8を割り当てることができます。

スレーブはアクションを許可するリクエストを送信しなければならない -- quest1, quest2, ..., quest8.

要求を受けたマスターは、セマフォを管理する。

 
avtomat:

各スレーブslave1, slave2, ..., slave8には、それぞれのセマフォwork1, work2, ..., work8を割り当てることができます。

スレーブはアクションを許可するリクエストを送信しなければならない -- quest1, quest2, ..., quest8.

要求を受けたマスターは、セマフォを管理する。

円は閉じているか?
つまり、「スレーブのコードに入り込まないと、問題は解決しない」ということですね。

巧妙なマスターループを期待していたのですが...。

 

Zakyza:

つまり、スレーブコードに入らないと、問題は解決できない?

「スレーブコードに入らないと」とは、どういう意味ですか?利用できないのでしょうか?