初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 623 1...616617618619620621622623624625626627628629630...1503 新しいコメント 削除済み 2016.09.17 11:06 #6221 -Aleks-: いいえ、テスターでは必要ないのですが、ターミナルが実際にチャート上で動作する場合、履歴に含まれるバーの 数が 最大値より少ない場合にのみ動作するのですが、間違っていますか?また、リアルタイムでrates_totalとBars()は、インジケータが動作しているときにインクリメントされます。OnInit()では、パラメータが関数に渡されないので、rates_totalを取得することはできません。いずれにせよOnCalculate()で履歴を確認する必要があります。 __DantisT__ 2016.09.19 14:40 #6222 皆さんこんにちは!Expert Advisorを探すのを手伝ってください。セッションタイムの設定、各方向に3つの注文に分割、トレーリングとストップロスの 機能を持ったボックス(箱)が必要です。私はすでにオープンスペースでの検索に溺れました。もう少しで崖っぷちです!もう少しで、自分で書くための言語とエディターの勉強を始めます!!!!HELP!!! Aleksey Vyazmikin 2016.09.19 16:02 #6223 Alexey Kozitsyn:また、リアルタイムでrates_totalとBars()は、インジケータが動作しているときに増加します。OnInit()では、パラメータが関数に渡されないため、rates_totalを取得することはできません。履歴の確認は、いずれにしてもOnCalculate()の中で行う必要があります。 つまり、インジケータを作り、そこでバーの本数を チェックし、問題なければチャートバッファを1本で埋め、インジケータから1本出るまでEAで待ち、その時だけ作業を続ければいいのですよね? 削除済み 2016.09.19 17:01 #6224 -Aleks-: つまり、別途インジケータを作り、そこでバーの本数を チェックし、問題なければチャートバッファを1本で埋め、インジケータから1本取得するまでEAで待機し、その後のみ作業を継続する必要がありますよね? もちろん、そんなことはないのですが...。なぜ、こんなにも複雑なのか...。もう一度、確認しましょう。目的は何ですか?全履歴を計算に利用できるようにするため? Aleksey Vyazmikin 2016.09.19 20:08 #6225 Alexey Kozitsyn: もちろん、そんなことはないのですが...。なぜそんなに複雑にするのか...。もう1度、やり直そう。目標は何ですか?計算可能なすべての履歴を取得するため?EAが正しく動作するためには、一度履歴を計算する必要があるという状況です。そのため、このEAを搭載した端末の電源を入れると履歴があり、それに従って初期化・計算が行われるのですが、この履歴が全てではない場合があり、端末に接続すると新しい履歴が読み込まれる、ということが起こります。端末との接続をトレースして、HLCOの最後のバーの変化を確認し、利用可能であれば待ち、x秒以内に利用不可能であれば計算を実行すればよいかと思います。 削除済み 2016.09.20 07:56 #6226 -Aleks-:EAが正しく動作するためには、一度履歴を計算する必要があるという状況です。そのため、このEAを搭載した端末の電源を入れると、履歴があり、それに従って初期化や計算が行われるのですが、この履歴が全てではない場合があり、端末に接続すると新しい履歴が読み込まれる、ということが起こります。端末との接続をトレースして、HLCOで最後のバーの変化を確認し、利用可能であれば待つが、x秒以内に利用できない場合は計算を実行すればよいと思う。Expert Advisorはカスタムインジケータを使用していますか?例えば、次のようなことができます。Bars()を使って履歴の大きさを確認します。次に、Bars() > prev_bars+1 (前のティックのヒストリのサイズ)であるかどうかを確認します - 次に、保存されたデータをすべてリセットして、Expert Advisorをゼロから完全に再計算します。この構文は、OnTick()の中に最初に挿入する必要があります。端末との接続、一時停止などの煩わしさがない。最もシンプルなオプションがベストであることが多い。 Aleksey Vyazmikin 2016.09.20 09:17 #6227 Alexey Kozitsyn: Expert Advisorはカスタムインジケータを使用していますか?例えば、次のようなことができます。Bars()を使って履歴のサイズを確認します。次に、Bars() > prev_bars+1 (前のティックのヒストリのサイズ)であるかどうかを確認します - 次に、保存されたデータをすべてリセットして、Expert Advisorをゼロから完全に再計算します。この構文は、OnTick()の中に最初に挿入する必要があります。端末との接続、一時停止などの煩わしさがない。最もシンプルなバリエーションがベストであることがほとんどです。Expert Advisorは、インジケータを含め、多くのものを使用します。私は、提案されたバリアントがすべてのバーで再計算されることを理解していますが、間違っていますか? 削除済み 2016.09.20 09:23 #6228 -Aleks-:Expert Advisorは、インジケータを含め、多くのものを使用します。このバリアントは、すべてのバーで再計算されると理解していますが、間違っていますか?いいえ、なぜすべてのバーで?Expert Advisorは、履歴に1本以上のバーが追加された場合のみ、完全に再計算されます!1本追加された場合(新しいバーが形成された場合)、完全な再計算は行われません。インジケータを使用し、それらがグローバル変数を持って いる場合、それらを最初に実行するときにゼロにする必要があります。そうでない場合、チャートにアーチファクトが表示されたり、インジケータが正しく表示されないことがあります。 Aleksey Vyazmikin 2016.09.20 10:33 #6229 Alexey Kozitsyn:いいえ、なぜそれぞれで?EAの完全な再計算は、ストーリーに1本以上の小節が追加された場合にのみ行われます1本追加された場合(新しいバーが形成された場合)、完全な再計算は行われません。インジケータを使用し、それらがグローバル変数を持って いる場合、それらを最初に実行するときにゼロにする必要があります。そうでない場合、チャートにアーチファクトが表示されたり、インジケータが正しく表示されないことがあります。 1に注目していませんでした 、ありがとうございます、悪い選択肢ではないと思います。 Leo59 2016.09.21 11:20 #6230 なぜこのようなことが起こるのか、教えてください。 ダブルA int x, y; x=100; y=3; A=x/y=33,000 1...616617618619620621622623624625626627628629630...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
いいえ、テスターでは必要ないのですが、ターミナルが実際にチャート上で動作する場合、履歴に含まれるバーの 数が 最大値より少ない場合にのみ動作するのですが、間違っていますか?
また、リアルタイムでrates_totalとBars()は、インジケータが動作しているときにインクリメントされます。OnInit()では、パラメータが関数に渡されないので、rates_totalを取得することはできません。いずれにせよOnCalculate()で履歴を確認する必要があります。
また、リアルタイムでrates_totalとBars()は、インジケータが動作しているときに増加します。OnInit()では、パラメータが関数に渡されないため、rates_totalを取得することはできません。履歴の確認は、いずれにしてもOnCalculate()の中で行う必要があります。
つまり、別途インジケータを作り、そこでバーの本数を チェックし、問題なければチャートバッファを1本で埋め、インジケータから1本取得するまでEAで待機し、その後のみ作業を継続する必要がありますよね?
もちろん、そんなことはないのですが...。なぜそんなに複雑にするのか...。もう1度、やり直そう。目標は何ですか?計算可能なすべての履歴を取得するため?
EAが正しく動作するためには、一度履歴を計算する必要があるという状況です。そのため、このEAを搭載した端末の電源を入れると履歴があり、それに従って初期化・計算が行われるのですが、この履歴が全てではない場合があり、端末に接続すると新しい履歴が読み込まれる、ということが起こります。
端末との接続をトレースして、HLCOの最後のバーの変化を確認し、利用可能であれば待ち、x秒以内に利用不可能であれば計算を実行すればよいかと思います。
EAが正しく動作するためには、一度履歴を計算する必要があるという状況です。そのため、このEAを搭載した端末の電源を入れると、履歴があり、それに従って初期化や計算が行われるのですが、この履歴が全てではない場合があり、端末に接続すると新しい履歴が読み込まれる、ということが起こります。
端末との接続をトレースして、HLCOで最後のバーの変化を確認し、利用可能であれば待つが、x秒以内に利用できない場合は計算を実行すればよいと思う。
Expert Advisorはカスタムインジケータを使用していますか?
例えば、次のようなことができます。Bars()を使って履歴の大きさを確認します。次に、Bars() > prev_bars+1 (前のティックのヒストリのサイズ)であるかどうかを確認します - 次に、保存されたデータをすべてリセットして、Expert Advisorをゼロから完全に再計算します。この構文は、OnTick()の中に最初に挿入する必要があります。
端末との接続、一時停止などの煩わしさがない。最もシンプルなオプションがベストであることが多い。
Expert Advisorはカスタムインジケータを使用していますか?
例えば、次のようなことができます。Bars()を使って履歴のサイズを確認します。次に、Bars() > prev_bars+1 (前のティックのヒストリのサイズ)であるかどうかを確認します - 次に、保存されたデータをすべてリセットして、Expert Advisorをゼロから完全に再計算します。この構文は、OnTick()の中に最初に挿入する必要があります。
端末との接続、一時停止などの煩わしさがない。最もシンプルなバリエーションがベストであることがほとんどです。
Expert Advisorは、インジケータを含め、多くのものを使用します。
私は、提案されたバリアントがすべてのバーで再計算されることを理解していますが、間違っていますか?
Expert Advisorは、インジケータを含め、多くのものを使用します。
このバリアントは、すべてのバーで再計算されると理解していますが、間違っていますか?
いいえ、なぜすべてのバーで?Expert Advisorは、履歴に1本以上のバーが追加された場合のみ、完全に再計算されます!1本追加された場合(新しいバーが形成された場合)、完全な再計算は行われません。
インジケータを使用し、それらがグローバル変数を持って いる場合、それらを最初に実行するときにゼロにする必要があります。そうでない場合、チャートにアーチファクトが表示されたり、インジケータが正しく表示されないことがあります。
いいえ、なぜそれぞれで?EAの完全な再計算は、ストーリーに1本以上の小節が追加された場合にのみ行われます1本追加された場合(新しいバーが形成された場合)、完全な再計算は行われません。
インジケータを使用し、それらがグローバル変数を持って いる場合、それらを最初に実行するときにゼロにする必要があります。そうでない場合、チャートにアーチファクトが表示されたり、インジケータが正しく表示されないことがあります。
ダブルA
int x, y;
x=100; y=3; A=x/y=33,000