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

 
Slawa:

2枚目の写真では、LastDataという短いインジケーターの後に、最後に計算されたデータがありません。1枚目244〜363、3枚目247〜409にあるのに対し

このことから、現在、この指標は算出されていないことがわかります。計算中であり、データができていない。インジケータは、レンダリングなどを担当するメインアプリケーションスレッドではなく、別のスレッドで計算されることを念のためお伝えしておきます。指標は、例外なく入力されるティックごとに計算されます。

マウスでグラフを動かしている間、マウスからのシステムメッセージを処理するために計算機資源を 吸収しています(タスクマネージャーを開いて、マウスの動きの強さによってCPUのパーセントがどのように増加するかを確認してください)。そして、インジケータが再計算する時間がないのです。そのため、2つ目のグラフは空白になっています。

残念ながら、もっとクールな感じなんですけどね。インジケーターは完全に装着されています。上記の詳細が記載された支店へのリンクです。
 
fxsaber:
残念ながら、もっとクールな感じなんですけどね。インジケーターは完全に装着されています。上記の詳細が記載された支店へのリンクです。
ショートネームの横に最近のデータがないことと、インディケータがレンダリングされていないことから、チャートをレンダリング した時点ではインディケータデータがまだ準備できておらず、インディケータ自体が計算中であったことが明らかです
 
Slawa:
ショートネームの横に最近のデータがないことと、インディケータがレンダリングされていないことから、チャートをレンダリングした時点ではインディケータデータがまだ準備できておらず、インディケータ自体が計算中であったことが明らかです
完全に短いソースコードを提供しました。その説明が正しいのであれば、うれしいです。しかし、そうでないことは、インジケータを走らせることで、ご自身で確認することができます。
 
Slawa:
ショートネーム付近に最後のデータがないことと、インジケータのレンダリングがないことは、明らかにチャート描画の時点でインジケータデータがまだ準備できておらず、インジケータ自体が計算状態であったことを表しています
つまり、チャートに描画した後、データはすでに計算されているので、この現象は一回で済むのですね?
 
-Aleks-:
I.e.これは、チャートされた後、再度行うときにすでにデータがカウントされているので、一度だけ起こることができますよね?
いいえ、複数回発生する可能性があります。マウスでチャートを前後に動かすと、その瞬間にティックがやってくる。
 
Slawa:
いや、一度や二度ではないかもしれない。マウスでグラフを前後に動かすと、その時点でティックが入る。
グラフバッファに既にカウントされているデータは、tick 毎に再計算されないのでは...?
 
Slawa:
いや、一度や二度ではないかもしれない。マウスでグラフを前後に動かすと、その瞬間にカチカチと音がする。
私の場合、マウスを動かさなくてもチラツキが発生します(ウィンドウでCTRL+D)。
 
demo.metaquotes.net:443で更新のためのデモ口座を 開くことができないのですが?
 
-Aleks-:
グラフバッファに既にカウントされているデータは、tick毎に再計算されないのでは...?

1.指標の実施状況により異なります。控えめに書くと、最後の値だけが再計算される。

2.チャートが静止しており、バーの数が 変化していない場合、衝突の際には前のバッファがレンダリングされます(つまり、空白はありません)。

 
fxsaber:
一日中、いろいろなことを解決しようとしたが、何もうまくいかなかった。コードをできるだけ簡略化し、ブランチを作成。助けてください!
GetMicrosecondCount()を使ってOnCalculate()を測定します。この値をログに 出力する。最大時間を記憶しておき、最大更新分だけをログに出力する方が見やすくなります。