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

 

その理由を以下のコードで説明してください。

  datetime test1 = StringToTime("2016.09.02 23:55");
  datetime test2 = StringToTime("2016.09.05 00:00");
  datetime test3 = StringToTime("2016.09.05 00:08");
  
  int n = Bars(_Symbol, PERIOD_D1, test1, test2);
  Print("time1=", (string)test1, " time2=", (string)test2, " n=", n);
  n = Bars(_Symbol, PERIOD_D1, test2, test3);
  Print("time1=", (string)test2, " time2=", (string)test3, " n=", n);

?

(EURUSD,M1)     time1=2016.09.02 23:55:00 time2=2016.09.05 00:00:00 n=1
(EURUSD,M1)     time1=2016.09.05 00:00:00 time2=2016.09.05 00:08:00 n=1

?

最初の日付のペアは、2つの異なる日を含んでいます。IMHOは、バーの 数を2に等しくすることを返すべきです。

 
Stanislav Korotky:

その理由を以下のコードで説明してください。

?

?

最初の日付のペアは、2つの異なる日を含んでいます。IMHOは、バーの 数を2に等しくすることを返すべきです。

そして、このように書くとどうなるのか確認してみましょう。

n = Bars(_Symbol, PERIOD_D1, test2, test2);

奇しくも、新しい日替わりバーの開店時でも1がもらえます。

 
Alexey Viktorov:

そして、このように書くとどうなるかを確認します。

奇しくも、新しい日替わりバーの開店時でも1がもらえます。

これが普通です。問題は、異なる日付の範囲に対して、日足棒グラフの数が1を返すことです。
 
Stanislav Korotky:
それでいいんです。問題は、異なる日付の範囲に対して、返される日足棒グラフの数が1であることです。

これが開発者の考える「時間」です。彼らは、00時間00分00秒という時刻が前日を指していると考えている。この機能のバグはこれだけではないのですが、彼らはそれを見ようとも聞こうともしないのです。

1秒を足すと0になります。

n = Bars(_Symbol, PERIOD_D1, test2+1, test3);
 

Question!

よくわからない理由で。mt5 取引プラットフォームを ロードするたびに、デフォルトでクォートが有効になっていません - 価格チャートのない空白のウィンドウが表示されます。

TFが "ブレイク "してアクティブになり、見えるようになるまで、何度も切り替えなければなりません。

なんで

 
インディケータで、それが手で設定されたのか、IndicatorCreateを介して設定されたのか、#property tester_indicatorを介して 設定されたのかをどのように判断するのでしょうか。
 
fxsaber:
インディケータで、それが手で設定されたのか、IndicatorCreateを介して設定されたのか、#property tester_indicatorを介して 設定されたのかをどのように判断するのでしょうか?

まさかね。サービスデスクに要望を書きました(2014.06.11 14:44,#1025934) - 拒否されました。

インジケーターのマスターは複数存在するため、基本的に5つで判断 することは不可能です

 
Alexey Viktorov:

これが開発者の考える「時間」です。彼らは、「00時間00分00秒」という時間が過去24時間を指していると考えている。これでは、この機能にバグが発生するだけでなく、見たくもないし聞きたくもない。

1秒を足すと0になります

それについて、サービスデスクに要望が あったのか、作成したのか。これは明らかにバグです。