← Назад

Stock# 3.2 beta

Выложил на бокс.

Изменения:

  1. Существенно изменилась модель тестирования. Остался только EmulationTrader (отвечает и за историю, и за случайные данные).
  2. Событийная модель для стратегий стала основной. И теперь она работает чисто на событиях.
  3. Strategy.OnProcess переехал в TimeFrameStrategy.
  4. Исчез StrategyManager. Из-за пункта 2 он стал не нужен, так как каждое действие активируется в том потоке, в котором пришло событие.
  5. Order.InitializationTime исчез, но появился Order.Latency. Поддерживается высокая точность замера round trip заявок, актуально для HFT шлюзов.
  6. Ecng.Trading был переименован в StockSharp.
  7. Класс для расчета кривой эквити и графический контрол для отображения.
  8. В дистрибутив вошли Alfa + Plaza.
  9. http://stocksharp.com/forum/1626/Zapusk-tierminala-Launch/

Баги:

  1. http://stocksharp.com/posts/m/8336/
  2. http://stocksharp.com/forum/1606/oshibka-pri-dvizhienii-zaiavki-ArgumentOutOfRangeException/
  3. http://stocksharp.com/posts/m/8701/
  4. http://stocksharp.com/posts/m/8794/

Комментарии (56)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

esper
esper
Событийная модель для стратегий стала основной. И теперь она работает чисто на событиях.

Т.е. теперь нет ActionStrategy и необходимо наследоваться от Strategy?

Посмотрел класс Strategy, в нем нет When, т.е. ActionStrategy должен быть, но где он?

hobo
hobo

When из Ecng.Trading.Algo.Strategies в Stocksharp.Algo.TraderHelper переместился.

President
President

а где задается TimeFrame для эмуляции?

вот этого кода недостаточно:

            var trader = new EmulationTrader(
                new[] { securityA, securityB },
                new[] { portfolio }, storage
                );

            trader.StartTime = new DateTime(2009, 6, 1);
            trader.StopTime = new DateTime(2009, 9, 1);

            trader.StartExport();

            _strategy.Trader = trader;
            _strategy.Start();

у стратегии вызывается OnRunning() но не вызывается OnProcess() при этом приложение что-то код что-то продолжает делать.

Mikhail Sukhov
Mikhail Sukhov Автор

President: а где задается TimeFrame для эмуляции?

В примере SampleHistoryTesting показана инициализация.

President
President

спасибо, заработало

PS. а проблема была в том что я не вызывал у стратегии base.OnRunning(). и мне кажется тут есть небольшая логическая недоработка - нужно либо у всех перегруженных методов обязывать вызывать базовый (у OnProcess, например, тоже) либо ни у кого (вся унаследованная логика может вызываеться сама перед или после вызова этих виртуальных методов).

Mikhail Sukhov
Mikhail Sukhov Автор

President: нужно либо у всех перегруженных методов обязывать вызывать базовый

Это неправильно с точки зрения ООП. Мы вызываем базовый класс если хотим применить базовую реализацию + свою. Если не вызывать базовый метод, то только свою.

VladOA
VladOA

При запуске примера SimpleHistoryTesting появляется ошибка:

Mikhail Sukhov
Mikhail Sukhov Автор

VladOA: При запуске примера SimpleHistoryTesting появляется ошибка:

Попробуйте напрямую сборку System.Windows.Forms.DataVisualization.dll подключить. Она почему то у вас не компируется при компиляции.

VladOA
VladOA

Если заново собрать пример SimpleHistoryTesting под FW 3.5 , то он запускается. Однако, во время тестирования стратегии вылетает. Пробовал менять период тестирования, если указать меньше то работает.

Сборка System.Windows.Forms.DataVisualization.dll поддерживается FW 4.0, то есть нужно собирать проект под FW 4.0?

Mikhail Sukhov
Mikhail Sukhov Автор

VladOA: Если заново собрать пример SimpleHistoryTesting под FW 3.5 , то он запускается. Однако, во время тестирования стратегии вылетает. Пробовал менять период тестирования, если указать меньше то работает.

Сборка System.Windows.Forms.DataVisualization.dll поддерживается FW 4.0, то есть нужно собирать проект под FW 4.0?

