エラー、バグ、質問 - ページ 2489

 
Slava:

そういえば、OnCalculateには、rates_totalというパラメータがありますね。

OnCalculateでは、rates_totalパラメータもターミナルで設定した値より多く表示されます。

 
Alexey Viktorov:

OnCalculateでは、rates_totalパラメータもターミナルで設定されている値より多く表示されます。

rates_total は常に現在のチャートで利用可能なバーの 数を表示します。

あなたの発言の意味がわからない。

 

今、手元にクライアント端末がないので、ヘルプを引用します。モバイル端末から2クリックでhttps://www.metatrader5.com/ru/terminal/help/startworking/settings#max_bars

特別に強調された段落

より経済的な計算のために、指標は "Max bars in window "パラメータで指定されたものより多くのバーを使用することができます。新しいバーが到着しても、古いバーはすぐにデータキャッシュから削除されない。これにより、インジケータは新しいバーごとに完全に再計算されるのではなく、新しいバーに対してのみ追加で値を計算することができます。

Настройки платформы - Начало работы - MetaTrader 5
Настройки платформы - Начало работы - MetaTrader 5
  • www.metatrader5.com
Торговая платформа обладает множеством настроек, что позволяет организовать работу в ней так, как это удобно именно вам. Выполните команду " Настройки" меню "Сервис" или нажмите "Ctrl+O". Графики — общая настройка отображения ценовых графиков, а также настройка параметров управления объектами: выделение объектов после их создания, немедленная...
 
Slava:

rates_total は常に現在のチャートで利用可能なバーの 数を表示します。

あなたの発言の意味が理解できない

すみません、答えは写真の中にあります。

しかし、デバッガでは、次のように表示されます。

そして、インジケーターの値を確認するためには、1268本のバーをスクロールしなければなりません。高値・安値、始値・終値がどのような値で計算されるかは、この後確認できます。

ただ、すごく違和感があるんです。しかし、人はすぐにそれに慣れ、よくないものにはすべて順応してしまう。

 

予想されるコンパイルエラー

class A { public:
        void operator[]( int = 1 ) {} //нормально ???
};
void OnStart()
{
        A a;
        a[]; //нормально ???
}
 
Alexey Viktorov:

すみません、答えは写真の中にあります。

しかし、デバッガには

そして、インジケーターの値を確認するために、1268本のバーをスクロールしなければならないのです。高値・安値、始値・終値がどのような値で計算されるかは、この後確認できます。

ただ、とても不便なんです。しかし、人はすぐにそれに慣れ、よくないものにはすべて順応してしまう。

下の投稿にある私の引用文をよくお読みになっていますか?

この動作は、「チャート上の 最大バー数」の 設定が導入されて以来、つまりMT4の初期から常に存在しています。そして、この設定に従って毎回バーの本数をカットしない理由は、この15年の間に何度も説明してきました。そして今は、毎回切り返すことはありません。

誰もドキュメントを読まない。しかし、そこにはパラドックスがあります。それでもドキュメントに何か別のことを書けと言ってくるのですが、それは読まないんです。

 
Slava:

1.ドキュメントの更新が必要な箇所は?

2.一桁のバー識別子は、バー番号ではなく、常にバー時間である。

3.あなたのチャートが誰かからChartSetSymbolPeriodを呼び出さ れた場合、バーの数の変更を簡単にキャッチすることができます。サプライズ?

4.ちなみに、OnCalculateにはrates_totalというパラメータがあります。

1.まさに、その後の投稿で ご指摘の通りです。 ただ、RESETがあり、このリセットはウィンドウの最大バー+1439を正確に通過することを追加してください。

2.わかりました、そのように考えておきます。でも、同じ時間に2つのバーがあるわけではないことはおわかりですよね?

3.サプライズではない。具体的には、タイムフレームもシンボルも変えなければ、6439から5000へのリセットがあり得るという話です。

4.上の私の投稿をよく読んでいただければ、お気づきのことと思います。

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

エラー、バグ、質問

アレクセイ・コジツィン, 2019.06.28 10:40

開発者の皆様へ。質問ですが、インジケーターバッファの自動再分割は正常なのでしょうか?再分割とは、次のような意味です:ウィンドウ内のバーの最大値、例えば5000。 バッファサイズ+rates_totalは、6439になると5000にリセットされます。ウィンドウ内の最大バー数=10000の場合も同様です。11439でリセットが発生します。

このため、インジケーターがクラッシュしたり、不正なデータが表示されることがあります。

2085年を構築する。この動作は2000ビルドくらいから気づいていました。

rates_totalも指しました。問題は、rates_totalとbufferが0にリセットされないことです(それなら問題ないでしょう、インジケータ全体を再計算すれば済むことです)。そして、ウィンドウ内の最大バーの値を取ります。それこそ、ただ書けばいいんですよ。

そのような記録があれば、あなたの仕事はもっと楽になるはずです。

より経済的な計算のために、指標は「Max bars in window」パラメータで指定されたよりも多くのバーを利用することができます。新しいバーが到着しても、古いバーはすぐにデータキャッシュから削除されない。これは、新しいバーごとにインジケータを完全に再計算するのではなく、新しいバーにその値を追加するだけです。 1439 本の小節ウィンドウの Max bars の値に達すると、古い小節が削除されます。

はい、ちなみに、他のTFでも値1439は保存されているのでしょうか、はっきりさせてください。それともM1のみ?

 
Slava:

下の投稿にある私の引用文をよくお読みになっていますか?

この動作は、「チャートあたりの 最大バー数」の 設定が導入されたときから、つまりMT4の初期から常に存在していたものです。そして、この設定に従って毎回バーの数を減らさない理由は、この15年の間に何度も説明してきました。そして今は、毎回切り返すことはありません。

誰もドキュメントを読まない。しかし、それはパラドックスです。それでも彼らは、ドキュメントに何か別のことを書くように要求してきますが、それは彼らが読んでいないのです

ここでは、ドキュメントを読むことでの「パラドックス」についてお話されています。そして、あなたが投稿を読むことでパラドックスを持っていることに何度も気づきました。ただ、最後まで読まないことが多いんですね。誰にでも欠点はあるものです。ただ、他人の欠点ではなく、自分が開発し、私たちが使っている製品の欠点に注目したほうがいい。

ありがとうございます。

 
Alexey Kozitsyn:

私もrates_totalを指しました。rate_totalとbuffersを再分割しても0にリセットされないという問題があります。

参考文献は正しくない、誤解を招く、私はhttps://www.mql5.com/ru/forum/304239/page57#comment_11519307 を書いた。

MQL5では、バッファは一般的に通常の配列として機能しますが、MT4ではターミナルがバッファを何らかの方法で処理します - それらをEMPTY_VALUEにリセットし、次に...MT5とMT4のインジケーターの違いについて、どこに書いたか覚えていませんが

バッファをクリアする必要があります - 通常の配列としてクリアし、ターミナルは配列バッファ自体のサイズを設定するだけです。

Новая версия платформы MetaTrader 5 build 2007: Экономический календарь, MQL5-программы в виде сервисов
Новая версия платформы MetaTrader 5 build 2007: Экономический календарь, MQL5-программы в виде сервисов
  • 2019.04.30
  • www.mql5.com
21 февраля 2019 года будет выпущена обновленная версия платформы MetaTrader 5...
 
Igor Makanu:

参考文献は正しくありません、誤解を招きます

その点、15年間同じことを説明しても、ドキュメントに何かを見いだせない人がいるよりは、一度ドキュメントを正しい、完全な、最新のものに変えたほうがいい。