キャンバスとラベルの比較 - ページ 12 1...56789101112131415161718 新しいコメント Nikolai Semko 2021.03.15 00:09 #111 Andrey Khatimlianskii:ビジュアライザーのカンヴァスのリフレッシュレートを人間的な方法で制限するには?低速では画像がリアルタイムに更新され、高速ではテストのスピードが落ちないようにするためですか?現在、canvas は(tick ごと に更新されると)可視化全体の速度を大幅に低下させます(プロファイリングではレンダリング時間の 80-90% を占めています)。秒単位で一時停止を設定できるように工夫したが、機能が制限され松葉づえになっている(低速でも画像の更新はほとんどない)。頻繁に更新されないように、何にバインドすればいいのでしょうか?GetMicroseconds?どの機能をスキップするか? アンドレイ すでに1年以上前にここに 書きました。 ライブ映像はこちら(2つのカンヴァスだけ)。 ただ、CHARTEVENT_CHART_CHANGE イベントがテスターで動作しないことを付け加えておきます。 ということで、canvas forming blockに以下のように記述しています(iCanvas使用時)。 void BildParabolas() { if(Canvas.tester) ChartChanged(); static uint lastCalc=0; uint cur=GetTickCount(); if (cur-lastCalc<17) return; ... そして、GIFにあるインジケーターのOnCalculateのコードの一部を紹介します。 static uint lastCalc=0; if (Canvas.tester) { uint cur=GetTickCount(); if (cur-lastCalc>17) { lastCalc=cur; BildParabolas(); menu.Draw(); } } Nikolai Semko 2021.03.15 02:02 #112 Dmitry Fedoseev: KANVASの方が圧倒的に遅いのは肉眼でも明らかです。 Andrey Khatimlianskii 2021.03.15 02:17 #113 Taras Slobodyanik:MT5のテスターでは、タイマーが機能し、60秒に設定すれば、テスターの時間で1分に1回更新される) 私が書いたポーズクラッチについてですが、合いませんね。 Andrey Khatimlianskii 2021.03.15 02:18 #114 Nikolai Semko:アンドレイ 1年以上前にここに 書いたことがあるんです。 ライブ映像はこちら(2つのカンヴァスだけ)。 最高速度は、少し遅そうですね。 ありがとうございます!GetTickCount経由でやってみます。 Nikolai Semko 2021.03.15 02:41 #115 Andrey Khatimlianskii:最高速度は少し遅いようだ。ありがとうございます!GetTickCount経由でやってみます。 いいえ、最大値ではありません。最大値の前ではとても敏感です。 これが最大値です。 Nikolai Semko 2021.03.15 02:53 #116 Andrey Khatimlianskii:最高速度は少し遅いようだ。ありがとうございます!GetTickCountを使ってみます。 また、チャート自体に偏りがないように、OBJ_BITMAP_LABELの 代わりにOBJ_BITMAPで実験してみるのもよいでしょう。XY座標の代わりに時間や価格にバインドするため。 みんなやってみたいけど、作れない。この場合、キャンバスをウィンドウサイズより大きくして、制御ロジックを変更する必要があります。このコードでは、垂直方向のスケールが変わらない場合、キャンバス全体を再描画する必要がなく、より小さな部分のみを再描画するため、速度面で大きな利点があると思われます。いずれにせよ、高速移動時にカンヴァスがメイングラフとアンバランスになるのが気にならなくなります。 Andrey Khatimlianskii 2021.03.15 02:56 #117 Nikolai Semko:いいえ、最大値ではありません。最大値の前ではとても敏感です。 それが最大値です。 それが「オールダニ」なのか!もしそうなら、冷静に。確認します。 ニコライ・セムコ: また、チャート自体に偏りがないように、OBJ_BITMAP_LABELの 代わりにOBJ_BITMAPで実験してみるのも良いだろう。XY座標の代わりに時間や価格にバインドすること。 みんなやってみたいけど、作れない。この場合、キャンバスをウィンドウサイズより大きくして、制御ロジックを変更する必要があります。もしかしたら、速度向上があるかもしれません。とにかく、アンバランスなキャンバスやメインチャートは、動きが速くても目が潰れることはないでしょう。 シンプルなパネルがあるのですがチャートへのリンクはありません。 Nikolai Semko 2021.03.15 02:59 #118 Andrey Khatimlianskii:通常のダッシュボードがあるチャートへのリンクはありません。 ああ、そうか、それならいいんだ。 私のhyphaにもキャンバスが1つありますが、頻繁に再描画する必要がなく、新しいバーが入る瞬間をキャッチできるため、最もリソースを消費しないパネルです。 Nikolai Semko 2021.03.15 03:03 #119 Andrey Khatimlianskii:それが「オールティック」なのか!もしそうなら、冷静に。調べてみます。 いいえ、それは3分のOHLCでした。でも、すべてのダニで確認しました。絵柄はほぼ同じです。この場合、キャンバスの再描画はティックに関係なく、実際の時間(テスターの時間ではない)にのみ関係するためです。つまり、速度が速いほどフレーム密度は低くなります。しかし、目にはその違いは見えません。 Dmitry Fedoseev 2021.03.15 06:22 #120 ああ...アニメーションのGIFは、確かに強い主張です。 1...56789101112131415161718 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ビジュアライザーのカンヴァスのリフレッシュレートを人間的な方法で制限するには?
低速では画像がリアルタイムに更新され、高速ではテストのスピードが落ちないようにするためですか?
現在、canvas は(tick ごと に更新されると)可視化全体の速度を大幅に低下させます(プロファイリングではレンダリング時間の 80-90% を占めています)。秒単位で一時停止を設定できるように工夫したが、機能が制限され松葉づえになっている(低速でも画像の更新はほとんどない)。
頻繁に更新されないように、何にバインドすればいいのでしょうか?GetMicroseconds?
どの機能をスキップするか?
アンドレイ すでに1年以上前にここに 書きました。
ライブ映像はこちら(2つのカンヴァスだけ)。
ただ、CHARTEVENT_CHART_CHANGE イベントがテスターで動作しないことを付け加えておきます。
ということで、canvas forming blockに以下のように記述しています(iCanvas使用時)。
そして、GIFにあるインジケーターのOnCalculateのコードの一部を紹介します。
KANVASの方が圧倒的に遅いのは肉眼でも明らかです。
MT5のテスターでは、タイマーが機能し、60秒に設定すれば、テスターの時間で1分に1回更新される)
私が書いたポーズクラッチについてですが、合いませんね。
アンドレイ 1年以上前にここに 書いたことがあるんです。
ライブ映像はこちら(2つのカンヴァスだけ)。
最高速度は、少し遅そうですね。
ありがとうございます!GetTickCount経由でやってみます。
最高速度は少し遅いようだ。
ありがとうございます!GetTickCount経由でやってみます。
いいえ、最大値ではありません。最大値の前ではとても敏感です。
![](https://c.mql5.com/3/350/ZZP3.gif)
これが最大値です。
最高速度は少し遅いようだ。
ありがとうございます!GetTickCountを使ってみます。
また、チャート自体に偏りがないように、OBJ_BITMAP_LABELの 代わりにOBJ_BITMAPで実験してみるのもよいでしょう。XY座標の代わりに時間や価格にバインドするため。
みんなやってみたいけど、作れない。この場合、キャンバスをウィンドウサイズより大きくして、制御ロジックを変更する必要があります。このコードでは、垂直方向のスケールが変わらない場合、キャンバス全体を再描画する必要がなく、より小さな部分のみを再描画するため、速度面で大きな利点があると思われます。いずれにせよ、高速移動時にカンヴァスがメイングラフとアンバランスになるのが気にならなくなります。
いいえ、最大値ではありません。最大値の前ではとても敏感です。
それが最大値です。
それが「オールダニ」なのか!もしそうなら、冷静に。確認します。
また、チャート自体に偏りがないように、OBJ_BITMAP_LABELの 代わりにOBJ_BITMAPで実験してみるのも良いだろう。XY座標の代わりに時間や価格にバインドすること。
みんなやってみたいけど、作れない。この場合、キャンバスをウィンドウサイズより大きくして、制御ロジックを変更する必要があります。もしかしたら、速度向上があるかもしれません。とにかく、アンバランスなキャンバスやメインチャートは、動きが速くても目が潰れることはないでしょう。
シンプルなパネルがあるのですがチャートへのリンクはありません。
通常のダッシュボードがあるチャートへのリンクはありません。
ああ、そうか、それならいいんだ。
私のhyphaにもキャンバスが1つありますが、頻繁に再描画する必要がなく、新しいバーが入る瞬間をキャッチできるため、最もリソースを消費しないパネルです。
それが「オールティック」なのか!もしそうなら、冷静に。調べてみます。
いいえ、それは3分のOHLCでした。でも、すべてのダニで確認しました。絵柄はほぼ同じです。この場合、キャンバスの再描画はティックに関係なく、実際の時間(テスターの時間ではない)にのみ関係するためです。つまり、速度が速いほどフレーム密度は低くなります。しかし、目にはその違いは見えません。