Точно не связанные вещи. Смотрите ошибку в стратегии, к предыдущей ошибке не имеет отношения.

Mikhail Sukhov
Mikhail Sukhov Автор

Выложил на 3.2.1.

Изменения:

  1. Изменил механизм эквити.
  2. http://stocksharp.com/forum/1663/ActionStrategy---i-sviechi/
  3. TimeFrameStrategy.TimeFrame

Баги:

  1. http://stocksharp.com/forum/1668/TakeProfitStrategy---Obiem-zaiavki-nie-mozhiet-byt--nulievym/
  2. http://stocksharp.com/forum/1670/3-2-i-sierializatsiia-sviechiei/
  3. Вычисление PnL.
  4. Много всего, что сами нашли.
mxm
mxm

Mikhail Sukhov: Выложил на 3.2.1.

Изменения:

  1. Изменил механизм эквити.
  1. http://stocksharp.com/forum/1663/ActionStrategy---i-sviechi/
  1. TimeFrameStrategy.TimeFrame

Баги:

  1. http://stocksharp.com/forum/1668/TakeProfitStrategy---Obiem-zaiavki-nie-mozhiet-byt--nulievym/
  1. http://stocksharp.com/forum/1670/3-2-i-sierializatsiia-sviechiei/
  1. Вычисление PnL.
  1. Много всего, что сами нашли.

Михаил, день добрый!

Знакомый трейдер сегодня показал ваш проект, посмотрел библиотеку очень интересная и удобная, очень здорово, что в России существуют подобные проекты. Я считаю, что на современном рынке, для частного трейдера(небольшого фонда) "железная" скорость (low lat) все же не так актуальна, как скорость реализации уникальной идеи, наверное поэтому мне понравился ваш проект, библиотека очень понятная, удобная и уже вполне приличная. И что замечательно проект открытый. Мы сами сейчас стараемся потихоньку переходить с ORC Software на открытые вещи на подобии Marketcetera, будем посматривать за S#, надеюсь со временем вы будете уделять внимание не только Российскому рынку))) Удачи и успехов!

Mikhail Sukhov
Mikhail Sukhov Автор

Выложили на 3.2.2.

Изменения:

  1. Для Quik получение Вариционной маржи для рынках отличных от ММВБ делается через ExtensionInfo.
  2. Перегруженные методы QuikTrader.StartExport
  3. Изменение в ДДЕ для таблиц Инструменты и Портфель для деривативов. **Теперь:
  • нет столбца Точность цены в таблице Инструменты
  • в таблице Портфель по деривативам вместо Пред. лимит откр. поз. используется Лимит откр. поз.** Пользуйтесь Verifier и читайте документацию для проверки.

Баги:

  1. TakeProfitStrategy - нулевой объём заявки
  2. Двойной вызов CandlesFinished, двойной объём заявок, ....
  3. Много всего, что сами нашли
Alexander
Alexander

Выложили 3.2.3

Изменения:

  1. Гидра научилась формировать свечки из сделок. 🤤
  2. Quik: в таблицу Стоп-заявок добавлен столбец Результат. В коде доступен через QuikStopCondition.Result.
  3. QuotingStrategy.CanRegister переименован в QuotingStrategy.NeedRegister
  4. **Переработано понятие Портфелей для ММВБ

Читайте документацию в соответствующем разделе (Quik -> Портфели в Quik). <mark>Из таблицы Портфель по бумагам убран столбец Фирма.**</mark> Проверьте Verifier свои настройки. 5. API для хранения свечек.

Баги:

  1. StopLossStrategy отправляет неправильный Order
  2. Гидра. Ошибка загрузки инструментов.
  3. Не вызывается OnProcess() после вызова Stop().
  4. Portfolio для Position
  5. Много всего, что сами нашли
Mikhail Sukhov
Mikhail Sukhov Автор

Выложили 3.2.4

Изменения:

  1. Расширенная обработка стоп заявок Квика.
  2. Возможность получать стратегию, которая вызвала остановку BatchStrategy через BatchStrategy.FirstFinishedStrategy

Баги:

  1. Критическая бага в Гидре (РТС источник). Нужно обновиться, если успели скачать 3.2.3.
  2. http://stocksharp.com/forum/1233/
  3. http://stocksharp.com/forum/1706/Grieki-v-HistoryTest/
