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

 
Money_Man:

question: Oncalcを起動する前にOnCalcを再実行するか、またはその中でデータを計算する方法
現在のものよりも他の文字/期間の履歴を更新した後にのみデータを描画するインジケータが必要です。

OnCalculateは タイマから呼び出すことができます。
送信アレイは、空(使用しない場合)またはOHLCアレイの実コピーとすることができる。

 
Andrey Khatimlianskii:

OnCalculateはタイマから呼び出すことができます。
渡される配列は,空の配列(使用しない場合),あるいは OHLC 配列の実コピーです.

カスタムシンボルで インジケータを起動し、OnCalculateで新しいティックをそこにコピーすると、なんと奇妙なことが起こるかもしれません...。計3行。

 
Andrey Khatimlianskii:

OnCalculateはタイマから呼び出すことができます。
渡される配列は,空の配列(使用されていない場合),あるいはOHLC配列の実コピーである可能性があります.


大きな人間THANK YOU) あなたのアドバイスはとても役に立ちました)

 

コンテキストメニューの「取引」タブからアラートを移動することをお勧めします。- ポイントは、意思決定のために、FXならドルインデックスや原油、先物市場なら原資産や各種指数のチャートなど、取引 できないチャートを使うことが多いということです。必要であれば、すべてのチャートから音声信号を取得したい。これは多くの人が要求していることだと思います。ですから、すべてをプログラムしてインジケーター/アドバイザーを作ることができるということは書く必要がないのでしょう。

 
fxsaber:

カスタムシンボルでインジケータを実行し、OnCalculateで新しいティックを投げつけると、なんと厄介なことが起こるのです...。計3行。

どのような場合に、カスタムシンボル上でこのような特定のインディケータを実行する必要があるのでしょうか?

そして、どんな悪意があるのか?

 
Andrey Khatimlianskii:

キャスタウェイシンボルでこのような特定のインディケータを実行する必要があるのは、どのような場合でしょうか?

嫌な奴につけこまれるだけの機会だ。

そして、どんな嫌なことがあるのか?

自分で試したことはないが、端末がフリーズするのは間違いないだろう。

 
Andrey Khatimlianskii:

OnCalculateはタイマから呼び出すことができます。
渡される配列は,空の配列(使用されていない場合),あるいはOHLC配列の実コピーである可能性があります.


標準的なOnCalcでは、計算のために組み込みの配列を使用しています。
OnTimerからOnCalcにダミーの配列を使うと、配列の オーバーランが出力される。 ダミーの代わりに独自の配列を入れることもできるが、OnCalcに組み込まれた配列を使って、常に同じ計算ができるようにしたい。
内蔵の配列を引き出すために、どのように呼び出すか知っていますか?

 
Money_Man:

教えてください、理解できません)) 標準のOnCalcで内蔵の配列を計算に使っています、例えばtime[]など。
OnTimerからOnCalcを呼び出すと、配列の 外に出てしまいます。配列がない代わりに独自の配列を挿入することはできますが、OnCalcでは内蔵の配列を使って、常に同じ計算ができるようにしたいのです。
内蔵の配列を引き出すために、どのように呼び出すか知っていますか?

私はストレートに「あるいはOHLCアレイの実写」と言ったのです。

自分で配列を作り、そこにデータをコピーし、要素数を格納する。

"誰が簡単だと言った?"(с)

 
Andrey Khatimlianskii:

私はストレートに「あるいはOHLCアレイの実写」と言ったのです。

自分で配列を作り、そこにデータをコピーし、要素数を格納する。

"誰が簡単だと言った?"(с)


ありがとうございます、もうそうしています。

 

今日、東南アジアのユーザーの端末で、オブジェクトの名前がロシア語の場合、認識されないという問題が発生しました

このコードはキリル文字なのでスクラップされます。

//+------------------------------------------------------------------+
//| Функция обработки событий                                        |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,         // идентификатор события
                  const long& lparam,   // параметр события типа long
                  const double& dparam, // параметр события типа double
                  const string& sparam) // параметр события типа string
 {
 //--
 if(sparam==prefix+"Скрыт")
  {
   // обработка события
  }


こちらは問題なく動作します。

//+------------------------------------------------------------------+
//| Функция обработки событий                                        |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,         // идентификатор события
                  const long& lparam,   // параметр события типа long
                  const double& dparam, // параметр события типа double
                  const string& sparam) // параметр события типа string
 {
 //--
 if(sparam==prefix+"Hide")
  {
   // обработка события
  }


プログラムでキリル文字を使うのはバカだけで、遅かれ早かれバチが当たるとは思っていたのですが。ロシア語のオブジェクトは3つだけで、ツールチップに保存することにし、プログラムが動作しなくなるのに十分な量でした。