初心者の方からの質問 MQL4 MT4 MetaTrader 4 - ページ 102 1...9596979899100101102103104105106107108109...260 新しいコメント Mikhail Tkachev 2017.11.05 08:24 #1011 STARIJ:下から上への縦軸のチャートに価格、右の横軸に時間とバーナンバリングが表示されるゼロバーとは、現在利用可能な最後のバーのことです。以下のバーは履歴に存在するが、テスターでは利用できない。その後、この小節がカウントされると、テスターは次の小節に行き、これが彼にとってゼロとなる。つまり、次のバーのOpen価格がテスターに表示されると同時に、null[0]になるというのが正しい理解です。また、現在の[0]バーの500本前に計算するようなインジケーターの場合、テスターでは現在の[0]バーから~2年(D1 500本)前に計算することになりますが...。このことは、次のような疑問を抱かせる。現在、インジケータはStart()イベント処理に基づいて います - 古代のバージョンです。iCustom()の各コールでテスト中にインジケータが前の500本のバーで計算されているように感じます、1600のテスターランは1時間半で計算されました。 OnCalculate()イベント処理でインジケータを構築し、次のOnCalculate()までの未計算のバーだけを計算することができます - しかし、現在の時間の実際のデータフローで行うことができます - MQL4 Referenceで理解したとおりです。 テスターでは、iCustom()の各コールで計算されたバーの数が減少します ? Nikolay Ivanov 2017.11.05 13:55 #1012 MikeZv: つまり、Open の次のバーの価格がテスターに表示されると、すぐに null[0] になる、というのが正しい理解です。また、現在の[0]バーの500本前から計算を開始するようにインジケータが作られている場合、テスターは現在の[0]バーの2年前(500本D1)から計算を行うことになります...このことは、次のような疑問を抱かせる。現在、インジケータはStart()イベント処理に基づいて います - 古代のバージョンです。iCustom()の各コールでテスト中に、あなたが感じるように、インジケータは、過去500のバーで計算され、1600テスターランは、1時間半のために計算されました。 OnCalculate()イベント処理でインジケータを構築し、次のOnCalculate()までの未計算のバーだけを計算することができます - しかし、現在の時間の実際のデータフローで行うことができます - MQL4 Referenceで理解したとおりです。 テスターでは、iCustom()の各コールで計算されたバーの数が減りますが?インジケータが曲がって書いてあるだけなので遅い、プロに書き換えてもらいたい、そうすれば全履歴を読み取ってくれてとても速い・・・以上。 Mikhail Tkachev 2017.11.05 16:24 #1013 Nikolay Ivanov:インジケータが曲がって書いてあるだけなので遅い、プロのリライトが必要、そうすれば全編読めてとても速い...以上です。すでに書き換えられている ...:) Mikhail Tkachev 2017.11.07 11:50 #1014 古いインジケータ[on Start()]をベースに新しいインジケータ[onCalculate()]を書いたところ、上記のような疑問が生じました。 それらを5年間(期間D1)比較するスクリプトを実行すると、1対1で、すべての値が一致する。 Expert Advisorのテスト 時に、同じICustom()をExpert Advisorにコピーし、ファイルに出力しています。 古いインジケータの値はスクリプトと同じように表示されるが、新しいインジケータの値はすべて異なっている ! Expert Advisor の iCustom() で Start() のインジケータではスクリプトと同じ値が出力されるのに、OnCalculate() のインジケータでは Expert Advisor の出力がスクリプトの出力と異なるのはなぜですか。 Artyom Kuraev 2017.11.07 11:52 #1015 皆さん、こんにちは。 みんな、これに出くわした人にアドバイスしてくれないかな? グランドキャピタルなど一部のバイナリーブローカーでは、取引による利益ではなく、口座の残高に対する収入として、収入が発生し、口座から引き落とされます。 トレードの結果を知る方法については、いくつかの代替作業案がありますが、やはり一番正しいのは、貸借対照表の行の値と損益の金額を読むことです。そこで質問ですが、これを「その場」ではなく、取引履歴全体にわたって行うにはどうしたらよいのでしょうか?つまり、すべてのバランスタイプのレコードに目を通し、コメントと値そのものを読み取るような(MQL4に含まれる)関数に興味があるのです。このような作業に直面するのは、数年来のプログラミングの中で初めてのことです。 Artyom Kuraev 2017.11.07 12:03 #1016 MikeZv:古いインジケータ[OnCalculate()]をベースに新しいインジケータ[OnCalculate()]を書きましたが、この問題は上記のようになりました。 5年間(期間D1)、互いに比較するスクリプトを実行したところ、一対一で、すべての値が一致した。 Expert Advisorのテスト 時に、同じICustom()をExpert Advisorにコピーし、ファイルに出力しています。 古いインジケータの値はスクリプトと同じように表示されるが、新しいインジケータの値はすべて異なっている ! Expert AdvisorでStart()時のインジケータのiCustom()がスクリプトと同じ値を出力するのはなぜですか? また、OnCalculate()のインジケータでは、Expert Advisorの出力がスクリプトの出力と異なるのですか?当てるのに時間がかかることもある。 私は、間違ったデータ型の 変換、変数名の重複(つまり、古いコードでは、現在予約されている名前が使用されている)-結果として、変数が取得すべき値を取得していないコードをチェックします(まず、OnCalculateで使用されている変数名 - open, high, low, closeなどをチェックしてください)。- 古いコードではよく見かけるかもしれません)。 そして、iCustomに関しては、それは最も単純なバリエーションであり、ここでのエラーは、(上記の理由から)正しく渡されなかったパラメータに関連する可能性が最も高いです。 すべての値を表示するか、デバッグモードで実行し、不一致のある場所を確認します。 Mikhail Tkachev 2017.11.07 12:09 #1017 Artyom Kuraev:当てるのに時間がかかることもある。 データ型の 変換が正しくない、変数名が重複している(つまり、古いコードでは予約されている名前を使用している)、その結果、変数が取得すべき誤った値を拾っている(まず、OnCalculateで使用する変数名(open, high, low, closeなど)を確認します)、などをチェックします。- 古いコードではよく見かけるかもしれません)。 そして、iCustomに関しては、それは最も単純なバリエーションであり、ここでのエラーは、(再び、上記の理由から)間違って渡されたパラメータに関連する可能性が最も高いです。 すべての値を表示するか、デバッグモードで実行し、不一致の行き先を確認します。 スクリプト内の両指標の出力は同じです。Expertは、スクリプトからiCustom()とCOOPERATEDラインを持っています。同じパラメータが渡される。 Artyom Kuraev 2017.11.07 12:17 #1018 MikeZv: Expertは、スクリプトからiCustom()を持つ行をCOPYします。同じパラメータが渡される。コピーされることで、エラーが発生する可能性があります。私は、考えられる原因と、最初に確認することを提案しただけです。2点目は、これはおそらく最も明白な答えですが、インジケータ自体が高値で、ヒストリーに適用した場合はある値を示し、ストラテジーテスターモードで 動作させた場合は別の値を示すということです。一度書いたことがあるのですが、2枚の写真で ご覧 いただけます。全く主張しているわけではなく、私の経験に基づいた答えになります。もし、私が提案したどの選択肢も適切でないと確信されるのであれば、他の回答を待つか、もっと多くの背景情報を提供してください :) Taras Slobodyanik 2017.11.07 12:32 #1019 Artyom Kuraev:皆さん、こんにちは。 みんな、これに出くわした人にアドバイスしてくれないかな? グランドキャピタルなど一部のバイナリーブローカーでは、取引による利益ではなく、口座の残高の増減による収入として請求し、口座から引き落とします。 トレードの結果を知る方法については、いくつかの代替作業案がありますが、やはり一番正しいのは、貸借対照表の行の値と損益の金額を読むことです。そこで質問ですが、これを「その場」ではなく、取引履歴全体にわたって行うにはどうしたらよいのでしょうか?つまり、すべてのバランスタイプのレコードに目を通し、コメントと値そのものを読み取るような(MQL4に含まれる)関数に興味があるのです。このような作業に直面するのは、数年来のプログラミングの中で初めてのことです。 #define OP_BALANCE 6 #define OP_CREDIT 7プラスOrdersHistoryTotalStringFind(OrderComment(),txt,0) Artyom Kuraev 2017.11.07 12:34 #1020 Taras Slobodyanik: プラスありがとうございました。 すべてうまくいった! 1...9596979899100101102103104105106107108109...260 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
下から上への縦軸のチャートに価格、右の横軸に時間とバーナンバリングが表示される
ゼロバーとは、現在利用可能な最後のバーのことです。以下のバーは履歴に存在するが、テスターでは利用できない。その後、この小節がカウントされると、テスターは次の小節に行き、これが彼にとってゼロとなる。
つまり、次のバーのOpen価格がテスターに表示されると同時に、null[0]になるというのが正しい理解です。また、現在の[0]バーの500本前に計算するようなインジケーターの場合、テスターでは現在の[0]バーから~2年(D1 500本)前に計算することになりますが...。
このことは、次のような疑問を抱かせる。
現在、インジケータはStart()イベント処理に基づいて います - 古代のバージョンです。iCustom()の各コールでテスト中にインジケータが前の500本のバーで計算されているように感じます、1600のテスターランは1時間半で計算されました。
OnCalculate()イベント処理でインジケータを構築し、次のOnCalculate()までの未計算のバーだけを計算することができます - しかし、現在の時間の実際のデータフローで行うことができます - MQL4 Referenceで理解したとおりです。
テスターでは、iCustom()の各コールで計算されたバーの数が減少します ?
つまり、Open の次のバーの価格がテスターに表示されると、すぐに null[0] になる、というのが正しい理解です。また、現在の[0]バーの500本前から計算を開始するようにインジケータが作られている場合、テスターは現在の[0]バーの2年前(500本D1)から計算を行うことになります...
このことは、次のような疑問を抱かせる。
現在、インジケータはStart()イベント処理に基づいて います - 古代のバージョンです。iCustom()の各コールでテスト中に、あなたが感じるように、インジケータは、過去500のバーで計算され、1600テスターランは、1時間半のために計算されました。
OnCalculate()イベント処理でインジケータを構築し、次のOnCalculate()までの未計算のバーだけを計算することができます - しかし、現在の時間の実際のデータフローで行うことができます - MQL4 Referenceで理解したとおりです。
テスターでは、iCustom()の各コールで計算されたバーの数が減りますが?
インジケータが曲がって書いてあるだけなので遅い、プロに書き換えてもらいたい、そうすれば全履歴を読み取ってくれてとても速い・・・以上。
インジケータが曲がって書いてあるだけなので遅い、プロのリライトが必要、そうすれば全編読めてとても速い...以上です。
すでに書き換えられている ...:)
古いインジケータ[on Start()]をベースに新しいインジケータ[onCalculate()]を書いたところ、上記のような疑問が生じました。
それらを5年間(期間D1)比較するスクリプトを実行すると、1対1で、すべての値が一致する。
Expert Advisorのテスト 時に、同じICustom()をExpert Advisorにコピーし、ファイルに出力しています。
古いインジケータの値はスクリプトと同じように表示されるが、新しいインジケータの値はすべて異なっている !
Expert Advisor の iCustom() で Start() のインジケータではスクリプトと同じ値が出力されるのに、OnCalculate() のインジケータでは Expert Advisor の出力がスクリプトの出力と異なるのはなぜですか。
皆さん、こんにちは。
みんな、これに出くわした人にアドバイスしてくれないかな?
グランドキャピタルなど一部のバイナリーブローカーでは、取引による利益ではなく、口座の残高に対する収入として、収入が発生し、口座から引き落とされます。
トレードの結果を知る方法については、いくつかの代替作業案がありますが、やはり一番正しいのは、貸借対照表の行の値と損益の金額を読むことです。
そこで質問ですが、これを「その場」ではなく、取引履歴全体にわたって行うにはどうしたらよいのでしょうか?つまり、すべてのバランスタイプのレコードに目を通し、コメントと値そのものを読み取るような(MQL4に含まれる)関数に興味があるのです。このような作業に直面するのは、数年来のプログラミングの中で初めてのことです。
古いインジケータ[OnCalculate()]をベースに新しいインジケータ[OnCalculate()]を書きましたが、この問題は上記のようになりました。
5年間(期間D1)、互いに比較するスクリプトを実行したところ、一対一で、すべての値が一致した。
Expert Advisorのテスト 時に、同じICustom()をExpert Advisorにコピーし、ファイルに出力しています。
古いインジケータの値はスクリプトと同じように表示されるが、新しいインジケータの値はすべて異なっている !
Expert AdvisorでStart()時のインジケータのiCustom()がスクリプトと同じ値を出力するのはなぜですか?
また、OnCalculate()のインジケータでは、Expert Advisorの出力がスクリプトの出力と異なるのですか?
当てるのに時間がかかることもある。
私は、間違ったデータ型の 変換、変数名の重複(つまり、古いコードでは、現在予約されている名前が使用されている)-結果として、変数が取得すべき値を取得していないコードをチェックします(まず、OnCalculateで使用されている変数名 - open, high, low, closeなどをチェックしてください)。- 古いコードではよく見かけるかもしれません)。
すべての値を表示するか、デバッグモードで実行し、不一致のある場所を確認します。そして、iCustomに関しては、それは最も単純なバリエーションであり、ここでのエラーは、(上記の理由から)正しく渡されなかったパラメータに関連する可能性が最も高いです。
当てるのに時間がかかることもある。
データ型の 変換が正しくない、変数名が重複している(つまり、古いコードでは予約されている名前を使用している)、その結果、変数が取得すべき誤った値を拾っている(まず、OnCalculateで使用する変数名(open, high, low, closeなど)を確認します)、などをチェックします。- 古いコードではよく見かけるかもしれません)。
すべての値を表示するか、デバッグモードで実行し、不一致の行き先を確認します。そして、iCustomに関しては、それは最も単純なバリエーションであり、ここでのエラーは、(再び、上記の理由から)間違って渡されたパラメータに関連する可能性が最も高いです。
Expertは、スクリプトからiCustom()とCOOPERATEDラインを持っています。同じパラメータが渡される。
Expertは、スクリプトからiCustom()を持つ行をCOPYします。同じパラメータが渡される。
コピーされることで、エラーが発生する可能性があります。私は、考えられる原因と、最初に確認することを提案しただけです。
2点目は、これはおそらく最も明白な答えですが、インジケータ自体が高値で、ヒストリーに適用した場合はある値を示し、ストラテジーテスターモードで 動作させた場合は別の値を示すということです。一度書いたことがあるのですが、2枚の写真で ご覧 いただけます。
全く主張しているわけではなく、私の経験に基づいた答えになります。もし、私が提案したどの選択肢も適切でないと確信されるのであれば、他の回答を待つか、もっと多くの背景情報を提供してください :)
皆さん、こんにちは。
みんな、これに出くわした人にアドバイスしてくれないかな?
グランドキャピタルなど一部のバイナリーブローカーでは、取引による利益ではなく、口座の残高の増減による収入として請求し、口座から引き落とします。
トレードの結果を知る方法については、いくつかの代替作業案がありますが、やはり一番正しいのは、貸借対照表の行の値と損益の金額を読むことです。
そこで質問ですが、これを「その場」ではなく、取引履歴全体にわたって行うにはどうしたらよいのでしょうか?つまり、すべてのバランスタイプのレコードに目を通し、コメントと値そのものを読み取るような(MQL4に含まれる)関数に興味があるのです。このような作業に直面するのは、数年来のプログラミングの中で初めてのことです。
プラス
OrdersHistoryTotal
プラス
ありがとうございました。
すべてうまくいった!