Mikhail Sukhov
Mikhail Sukhov Автор

Выложили 3.2.5

Изменения:

  1. Метод для вычисления разницы между стаканами TraderHelper.GetDelta. + обратное AddDelta.
  2. Метод TraderHelper.GetOrderVolume http://stocksharp.com/posts/m/9427/
  3. BasketPortfolio
  4. Расширенная работа LastTrade событий http://stocksharp.com/posts/m/9450/

Баги:

  1. Многочисленные фиксы для Гидры.
  2. http://stocksharp.com/forum/1716/nie-stroiatsia-RangeCandle/
  3. http://stocksharp.com/forum/1717/Niepravil-no-schitaietsia-ghamma-optsiona/
  4. http://stocksharp.com/posts/m/9481/
Mikhail Sukhov
Mikhail Sukhov Автор

Выложили 3.2.6

Изменения:

  1. Ускорение запуска DDE http://stocksharp.com/posts/m/9635/
  2. BasketSecurity и BasketPortfolio в BusinessEntities.
  3. Unit. Операторы сравнения.
  4. MarketDepth правила для событийной модели.
  5. Изменение логирования. Появление StrategyLogListener и StrategyLogManager.
  6. FileLogListener. Отдельные файлы для каждой стратегии.
  7. PnlManager и PositionManager - добавлена возможность выставления начальных значений. http://stocksharp.codeplex.com/workitem/482
  8. http://stocksharp.com/posts/m/9873/
  9. StrategyProcessStates.Runned -> StrategyProcessStates.Started
  10. Новый метод StrategyRule.EnableLog
  11. Новой свойство Strategy.OrderFails
  12. Strategy теперь пишет больше лог сообщений.
  13. Новой свойство PortfolioComboBox.Portfolios.
  14. Гидра. Изменен формат хранения времени. Подробнее, в форуме Гидры.

Баги:

  1. http://stocksharp.com/posts/m/9613/
  2. OnProcess() для TimeFrameStrategy вызывается 2 раза на каждом интвервале
  3. http://stocksharp.com/forum/1744/v-EmulationTrader-BestAsk-i-BestBid-vsieghda--0--vies--stakan-pustoi/
  4. http://stocksharp.com/posts/m/9924/
  5. http://stocksharp.com/posts/m/9971/
Mikhail Sukhov
Mikhail Sukhov Автор

Не знаю как у других, но у меня теперь экспорт запускает меньше секунды. Вот это фикс. Молодцы.

Den
Den

Mikhail Sukhov: Не знаю как у других, но у меня теперь экспорт запускает меньше секунды. Вот это фикс. Молодцы. Да, парни постарались! Экспорт реактивный!

Den
Den

Alexander: Изменения:

Читайте документацию в соответствующем разделе (Quik -> Портфели в Quik). <mark>Из таблицы Портфель по бумагам убран столбец Фирма.</mark> Проверьте Verifier свои настройки.

Stock# 3.2.6: info.wnd, которое лежит в Samples\Quik по-прежнему содержит столбец "Фирма". У меня Quik 5.22, но столбца "Текущее плечо" (согласно документации) в настройках портфеля по бумагам я не обнаружил... Поправьте, пожалуйста, info.wnd и что мне можно сделать с колонкой "Текущее плечо"?

Еще заметил бажок в Verifier'e: если несколько раз нажать "Проверить", то вылетает эксепшн, что сервер wrapper уже запущен...

dart
dart

Den: У меня Quik 5.22, но столбца "Текущее плечо" (согласно документации) в настройках портфеля по бумагам я не обнаружил... Поправьте, пожалуйста, info.wnd и что мне можно сделать с колонкой "Текущее плечо"? Аналогично. У меня версия квика у одного из брокеров ещё старше . Из положения вышел - подставил вместо колонки "Текущее плечо" колонку "Ур.маржи". Я её не использую, верифаер ругается, но бот работает

Mikhail Sukhov
Mikhail Sukhov Автор

dart:

Den: У меня Quik 5.22, но столбца "Текущее плечо" (согласно документации) в настройках портфеля по бумагам я не обнаружил... Поправьте, пожалуйста, info.wnd и что мне можно сделать с колонкой "Текущее плечо"? Аналогично. У меня версия квика у одного из брокеров ещё старше . Из положения вышел - подставил вместо колонки "Текущее плечо" колонку "Ур.маржи". Я её не использую, верифаер ругается, но бот работает

