datetime LastServerTime=TimeCurrent();
long tms=LastServerTime%86400;
int NumberFirstBar=iBarShift(NULL,0,LastServerTime,false);
datetime TimeNumberFirstBar=iTime(NULL,0,NumberFirstBar);
datetime TimeLastBar=TimeNumberFirstBar-(datetime)tms;
int NumberLastBar=iBarShift(NULL,0,TimeLastBar,false);
Comment("NumberLastBar = ",NumberLastBar);
int n = 1; // индекс дня, в данном случае 1 - вчерашний деньdatetime DayTime = iTime(NULL, PERIOD_D1, n); // Начало дня "n" в секундахint cb = iBarShift(NULL,0,DayTime); // Получим на текущем ТФ индекс 1-го бара
昨日のバーの00:00から23:59までの数字を今日の任意の時間に(もちろんテスターで)正しく取得する方法がわかりません。教えてください。
iBarShiftは もうご覧になりましたか?
iBarShiftは もうご覧になりましたか?
いや、ここにはもっと倒錯した疑問がある、それではどうにもならない。
昨日のバーの00:00から23:59までの数字を、今日のいつでも正しく確認できる方法がわかりません(もちろんStrategy Testerで)。教えてください。
テスターでは、前日の最後のバーの数字がだいたいこのように計算されます。あとは自分で作ってください。
テスターでは、前日の最後のバーの数字がだいたいこのように計算されます。あとは自分でやってください。
ありがとうございました。明日から試してみます。今日は頭が働かない。適切な質問ができていなかった。今日、昨日の最初の小節と最後の小節の数字を知りたいのです。すべてを知る必要はないのです。
ありがとうございます。明日、試してみます。今日は頭が働かないんだ適切な質問ができていなかった。今日、昨日の最初の小節と最後の小節の数字を知る必要がある。すべてを知る必要はないのです。
TimeCurrentテスターはよく拾います。ですから、似たようなバリアントで何かできるはずです(以下のコードでスクリプトを作ってみて、結果を確認してみてください)。
実は、ここに とてもいい記事があるんです。MT5用ですが、MT4でも有用な情報があります。
昨日のバーの00:00から23:59までの数字を今日の任意の時間に(もちろんテスターで)正しく取得する方法がわかりません。教えてください。
こうすることで、どの日の始まりでも最初のバーのインデックスを見つけることができます。
この指数がわかれば、前日の最後のバーの指数を計算することができます。
このようにして、任意の日の最初のバーのインデックスを見つけることができます。
この指数を知っていれば、前日の最後のバーの指数を1加算して求めることができる。
リアル口座やデモ口座でのみコードを使用する場合は、そちらのバージョンの方が便利です。 ただし、ストラテジーテスターで問題が発生する可能性があります。
追伸:そのため、FOReignEXchangeと 私は他の選択肢を挙げています。
もし、そのコードがリアル口座やデモ口座でのみ使用されるのであれば、あなたのようなバリアントがより便利です。 しかし、ストラテジーテスターでは、使い方に問題がある場合があります。
追伸:そのため、FOReignEXchangeと 私は他の選択肢を示しました。
おそらく。私はこのコードをインジケータに使用しましたが、そこで失敗することはありませんでした。いろいろなバリエーションを試させてあげてください。