どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 337

 
tara:

松葉杖、イミフ。
+
 

こんにちは。

使用する機能の集合体であるライブラリの仕組みについて教えてください。

つまり、1つのライブラリから2つのEAで関数を呼び出す場合、異なるペアにぶら下がっている - 各EAのために、ライブラリの独自のインスタンスをロードして初期化するのでしょうか?

あるいは、ライブラリの同じ(内部)変数が競合的に使われることを期待するのか?

簡単に言うと、私はいくつかの関数をライブラリ(私が必要としない*.mqh)に構築し、これらの関数は、実際のデータを格納するためにライブラリで宣言された変数/配列を使用しています。このデータはすべてのシンボルに共通ですが、アクティブなEAのいずれかによってランダムな時間に変更される可能性があります。1つのEAを動かしているときは問題ないのですが、2つのEAを動かすとわけのわからない亀裂(乱雑なデータ)が入り、変数へのアクセス 権が曲がっているのではと疑ってしまうのです。

 
Mr.Profit:

こんにちは。

使用する機能の集合体であるライブラリの仕組みについて教えてください。

つまり、1つのライブラリから2つのEAで関数を呼び出す場合、異なるペアにぶら下がっている - 各EAのために、ライブラリの独自のインスタンスをロードして初期化するのでしょうか?

あるいは、ライブラリの同じ(内部)変数が競合的に使われることを期待するのか?

簡単に言うと、私はいくつかの関数をライブラリ(私が必要としない*.mqh)に構築し、これらの関数は、実際のデータを格納するためにライブラリで宣言された変数/配列を使用しています。このデータはすべてのシンボルに共通ですが、アクティブなEAのいずれかによってランダムな時間に変更される可能性があります。1つのEAを動かしているときは問題ないのですが、2つのEAを動かすとわけのわからない亀裂(乱雑なデータ)が入り、変数へのアクセス権が曲がっているのではと疑ってしまうのです。

これです
 

ご存知のように、端末の最下行には、例えば次のような情報が含まれています。

残高:211721.72 資金:101193.75 担保を設定。55595.98 フリー:45481.77 レベル:181.81% -110643, 34 (約)

しかし、私の端末の1つ、リアルセント口座では、オープンポジションがあるにもかかわらず、以下の情報しか表示されないのです。

残高:211721,72 ファンド:101193,75 -110643,34

その理由は何でしょうか。ご清聴ありがとうございました。

 
borilunad:

テスターではMarketInfo()が動作せず、BidとAskが遅く、歪んでいます。そこで、Xrust'aのアドバイスにより、iClose(NULL,0,0)から取得することにしました。


もうこれだけ書いて、テスターで動かしてロジックエラーがないことを確認して、......。今になって、私のテスターではMarketInfp()が機能しないことがわかりました。

じゃあ、私は何をそんなに注意深くチェックしているんだ?どのような効果があるのでしょうか?

シャイターン!!!

 
TarasBY:


ありがとうございます。

1つのEAが2つのペアをホバリングしている場合、どのように機能するのでしょうか?つまり、呼び出しモジュールは1つ(expert.ex4)なのか2つ(2つの実行インスタンス)なのか?

 
Mr.Profit:


ありがとうございます。

1つのEAが2つのペアをホバリングしている場合、どのように機能するのでしょうか?つまり、呼び出しモジュールは1つ(expert.ex4)なのか2つ(2つの実行インスタンス)なのか?

システムライブラリとは異なり、カスタムライブラリ(MQL4)は、呼び出されたライブラリが他のモジュールによってロードされたかどうかに関係なく、呼び出したモジュールごとに別々にロードされます。例えば、caller.ex4 モジュールは lib1.ex4 および lib2.ex4 ライブラリから関数を呼び出します。その結果、lib1.ex4ライブラリは、lib2.ex4ライブラリの関数を呼び出します。この場合、すべての呼び出しがcaller.ex4モジュールから行われているにもかかわらず、lib1.ex4ライブラリの1つのコピーとlib2.ex4ライブラリの2つのコピーがロードされることになります。
それぞれのEA(チャートにいくつぶら下がっていても)は、独自の呼び出しモジュール(EAファイル)を持っています。
 
私は指標を見つけた場合教えて ください MACD_Histogram.mq4 リンクによってhttps://www.mql5.com/ru/code 指標のマニュアルを見つけることができます。私は基本的に私は矢印で取引できることを理解したが、私はそれに他の指標を示すかを知りたい。 あなたが読むか見ることができる誰かがリンクを持っている場合は、回答または Aleks-R-13@yandex.ru にメールを送信してください。感謝
 
TarasBY:
それぞれのEA(チャートにいくつぶら下がっていても)には、独自の呼び出しモジュール(EAファイル)があります。 。

混乱を最終的に明らかにするために、テスト用EAとライブラリを書きました。

Expert Advisorは、ライブラリから変数の現在値をCommentに 出力するだけで、EURUSDの場合は変数の値を増やします。変数の受け取りとそのインクリメントは、ライブラリ関数で実装されています。

その結果、EURUSDのCommentは変化する値を表示し、他のシンボルでは表示されない。

つまり、EAのインスタンス(ファイルではない)ごとに、それ自身のEX4-libraryのインスタンスがロードされる、というのが正しいです。

 
tara:

松葉杖、イミフ。
入れ歯が悪いともっと悪い。