Загрузил info.wnd из дистрибутива. "Текущее плечо" присутствует. Может это из-за того, что не подключена ММВБ?

Mikhail Sukhov
Mikhail Sukhov Автор

Den: Еще заметил бажок в Verifier'e: если несколько раз нажать "Проверить", то вылетает эксепшн, что сервер wrapper уже запущен...

Нажимал раз 10, не вылетало исключения. Каждый раз проверялись все окна и выдавалось что все ОК.

Mikhail Sukhov
Mikhail Sukhov Автор

Выложили 3.2.7

Изменения:

  1. Ускорение работы бэктестера и оптимизация потребления памяти. Учет при генерации данных время клиринга и не торгового времени.
  2. История. Учитывается Security.MinStepPrice.
  3. Security. MinStepPrice по умолчанию == 1 и не nullable. Для БД нужно накатить изменения, выполнив скрипт:
update [Security]
set
	MinStepPrice = 1
where
	MinStepPrice is null or MinStepPrice = 0

ALTER TABLE [dbo].[Security] ALTER COLUMN [MinStepPrice] REAL NOT NULL;
  1. IMarketDataStorage.AllDates.
  2. Учет вариационной маржи в рублях.
  3. Контрол SecurityPicker.
  4. Strategy.IsRuleSuspended.
  5. Hydra. Поддержка украинской биржы.
Mikhail Sukhov
Mikhail Sukhov Автор

Перезалил 3.2.7, в дистрибутив попали старые сборки.

Евгений
Евгений

Mikhail Sukhov: Выложили 3.2.7

Изменения:

  1. Учет при генерации данных время клиринга и не торгового времени.

Михаил, поясните, пожалуйста, этот пункт, учет касается только генерации данных при тестировании? На работу стратегий это никак не влияет?

Mikhail Sukhov
Mikhail Sukhov Автор

Евгений: Михаил, поясните, пожалуйста, этот пункт, учет касается только генерации данных при тестировании? На работу стратегий это никак не влияет?

Стратегии активизируются когда появляются новые данные. Нет их, нет и работающих стратегий.

Mikhail Sukhov
Mikhail Sukhov Автор

Выложили 3.2.8

Изменения:

  1. CandleManager.GetCandle - метод возвращающий по индексу свечку с конца.

Фикс по Гидре, украинская биржа.

Евгений
Евгений

Mikhail Sukhov:

Евгений: Михаил, поясните, пожалуйста, этот пункт, учет касается только генерации данных при тестировании? На работу стратегий это никак не влияет?

Стратегии активизируются когда появляются новые данные. Нет их, нет и работающих стратегий.

Правильно я понял, что теперь нет необходимости проверять время работы стратегий? Это также касается и защитных стратегий?

Mikhail Sukhov
Mikhail Sukhov Автор

Евгений: Правильно я понял, что теперь нет необходимости проверять время работы стратегий? Это также касается и защитных стратегий?

А когда это требовалось?

Евгений
Евгений

Mikhail Sukhov:

Евгений: Правильно я понял, что теперь нет необходимости проверять время работы стратегий? Это также касается и защитных стратегий?

А когда это требовалось?

Попробую точнее задать вопрос: учет времени клиринга и не торгового времени происходит только для бэктестера или для реальной работы стратегий тоже?

Mikhail Sukhov
Mikhail Sukhov Автор

Евгений:

Mikhail Sukhov:

Евгений: Правильно я понял, что теперь нет необходимости проверять время работы стратегий? Это также касается и защитных стратегий?

А когда это требовалось?

Попробую точнее задать вопрос: учет времени клиринга и не торгового времени происходит только для бэктестера или для реальной работы стратегий тоже?

Время работы стратегий зависит от рыночных данных. Есть данные текут, значит торговля идет. В EmulationTrader в зависимости от установленного WorkingTime идет или не идет генерация данных. На загруженные данные из файла это никак не влияет. Если в истории сделки есть, значит торги были. Все.

StockSharp
StockSharp

Молодцы =)

Yura
Yura

