ReConnectionSettings.WorkingTime и CandlesFinished
Atom Ответить
07.12.2011


Вот что произошло сегодня.
Переопределил ReConnectionSettings.WorkingTime:
Код
_trader.ReConnectionSettings.WorkingTime.Times[0] = new Ecng.ComponentModel.Range<TimeSpan>(new TimeSpan(9, 50, 0), new TimeSpan(23, 50, 0));

И в стратегию начали приходить закрытые свечи:
  • 9:50
  • 10:05
и т.д.

Таймфрейм = 15 мин.

Так и должно быть ?

Теги:


Спасибо:




16 Ответов
Alexander

Фотография
Дата: 07.12.2011
Ответить


Версия?
Если 4.0.7 - можно маломальский пример, на котором воспроизводится?
Всё перепроверил - не должно никоим образом влиять.
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


А без этого работает нормально?
Спасибо:

freelancer

Фотография
Дата: 07.12.2011
Ответить


Да. 4.0.7.
Закомментировал строку - пошло всё как надо.

Код
protected override void OnStarting()
{
    this.
    When<IEnumerable<Candle>>(candleToken.CandlesFinished()).
    Do(n =>
    {
        this.AddInfoLog("Правило CandlesFinished активировано, ServerTime = " + ((QuikTrader)Trader).Terminal.ServerTime.Value.ToString("dd.MM.yyyy H:mm:ss"));

        foreach (Candle c in n)
            this.AddInfoLog("Пришла закрытая свеча = " + c.Time.ToString("dd.MM.yyyy H:mm"));

        action(false);	//Моё
    });

    base.OnStarting();
}


И у меня в логе те неправильные свечи
Автор топика
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


А проект можете прикрепить, который бы компилировался?
Спасибо:

freelancer

Фотография
Дата: 07.12.2011
Ответить


Слишком большой проект. Сейчас что-нибудь придумаю
Автор топика
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


freelancer Перейти
Слишком большой проект. Сейчас что-нибудь придумаю


на примерах из архива воспроизводится?
Спасибо:

freelancer

Фотография
Дата: 07.12.2011
Ответить


Пока не могу проверить на примерах.

А вот на клиринге:

Пришла закрытая свеча = 07.12.2011 14:03
Пришла закрытая свеча = 07.12.2011 14:18
Автор топика
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


freelancer Перейти
Пока не могу проверить на примерах.

А вот на клиринге:

Пришла закрытая свеча = 07.12.2011 14:03
Пришла закрытая свеча = 07.12.2011 14:18


На 4.0.6 работало, когда поломалось?
Если без WorkingTime - нормальные свечки приходят?
Спасибо:

freelancer

Фотография
Дата: 07.12.2011
Ответить


На 4.0.6 не обратил внимание. Только сегодня заметил

Ситуация с клирингом - без WorkingTime.
Начало дня - нормальное
Автор топика
Спасибо:

freelancer

Фотография
Дата: 07.12.2011
Ответить


На примерах с моим WorkingTime - то же самое
Автор топика
Спасибо:

Supervisor

Фотография
Дата: 07.12.2011
Ответить


У меня похоже аналогичная проблема, свечи с таймфреймом 10 минут приходят со сдвигом в 3 минуты.
Сейчас проверю на 4.0.6
Спасибо:

Supervisor

Фотография
Дата: 07.12.2011
Ответить


В 4.0.6 работает правильно
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


Багу со сдвигом свечек подтверждаю, будет фикс.
По поводу проблемы первого сообщения - требуется подтверждение где-то, пока не воспроизводится. К примеру - на примерах из архива.

И лучше второе тестить после того как фикс первого сделаем :)
Спасибо:

freelancer

Фотография
Дата: 07.12.2011
Ответить


Инструмент RIZ1
Лог внизу окна

http://rghost.ru/33636841
Автор топика
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


freelancer Перейти
Инструмент RIZ1
Лог внизу окна

https://rghost.ru/33636841



Код
                    _trader.ReConnectionSettings.WorkingTime = Exchange.Rts.WorkingTime;
                    _trader.ReConnectionSettings.WorkingTime.Times[0] = new Range<TimeSpan>(new TimeSpan(9, 50, 0), new TimeSpan(23, 50, 0));


Ух, давайте разбираться с C#.
У вас вторая строчка меняет время и в Exchange.Rts.WorkingTime.
Отсюда и свечки идут с 9:50
Спасибо:

Alexander

Фотография
Дата: 07.12.2011
Ответить


В 4.0.8 будет метод Clone для WorkingTime.
Чтоб таких ошибок не допускали больше :)
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy