Выложил на бокс.
Изменения:
- Существенно изменилась модель тестирования. Остался только EmulationTrader (отвечает и за историю, и за случайные данные).
- Событийная модель для стратегий стала основной. И теперь она работает чисто на событиях.
- Strategy.OnProcess переехал в TimeFrameStrategy.
- Исчез StrategyManager. Из-за пункта 2 он стал не нужен, так как каждое действие активируется в том потоке, в котором пришло событие.
- Order.InitializationTime исчез, но появился Order.Latency. Поддерживается высокая точность замера round trip заявок, актуально для HFT шлюзов.
- Ecng.Trading был переименован в StockSharp.
- Класс для расчета кривой эквити и графический контрол для отображения.
- В дистрибутив вошли Alfa + Plaza.
- http://stocksharp.com/forum/1626/Zapusk-tierminala-Launch/
Баги:
Комментарии (56)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
Т.е. теперь нет ActionStrategy и необходимо наследоваться от Strategy?
Посмотрел класс Strategy, в нем нет When, т.е. ActionStrategy должен быть, но где он?
When из Ecng.Trading.Algo.Strategies в Stocksharp.Algo.TraderHelper переместился.
а где задается TimeFrame для эмуляции?
вот этого кода недостаточно:
у стратегии вызывается OnRunning() но не вызывается OnProcess() при этом приложение что-то код что-то продолжает делать.
В примере SampleHistoryTesting показана инициализация.
спасибо, заработало
PS. а проблема была в том что я не вызывал у стратегии base.OnRunning(). и мне кажется тут есть небольшая логическая недоработка - нужно либо у всех перегруженных методов обязывать вызывать базовый (у OnProcess, например, тоже) либо ни у кого (вся унаследованная логика может вызываеться сама перед или после вызова этих виртуальных методов).
Это неправильно с точки зрения ООП. Мы вызываем базовый класс если хотим применить базовую реализацию + свою. Если не вызывать базовый метод, то только свою.
При запуске примера SimpleHistoryTesting появляется ошибка:
Попробуйте напрямую сборку System.Windows.Forms.DataVisualization.dll подключить. Она почему то у вас не компируется при компиляции.
Если заново собрать пример SimpleHistoryTesting под FW 3.5 , то он запускается. Однако, во время тестирования стратегии вылетает. Пробовал менять период тестирования, если указать меньше то работает.
Сборка System.Windows.Forms.DataVisualization.dll поддерживается FW 4.0, то есть нужно собирать проект под FW 4.0?
Точно не связанные вещи. Смотрите ошибку в стратегии, к предыдущей ошибке не имеет отношения.
Выложил на 3.2.1.
Изменения:
Баги:
Михаил, день добрый!
Знакомый трейдер сегодня показал ваш проект, посмотрел библиотеку очень интересная и удобная, очень здорово, что в России существуют подобные проекты. Я считаю, что на современном рынке, для частного трейдера(небольшого фонда) "железная" скорость (low lat) все же не так актуальна, как скорость реализации уникальной идеи, наверное поэтому мне понравился ваш проект, библиотека очень понятная, удобная и уже вполне приличная. И что замечательно проект открытый. Мы сами сейчас стараемся потихоньку переходить с ORC Software на открытые вещи на подобии Marketcetera, будем посматривать за S#, надеюсь со временем вы будете уделять внимание не только Российскому рынку))) Удачи и успехов!
Выложили на 3.2.2.
Изменения:
Баги:
Выложили 3.2.3
Изменения:
Читайте документацию в соответствующем разделе (Quik -> Портфели в Quik). <mark>Из таблицы Портфель по бумагам убран столбец Фирма.**</mark> Проверьте Verifier свои настройки. 5. API для хранения свечек.
Баги:
Выложили 3.2.4
Изменения:
Баги:
Выложили 3.2.5
Изменения:
Баги:
Выложили 3.2.6
Изменения:
Баги:
Не знаю как у других, но у меня теперь экспорт запускает меньше секунды. Вот это фикс. Молодцы.
Stock# 3.2.6: info.wnd, которое лежит в Samples\Quik по-прежнему содержит столбец "Фирма". У меня Quik 5.22, но столбца "Текущее плечо" (согласно документации) в настройках портфеля по бумагам я не обнаружил... Поправьте, пожалуйста, info.wnd и что мне можно сделать с колонкой "Текущее плечо"?
Еще заметил бажок в Verifier'e: если несколько раз нажать "Проверить", то вылетает эксепшн, что сервер wrapper уже запущен...
Загрузил info.wnd из дистрибутива. "Текущее плечо" присутствует. Может это из-за того, что не подключена ММВБ?
Нажимал раз 10, не вылетало исключения. Каждый раз проверялись все окна и выдавалось что все ОК.
Выложили 3.2.7
Изменения:
Перезалил 3.2.7, в дистрибутив попали старые сборки.
Михаил, поясните, пожалуйста, этот пункт, учет касается только генерации данных при тестировании? На работу стратегий это никак не влияет?
Стратегии активизируются когда появляются новые данные. Нет их, нет и работающих стратегий.
Выложили 3.2.8
Изменения:
Фикс по Гидре, украинская биржа.
Правильно я понял, что теперь нет необходимости проверять время работы стратегий? Это также касается и защитных стратегий?
А когда это требовалось?
Попробую точнее задать вопрос: учет времени клиринга и не торгового времени происходит только для бэктестера или для реальной работы стратегий тоже?
Время работы стратегий зависит от рыночных данных. Есть данные текут, значит торговля идет. В EmulationTrader в зависимости от установленного WorkingTime идет или не идет генерация данных. На загруженные данные из файла это никак не влияет. Если в истории сделки есть, значит торги были. Все.
Молодцы =)
Жду не дождусь новой версии!!!!🤤 🤤 🤤
Скачал 3.2.7. Ничего не менял.
Открываю в Гидре MainWindow.xaml - ругается "Ошибка Не удалось загрузить метаданные для сборки "Hydra"... Невозможно загрузить файл или сборку "Hydra" или один из зависимых от них компонентов. Не удается найти указанный файл."
Т.е. получается это оно на само себя ругается xmlns:Hydra="clr-namespace:StockSharp.Hydra".
После построения проекта ошибка исчезает. Но при попытке запуска гидры вылетает ошибка "....Не удается создать экземпляр "MainWindow", определенный в сборке "Hydra.... Ошибка в файле разметки "Hydra;component/MainWindow.xaml"
Не подскажете что нужно настроить?
Отредактировал новость, смотрите выше.
Спс, но у меня не на это ругается.
Посмотрел прошлую версию 3.2.6 - тоже самое - если в студии открыть MainWindow.xaml, то ругается "Незаданное пространство имен CLR. URI "clr-namespace" ссылается на пространство имен "StockSharp.Hydra", которое не включено в сборку"
Бред какой-то, само на себя ругается. Думаю у меня в вижуалстудии (2010 Ultimate) надо что-то настроить, но что - хз.
На днях переставил систему на 64-бит, чтобы не было проблем с нехваткой памяти. После этого и появилось. Но в 3.2.6 Гидра хотябы запускалась, а в 3.2.7 не хотит (
Тоесть sql скрипт вы уже прогнали?
Ага
Тогда в отладчике раскройте саму ошибку и идите по вложенным ошибкам (InnerException).
После нескольких перекомпиляций прошло само. Что это было - так и не понял.
Если сейчас запустит Гидру прямо из дистрибутива, она все равно будет выдавать ошибку?
Скачал - всё работает. Похоже это был какой-то непонятный полуночный глюк )
Выложили 3.2.9
Изменения:
Баги:
Пытаюсь использовать QuotingStrategy.Timeout:
Задача - вход на быстром рынке (пробой пика), если не получается - отмена сигнала.
Результат таков:
Пробовал ставить FromMilliseconds(5000), FromMinute(0.1) - результат такой же. Стратегия выходит сразу же.
Пытаюсь использовать QuotingStrategy.Timeout:
Задача - вход на быстром рынке (пробой пика), если не получается - отмена сигнала.
Результат таков:
Пробовал ставить FromMilliseconds(5000), FromMinute(0.1) - результат такой же. Стратегия выходит сразу же.
Исправлено. Спасибо за фидбэк. Будет в 3.2.10.
P.S. На будущее - большая просьба создавать новый топик для нового найденного бага.
Выложили 3.2.10
Изменения:
Баги:
Спасибо за апдейт! Забирать надо с кодеплекса? На боксе его не видно...
С box.net забирать. На codeplex релизы не выкладываются, только референсы периодически обновляются.
http://www.box.net/stocksharp/1/106808774
Браузер паленый.
Пожалуйста. Кстати, новость о выходе новой беты: "Выложили 3.2.10" содержит прямую ссылку на скачивание... На будущее :)
Выложили 3.2.11
Столько изменений между бетами не было давно, так что приготовьтесь.
Изменения:
Баги:
Гидра переехала на Codeplex. Ждём новых желающих по внесению своих идей и изменений в проект Stock#.
Оставайтесь с нами, а также приводите друзей и знакомых! Вас ждёт ещё много интересного впереди!
По всей видимости, есть еще изменение: большая часть методов класса Strategy превратились в extension methods. Не знаю, чем они отличаются, но вызывать теперь их внутри класса надо через this.