Жду не дождусь новой версии!!!!🤤 🤤 🤤

Garic
Garic

Скачал 3.2.7. Ничего не менял.

Открываю в Гидре MainWindow.xaml - ругается "Ошибка Не удалось загрузить метаданные для сборки "Hydra"... Невозможно загрузить файл или сборку "Hydra" или один из зависимых от них компонентов. Не удается найти указанный файл."

Т.е. получается это оно на само себя ругается xmlns:Hydra="clr-namespace:StockSharp.Hydra".

После построения проекта ошибка исчезает. Но при попытке запуска гидры вылетает ошибка "....Не удается создать экземпляр "MainWindow", определенный в сборке "Hydra.... Ошибка в файле разметки "Hydra;component/MainWindow.xaml"

Не подскажете что нужно настроить?

Mikhail Sukhov
Mikhail Sukhov Автор

Garic: Не подскажете что нужно настроить?

Отредактировал новость, смотрите выше.

Garic
Garic

Mikhail Sukhov: Отредактировал новость, смотрите выше.

Спс, но у меня не на это ругается.

Посмотрел прошлую версию 3.2.6 - тоже самое - если в студии открыть MainWindow.xaml, то ругается "Незаданное пространство имен CLR. URI "clr-namespace" ссылается на пространство имен "StockSharp.Hydra", которое не включено в сборку"

Бред какой-то, само на себя ругается. Думаю у меня в вижуалстудии (2010 Ultimate) надо что-то настроить, но что - хз.

На днях переставил систему на 64-бит, чтобы не было проблем с нехваткой памяти. После этого и появилось. Но в 3.2.6 Гидра хотябы запускалась, а в 3.2.7 не хотит (

Mikhail Sukhov
Mikhail Sukhov Автор

Garic:

Mikhail Sukhov: Отредактировал новость, смотрите выше.

Спс, но у меня не на это ругается.

Тоесть sql скрипт вы уже прогнали?

Garic
Garic

Mikhail Sukhov: Тоесть sql скрипт вы уже прогнали?

Ага

Mikhail Sukhov
Mikhail Sukhov Автор

Garic:

Mikhail Sukhov: Тоесть sql скрипт вы уже прогнали?

Ага

Тогда в отладчике раскройте саму ошибку и идите по вложенным ошибкам (InnerException).

Garic
Garic

После нескольких перекомпиляций прошло само. Что это было - так и не понял.

Mikhail Sukhov
Mikhail Sukhov Автор

Garic: После нескольких перекомпиляций прошло само. Что это было - так и не понял.

Если сейчас запустит Гидру прямо из дистрибутива, она все равно будет выдавать ошибку?

Garic
Garic

Mikhail Sukhov: Если сейчас запустит Гидру прямо из дистрибутива, она все равно будет выдавать ошибку?

Скачал - всё работает. Похоже это был какой-то непонятный полуночный глюк )

Alexander
Alexander

Выложили 3.2.9

Изменения:

  1. LimitQuotingStrategy - котирование объема по лимитированной цене
  2. TheorPriceQuotingStrategy - котирование опционов по теоретической цене
  3. Свойство QuotingStrategy.Timeout - ограничения котирования по времени
  4. Вспомогательные методы для получения свечек по номеру
  5. Возвращены (по сравнению с 3.2.8) методы для определения зарегистрировано ли получение определённых типов свечей
  6. MarketDepth.ToString()
  7. MarketDepth.Verify()
  8. Возможность устанавливать директорию сохранения логов у FileLogListener (FileDirectory)

Баги:

  1. GetCandle возвращает null
  2. Отображение работающих стратегий в StrategiesMonitorWindow
  3. http://stocksharp.com/posts/m/10375/
Church
Church

Пытаюсь использовать QuotingStrategy.Timeout:

