"ダミー "からの質問 - ページ 70 1...636465666768697071727374757677...277 新しいコメント --- 2011.09.27 21:52 #691 Expert:こんにちは。教えていただけませんか。なぜ注文や取引にはチケットがあるのに、ポジションにはないのですか?また、チケットとIDの違いは何ですか? アールティーエフエム Anatoli Kazharski 2011.09.27 21:55 #692 sergeev: アールティーエフエム)))))))))) Denis Lysenko 2011.09.27 22:55 #693 sergeev: アールティーエフエム ああ...大きすぎて、必要な情報がすぐに見つからない。 Anatoli Kazharski 2011.09.27 23:14 #694 Expert: ああ...大きすぎて、必要な情報がすぐに見つからない。 そして、じっくりと時間をかけるのです。))勉強する必要があります。そうすれば、あなたの疑問に対する多くの答えを、とても素早く簡単に見つけることができるでしょう。ご質問の件につきましては、「取引機能」の項目をご覧ください。 Документация по MQL5: Торговые функции www.mql5.com Торговые функции - Документация по MQL5 rlx 2011.09.28 07:04 #695 rlx:ex5ライブラリからインポートした関数を呼び出す。説明してください。読む https://www.mql5.com/ru/docs/runtime/importsシステムライブラリ(DLL)は、オペレーティングシステムの規則によってロードされます。ライブラリが既にロードされている場合(例えば、別のExpert Advisorや、並行して実行されている別のクライアント端末からも)、参照先は既にロードされているライブラリとなります。ex5ライブラリはどのようにロードされますか?ライブラリが既にロードされている場合(例えば、他のExpert Advisorや、並行して実行されている他のクライアント端末からもロードされている場合)。そしてやはり、ex5ライブラリのインスタンスを1つだけ読み込むようにする方法です。そして、さらにEAがこのインスタンスにのみ接続するようになります。ライブラリーを作りました。#property library static int i=0; int lib[10 000 000]; /// разделил пробелами для наглядности int Get(void) export {return(i++);}Expert Advisorを作成し、その中にライブラリが含まれています。#import "lib.ex5" int Get(void); #import void OnTick(){}1.Expert Advisorが1つもロードされていない。terminal.exeのプロセスは、91,000KBです。2.EURUSDにExpert Advisorを1つ接続する。Terminal.exeプロセス -- 131 000 KB.(+41 MB)です。3.GBPUSDに同じExpert Advisorを接続(追加)。terminal.exeプロセス - 171 000KB。(+41MB)。どのようにMT5の手段によってのみ(クラスやライブラリやスクリプト、EAなどを通じて)共同で特定のデータ(動的に変更されます)へのアクセスを作成するのですか?PS// 両方やってみたstatic int lib[10 000 000] とにかく、EAごとに異なるライブラリのインスタンスがロードされます。 Anatoli Kazharski 2011.09.28 07:55 #696 rlx: EAごとに異なるライブラリのインスタンスがロードされることに変わりはありません。 グローバル ターミナル変数で実装することも可能でしょう。つまり、どちらのインスタンスもターミナルのグローバル変数を使用して計算を行います。 Документация по MQL5: Основы языка / Переменные / Глобальные переменные www.mql5.com Основы языка / Переменные / Глобальные переменные - Документация по MQL5 Sergey Gritsay 2011.09.28 07:56 #697 rlx:それでも、ex5のインスタンスを1つだけ読み込むようにするにはどうすればよいのでしょうか。そして、それ以降のEAはこのインスタンスにのみ接続することになります。ライブラリーを作りました。私はこのライブラリを含むExpert Advisorを作成しました。1.Expert Advisorが1つもロードされない。terminal.exeのプロセスは、91,000KBです。2.EURUSDにExpert Advisorを1つ接続する。Terminal.exeプロセス -- 131 000 KB.(+41 MB)です。3.GBPUSDに同じExpert Advisorを接続(追加)。terminal.exeプロセス - 171 000KB。(+41MB)。どのようにMT5の手段によってのみ(クラスやライブラリやスクリプト、EAなどを通じて)共同で特定のデータ(動的に変更されます)へのアクセスを作成するのですか?PS// 両方やってみた EAごとに異なるライブラリのインスタンスがロードされることに変わりはありません。 グローバル ターミナル変数が役に立つと思うし、ファイルにデータを書き込むこともできる rlx 2011.09.28 08:19 #698 tol64:グローバル ターミナル変数で実装できるかもしれませんね。つまり、どちらのインスタンスもグローバルターミナル変数を使用して計算を行う。sergey1294 です。グローバルターミナル変数 が役に立つと思いますし、データをファイルに書き込むことも可能ですご指摘ありがとうございます。もしかしたら、他の方法があるかもしれません。 Sergey Gritsay 2011.09.28 08:22 #699 rlx:ご指摘ありがとうございます。もしかしたら、他の方法があるかもしれません。 同じデータを異なるEA、スクリプト、インジケータで使用する方法は他にはないと思います rlx 2011.09.28 08:34 #700 sergey1294: 同じデータを異なるExpert Advisor、スクリプト、インジケータで使用する方法は他にないと思います。できればいいんですけどね。例えば、こんなバリエーションを作ってみました。グローバル変数 で実装することはできません。advisor.ex5struct Info { uint id; uint info1; uint info2; double info3; }; Info test; void OnTick() { //--- test.info3 = 78; } bool GetInfo(Info& massiv[]) export { ArrayResize(massiv, 10); massiv[0].id = 123; massiv[0].info1= 56; massiv[0].info3=test.info3; return(true); }トレーダー.ex5struct Info { uint id; uint info1; uint info2; double info3; }; #import "advisor.ex5" bool GetInfo(Info& massiv[]); #import void OnTick() { Info req[]; GetInfo(req); Print(req[0].info3); }配列を渡す!!構造!!この配列を埋める別のExpert Advisorに。このコードは正しく動作します。 BUT trader.ex5 は、すでに実行されているadvisor.ex5 にリンクするのではなく、advisor.ex5 の別のインスタンスを作成します。 Документация по MQL5: Основы языка / Переменные / Глобальные переменные www.mql5.com Основы языка / Переменные / Глобальные переменные - Документация по MQL5 1...636465666768697071727374757677...277 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは。教えていただけませんか。なぜ注文や取引にはチケットがあるのに、ポジションにはないのですか?
また、チケットとIDの違いは何ですか?
アールティーエフエム
アールティーエフエム
ああ...大きすぎて、必要な情報がすぐに見つからない。
ex5ライブラリからインポートした関数を呼び出す。
説明してください。読む https://www.mql5.com/ru/docs/runtime/imports
ex5ライブラリはどのようにロードされますか?ライブラリが既にロードされている場合(例えば、他のExpert Advisorや、並行して実行されている他のクライアント端末からもロードされている場合)。
そしてやはり、ex5ライブラリのインスタンスを1つだけ読み込むようにする方法です。
そして、さらにEAがこのインスタンスにのみ接続するようになります。
ライブラリーを作りました。
Expert Advisorを作成し、その中にライブラリが含まれています。
1.Expert Advisorが1つもロードされていない。terminal.exeのプロセスは、91,000KBです。
2.EURUSDにExpert Advisorを1つ接続する。Terminal.exeプロセス -- 131 000 KB.(+41 MB)です。
3.GBPUSDに同じExpert Advisorを接続(追加)。terminal.exeプロセス - 171 000KB。(+41MB)。
どのようにMT5の手段によってのみ(クラスやライブラリやスクリプト、EAなどを通じて)共同で特定のデータ(動的に変更されます)へのアクセスを作成するのですか?
PS// 両方やってみた
とにかく、EAごとに異なるライブラリのインスタンスがロードされます。rlx:
EAごとに異なるライブラリのインスタンスがロードされることに変わりはありません。それでも、ex5のインスタンスを1つだけ読み込むようにするにはどうすればよいのでしょうか。
そして、それ以降のEAはこのインスタンスにのみ接続することになります。
ライブラリーを作りました。
私はこのライブラリを含むExpert Advisorを作成しました。
1.Expert Advisorが1つもロードされない。terminal.exeのプロセスは、91,000KBです。
2.EURUSDにExpert Advisorを1つ接続する。Terminal.exeプロセス -- 131 000 KB.(+41 MB)です。
3.GBPUSDに同じExpert Advisorを接続(追加)。terminal.exeプロセス - 171 000KB。(+41MB)。
どのようにMT5の手段によってのみ(クラスやライブラリやスクリプト、EAなどを通じて)共同で特定のデータ(動的に変更されます)へのアクセスを作成するのですか?
PS// 両方やってみた
EAごとに異なるライブラリのインスタンスがロードされることに変わりはありません。グローバル ターミナル変数で実装できるかもしれませんね。つまり、どちらのインスタンスもグローバルターミナル変数を使用して計算を行う。
グローバルターミナル変数 が役に立つと思いますし、データをファイルに書き込むことも可能です
ご指摘ありがとうございます。
もしかしたら、他の方法があるかもしれません。
ご指摘ありがとうございます。
もしかしたら、他の方法があるかもしれません。
同じデータを異なるExpert Advisor、スクリプト、インジケータで使用する方法は他にないと思います。
できればいいんですけどね。
例えば、こんなバリエーションを作ってみました。グローバル変数 で実装することはできません。
advisor.ex5
トレーダー.ex5
配列を渡す!!構造!!この配列を埋める別のExpert Advisorに。
このコードは正しく動作します。 BUT trader.ex5 は、すでに実行されているadvisor.ex5 にリンクするのではなく、advisor.ex5 の別のインスタンスを作成します。