EAを最初にドロップしたチャートのみで動作させる方法 - ページ 4 12345678910 新しいコメント Sergey Kravchuk 2010.08.16 12:51 #31 こんな感じでしょうか。 まず、グローバル変数と チャート上のオブジェクトを作成し(手で誤って削除しないように、チャート外のどこかに)、その両方に共通のキーをひとつ「書き込み」ます(たとえば、GetTickCountで取得します)。 他のチャートでの再実行 グローバル変数の存在を確認し、存在すれば、OURチャートで同じキーを持つオブジェクトを検索します。 チャートオブジェクトとグローバル変数は、再起動や再コンパイルにも耐えられる必要があるため、チェックは常に正しく行われます)。 Alexandr Bryzgalov 2010.08.16 12:53 #32 ForexTools: こんな感じでしょうか。 まず、グローバル変数とチャート上のオブジェクトを作成し(手で誤って削除しないように、チャート外のどこかに)、その両方に共通のキーをひとつ「書き込み」ます(たとえば、GetTickCountで取得します)。 他のチャートでの再実行 グローバル変数の存在を確認し、存在すれば、OURチャートで同じキーを持つオブジェクトを検索します。 チャートオブジェクトとグローバル変数は、再起動や再コンパイルにも耐えられる必要があるため、チェックは常に正しく行われます)。 端末がクラッシュした場合、オブジェクトが保存されないことがある。 exhumer 2010.08.16 12:56 #33 ForexTools: Expert Advisorは「1つのインスタンス」のみで動作する必要があります。I.e.どのチャートにも初めて添付して、動作するようになりました。その後、偶然または意図的に別のチャートに再度添付すると、2番目の添付はすでに実行されていることを検出し、何もしないはずです。 グローバル変数にラベルを残すのは、おそらくうまくいかないでしょう。2つのEAを添付して、そのテキストを再コンパイルした場合、どちらが先にinitを働かせてこのグローバル変数を作成するのかが不明です。 誰が何を提案できるのか?この方法について、何かご意見はありますか? また、初期化時にファイルをオープンして書き込みを行う場合は、初期化時にそれを解放する。論理的には、EAの新しいインスタンスは、以前に書き込み用にオープンされたファイルを開くことはできません。例えば5回繰り返したときに、一貫して書き込みのためのファイルを開くという エラーが発生した場合、それはEAの1つのインスタンスがすでに開かれていることを意味します。 Sergey Kravchuk 2010.08.16 12:58 #34 exhumer: EAの新しいインスタンスは、以前書き込み用に開いていたファイルを開くことができません。 端末がクラッシュして再起動した後、ファイルは 最初に開いた人が利用できるのであって、最初にリセットした人が利用できるわけではありません :( もう一度言いますが、特定のチャート、 特定のExpert Advisorが必要です。 Candid 2010.08.16 13:06 #35 ForexTools: あなたの考えは通用しません。 効かないってどういうこと?これは中途半端な主張ではありますが特に、アイデアしかない(「具体的なレシピ」はともかく)ので、。あなたの "解決策 "をどう考えればいいのですか?;) まさにアイデア次第です。確認方法を理解するのに十分な知識がない場合は、そう書いてください。実際そうなんだけど、主張として書いたんだよね。少なくとも、「あなたの "解決策 "で何を法則化できるのか」という発言は。;)」は、まさにクレームのように見えます。そして、なぜかトリビアのセット "should "は "will "ではなく、"there "は "where"?"didn't work "なら - 未検証の解決策をアドバイスできるわけがない! 解決策を提示されても、あなたは棒で根っこを探すだけでしょう。 これは誰の問題ですか、私ですか、それともあなたですか?いったいなぜ、アイデアの提案を解決策の推奨と認定するのでしょうか。 私の考えでは、質問文はこうです。私がアイデアを出し、あなたがそれをテストし、それがうまくいったら、最低限のお礼として、それがうまくいったと私に知らせてください。 追伸:男さん、MTでの作業のプロを気取っているのだから、興味本位で1chのファイルを調べればよかったのにね。 Виктор 2010.08.16 13:18 #36 TheXpert: それならぶっきらぼうにロッカーとして申告して問題ない。 なぜ、最もシンプルな選択肢であるこれを使わないのか?Expert Advisor は制御ファイルを作成し、ファイルが存在するかどうかを確認してから実行します。同名のファイルが既に存在する場合、Expert Advisorは起動しません。EAが正しくチャートを終了すれば、ファイルは消去されます。クラッシュが発生した場合、残ったファイルはEAのインスタンスの起動をブロックし、動作を継続させるために手動で削除されます。 Sergey Kravchuk 2010.08.16 13:21 #37 Candid: それは誰の問題なのか、私なのか、それともあなたなのか?いったいなぜ、自分の提案したアイデアを解決策の提言と認定するのでしょうか。 なぜなら、最初の投稿で私が求めたのはまさにそれだったからです。だからこそ、私はあなたの考えをそのように受け止めたのです。 MTでの作業のプロを気取っているようですが。 だから、DOTOも含めて、多くの「アイデア」の妥当性を見ているのですが......。;) もし私が間違っているなら、2つ目のコピーが実行されないようにするためだけのEAコードを書いて、再コンパイルしてターミナルを再起動したときに本当に動作するかどうかチェックして、そのコードをここに投稿してください。) Sergey Kravchuk 2010.08.16 13:26 #38 granit77: クラッシュが発生すると、残りのファイルは...でブロックされます。 の2つのチャートがあり、1つは動作中のEAがファイルを保持しており、もう1つはファイルがロックされているため動作していないEAのコピーがあります。 は、端末がダウンしているか閉じています。 (再)起動 すると、2つのEAがファイル読み込みのチェックを始める。前回ブロックされたものではなく、本当の最初のものが最初に掴むという保証はあるのだろうか?:( 3回目ですが、CHARTと EXPERTの間のリンクが必要ですが、あるExpert Advisorを別のExpert Advisorでブロックすることはできません。 TheXpert 2010.08.16 13:26 #39 granit77: なぜ、最もシンプルな選択肢であるこれを使わないのか? いえいえ、それはどのインスタンスを実行しても問題ない場合だけです。 Christo Tsvetanov 2010.08.16 13:28 #40 大きな」プログラミングでは、mutexが使われます - 例えばこちら。 http://bitonic.wordpress.com/2008/10/09/mutex-%D0%BC%D1%8C%D1%8E%D1%82%D0%B5%D0%BA%D1%81-%E2%80%93-%D0%B7%D0%B0%D0%BF%D1%80%D0%B5%D1%82-%D0%BD%D0%B0-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D0%B1%D0%BE%D0%BB%D0%B5%D0%B5-%D1%87%D0%B5%D0%BC/ 12345678910 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんな感じでしょうか。
まず、グローバル変数と チャート上のオブジェクトを作成し(手で誤って削除しないように、チャート外のどこかに)、その両方に共通のキーをひとつ「書き込み」ます(たとえば、GetTickCountで取得します)。
他のチャートでの再実行 グローバル変数の存在を確認し、存在すれば、OURチャートで同じキーを持つオブジェクトを検索します。
チャートオブジェクトとグローバル変数は、再起動や再コンパイルにも耐えられる必要があるため、チェックは常に正しく行われます)。
こんな感じでしょうか。
まず、グローバル変数とチャート上のオブジェクトを作成し(手で誤って削除しないように、チャート外のどこかに)、その両方に共通のキーをひとつ「書き込み」ます(たとえば、GetTickCountで取得します)。
他のチャートでの再実行 グローバル変数の存在を確認し、存在すれば、OURチャートで同じキーを持つオブジェクトを検索します。
チャートオブジェクトとグローバル変数は、再起動や再コンパイルにも耐えられる必要があるため、チェックは常に正しく行われます)。
Expert Advisorは「1つのインスタンス」のみで動作する必要があります。I.e.どのチャートにも初めて添付して、動作するようになりました。その後、偶然または意図的に別のチャートに再度添付すると、2番目の添付はすでに実行されていることを検出し、何もしないはずです。
グローバル変数にラベルを残すのは、おそらくうまくいかないでしょう。2つのEAを添付して、そのテキストを再コンパイルした場合、どちらが先にinitを働かせてこのグローバル変数を作成するのかが不明です。
誰が何を提案できるのか?この方法について、何かご意見はありますか?
また、初期化時にファイルをオープンして書き込みを行う場合は、初期化時にそれを解放する。論理的には、EAの新しいインスタンスは、以前に書き込み用にオープンされたファイルを開くことはできません。例えば5回繰り返したときに、一貫して書き込みのためのファイルを開くという エラーが発生した場合、それはEAの1つのインスタンスがすでに開かれていることを意味します。
EAの新しいインスタンスは、以前書き込み用に開いていたファイルを開くことができません。
端末がクラッシュして再起動した後、ファイルは 最初に開いた人が利用できるのであって、最初にリセットした人が利用できるわけではありません :(
もう一度言いますが、特定のチャート、 特定のExpert Advisorが必要です。
あなたの考えは通用しません。
あなたの "解決策 "をどう考えればいいのですか?;)
"should "は "will "ではなく、"there "は "where"?"didn't work "なら
解決策を提示されても、あなたは棒で根っこを探すだけでしょう。 これは誰の問題ですか、私ですか、それともあなたですか?いったいなぜ、アイデアの提案を解決策の推奨と認定するのでしょうか。
私の考えでは、質問文はこうです。私がアイデアを出し、あなたがそれをテストし、それがうまくいったら、最低限のお礼として、それがうまくいったと私に知らせてください。
追伸:男さん、MTでの作業のプロを気取っているのだから、興味本位で1chのファイルを調べればよかったのにね。
それならぶっきらぼうにロッカーとして申告して問題ない。
Candid:
それは誰の問題なのか、私なのか、それともあなたなのか?いったいなぜ、自分の提案したアイデアを解決策の提言と認定するのでしょうか。
なぜなら、最初の投稿で私が求めたのはまさにそれだったからです。だからこそ、私はあなたの考えをそのように受け止めたのです。
MTでの作業のプロを気取っているようですが。
だから、DOTOも含めて、多くの「アイデア」の妥当性を見ているのですが......。;)
もし私が間違っているなら、2つ目のコピーが実行されないようにするためだけのEAコードを書いて、再コンパイルしてターミナルを再起動したときに本当に動作するかどうかチェックして、そのコードをここに投稿してください。)
クラッシュが発生すると、残りのファイルは...でブロックされます。
の2つのチャートがあり、1つは動作中のEAがファイルを保持しており、もう1つはファイルがロックされているため動作していないEAのコピーがあります。
は、端末がダウンしているか閉じています。
(再)起動 すると、2つのEAがファイル読み込みのチェックを始める。前回ブロックされたものではなく、本当の最初のものが最初に掴むという保証はあるのだろうか?:(
3回目ですが、CHARTと EXPERTの間のリンクが必要ですが、あるExpert Advisorを別のExpert Advisorでブロックすることはできません。
なぜ、最もシンプルな選択肢であるこれを使わないのか?
大きな」プログラミングでは、mutexが使われます - 例えばこちら。
http://bitonic.wordpress.com/2008/10/09/mutex-%D0%BC%D1%8C%D1%8E%D1%82%D0%B5%D0%BA%D1%81-%E2%80%93-%D0%B7%D0%B0%D0%BF%D1%80%D0%B5%D1%82-%D0%BD%D0%B0-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D0%B1%D0%BE%D0%BB%D0%B5%D0%B5-%D1%87%D0%B5%D0%BC/