public void EnterViaQuoting(OrderDirections Direct)
{
    var strategy = new MarketQuotingStrategy(Direct, this.Volume)
    {
        PriceType = MarketPriceTypes.Opposite,
        PriceOffset = -_entrySlip,
        TimeOut = TimeSpan.FromSeconds(5),
    };
    base.ChildStrategies.Add(strategy);

Задача - вход на быстром рынке (пробой пика), если не получается - отмена сигнала.

Результат таков:

A$ 22.08.2011 16:11:49.452 Стратегия запущена. A$ 22.08.2011 16:11:49.460 Processing history... (this might take some time). A$ 22.08.2011 16:12:03.414 History is processed. A$ 22.08.2011 16:12:03.415 Beginning core cycle. A$ 22.08.2011 16:12:35.487 [>>>TRADE<<<] ENTER SHORT... A$ 22.08.2011 16:12:35.502 [MQS] Стратегия запущена. A$ 22.08.2011 16:12:35.510 [MQS] Стратегия останавливается. A$ 22.08.2011 16:12:35.512 [MQS] Заканчиваем котирование с неисполненным объемом равный 1. A$ 22.08.2011 16:12:35.513 [MQS] Заканчиваем котирование с неисполненным объемом равный 1. A$ 22.08.2011 16:12:35.516 [MQS] Стратегия остановлена. A$ 22.08.2011 16:13:01.668 Стратегия останавливается. A$ 22.08.2011 16:13:01.669 Стратегия остановлена.

Пробовал ставить FromMilliseconds(5000), FromMinute(0.1) - результат такой же. Стратегия выходит сразу же.

Alexander
Alexander

Пытаюсь использовать QuotingStrategy.Timeout:

public void EnterViaQuoting(OrderDirections Direct)
{
    var strategy = new MarketQuotingStrategy(Direct, this.Volume)
    {
        PriceType = MarketPriceTypes.Opposite,
        PriceOffset = -_entrySlip,
        TimeOut = TimeSpan.FromSeconds(5),
    };
    base.ChildStrategies.Add(strategy);

Задача - вход на быстром рынке (пробой пика), если не получается - отмена сигнала.

Результат таков:

A$ 22.08.2011 16:11:49.452 Стратегия запущена. A$ 22.08.2011 16:11:49.460 Processing history... (this might take some time). A$ 22.08.2011 16:12:03.414 History is processed. A$ 22.08.2011 16:12:03.415 Beginning core cycle. A$ 22.08.2011 16:12:35.487 [>>>TRADE<<<] ENTER SHORT... A$ 22.08.2011 16:12:35.502 [MQS] Стратегия запущена. A$ 22.08.2011 16:12:35.510 [MQS] Стратегия останавливается. A$ 22.08.2011 16:12:35.512 [MQS] Заканчиваем котирование с неисполненным объемом равный 1. A$ 22.08.2011 16:12:35.513 [MQS] Заканчиваем котирование с неисполненным объемом равный 1. A$ 22.08.2011 16:12:35.516 [MQS] Стратегия остановлена. A$ 22.08.2011 16:13:01.668 Стратегия останавливается. A$ 22.08.2011 16:13:01.669 Стратегия остановлена.

Пробовал ставить FromMilliseconds(5000), FromMinute(0.1) - результат такой же. Стратегия выходит сразу же.

Исправлено. Спасибо за фидбэк. Будет в 3.2.10.

P.S. На будущее - большая просьба создавать новый топик для нового найденного бага.

Church
Church

Alexander: P.S. На будущее - большая просьба создавать новый топик для нового найденного бага. Пардон, исправлюсь.

Alexander
Alexander
Den
Den

Alexander: Выложили 3.2.10

Спасибо за апдейт! Забирать надо с кодеплекса? На боксе его не видно...

Sergey Masyura
Sergey Masyura

Den:

Alexander: Выложили 3.2.10

Спасибо за апдейт! Забирать надо с кодеплекса? На боксе его не видно...

С box.net забирать. На codeplex релизы не выкладываются, только референсы периодически обновляются.

http://www.box.net/stocksharp/1/106808774

Den
Den

sergey.masyura:

Den:

Alexander: Выложили 3.2.10

Спасибо за апдейт! Забирать надо с кодеплекса? На боксе его не видно...

С box.net забирать. На codeplex релизы не выкладываются, только референсы периодически обновляются.

http://www.box.net/stocksharp/1/106808774 Удивительное дело. По этой прямой ссылке вижу. Если захожу на боксе в папку 3.2, то вижу все 3.2.x кроме 3.2.10...

Mikhail Sukhov
Mikhail Sukhov Автор

Den: Удивительное дело. По этой прямой ссылке вижу. Если захожу на боксе в папку 3.2, то вижу все 3.2.x кроме 3.2.10...

Браузер паленый.

Den
Den

Mikhail Sukhov:

Den: Удивительное дело. По этой прямой ссылке вижу. Если захожу на боксе в папку 3.2, то вижу все 3.2.x кроме 3.2.10... Браузер паленый. Ходил двумя разными браузерами. Теперь стало видно. Проблемы с импортом индексов и кросс-курсов больше нет, спасибо!

Alexander
Alexander

Den:

Mikhail Sukhov:

Den: Удивительное дело. По этой прямой ссылке вижу. Если захожу на боксе в папку 3.2, то вижу все 3.2.x кроме 3.2.10... Браузер паленый. Ходил двумя разными браузерами. Теперь стало видно. Проблемы с импортом индексов и кросс-курсов больше нет, спасибо!

Пожалуйста. Кстати, новость о выходе новой беты: "Выложили 3.2.10" содержит прямую ссылку на скачивание... На будущее :)

Alexander
Alexander

Выложили 3.2.11

Столько изменений между бетами не было давно, так что приготовьтесь.

Изменения:

  1. Объём теперь decimal, а не int32
  2. ITrader.SyncMarketTime - добавлена поддержка синхронизации времени через NTP сервер. Если NTP сервер по какой-то причине недоступен (сидите через прокси, NTP отвалился) - в MarketTimeOffset устанавливается разница между часовым поясом биржи (Мск для РТС, ММВБ и тестирования, Киев - для украинской) и вашим часовым поясом.
  3. Полностью переработан StrategiesMonitorWindow. Теперь называется MonitorWindow.
  1. возможность писать лог от инфраструктуры, а не только от стратегий;
  2. добавление стратегий теперь более прозрачно. См. документацию.
  1. ConsoleLogListener. Разноцветные сообщения.
  2. Полный рефакторинг логгирования. См. документацию для подробностей.
  3. BasketTrader удалён за ненадобностью
  4. Переименования (Multi*, Batch* -> Basket*; MultiTrader.AggregatedTraders -> MultiTrader.InnerTraders; StrategyErrorStates -> ErrorStates, StrategyProcessStates -> ProcessStates, StrategyProcessResults -> ProcessResults)
  5. Quik: если индексы выводятся по DDE из таблицы инструменты и добавлена колонка Значение, то оно пишется в Security.LastTrade.Price
  6. Quik: QuikTrader.MarketTime изменён. Теперь время берётся как и у BaseTrader.MarketTime - по системному времени
  7. Quik: Добавлен метод QuikTerminal.RegisterSecurity
  8. Quik: По умолчанию заявки теперь посылаются в асинхронном режиме
  9. Quik: Если программно открывается стакан при включённой сортировки таблицы Инструменты - сортировка снимается.
  10. Quik: Возможность просмотра системных сообщений (QuikTrader.Termianl.GetMessages())
  11. EmulationTrader. Учет времени у startDate и stopDate.
  12. Гидра - произвольная глубина стаканов.
  13. Гидра - существенно изменён формат хранения данных. Теперь данные занимают ещё меньше времени.
  14. Добавлен класс FortsDailyData (Algo.History.Rts) для получения исторических дневных данных. <u>Спасибо пользователю Church.</u>
  15. Plaza2: коннектор восстанавливает работу после обрыва подключения к роутеру.

Баги:

  1. Грек ро всегда равен 0.
  2. Некорректное сохранение дублирующихся данных в MarketDataSotrage.
  3. Исключение при вызове Trader.RegisterQuotes.
  4. EmulationTrader.Suspend не сразу останавливает тестирование.
  5. Тестирование: лимитные заявки исполняются по неправильной цене
  6. Гидра. Ошибка при загрузке сделок по VTBR.
  7. много фиксов что нашли сами

Гидра переехала на Codeplex. Ждём новых желающих по внесению своих идей и изменений в проект Stock#.

Оставайтесь с нами, а также приводите друзей и знакомых! Вас ждёт ещё много интересного впереди!

Church
Church
Church

По всей видимости, есть еще изменение: большая часть методов класса Strategy превратились в extension methods. Не знаю, чем они отличаются, но вызывать теперь их внутри класса надо через this.