Добрый день столкнулся со следующей проблемой, SapleHistoryTesting при тестировании на Ticks, работает правильно только с тестовыми данными из примера RIZ2@FORTS.
Тестирование на тиках.
На любых других исторических данных пример вылетает на следующей строке SmaStrategy.cs var price = Security.GetMarketPrice(Connector, direction);
Проверил на нескольких Security, на разных временных интервалах, приведенный ниже лог соответствует SBER@TQBR
Изменения внесенные в SapleHistoryTesting
//SecId.Text = "RIZ2@FORTS";
SecId.Text = "SBER@TQBR";
var level1Info = new Level1ChangeMessage
{
SecurityId = secId,
ServerTime = startTime,
}
.TryAdd(Level1Fields.PriceStep, 0.01m)
.TryAdd(Level1Fields.StepPrice, 0.01m)
.TryAdd(Level1Fields.MinPrice, 0.01m)
.TryAdd(Level1Fields.MaxPrice, 1000000m)
.TryAdd(Level1Fields.VolumeStep, 10m);
//.TryAdd(Level1Fields.PriceStep, secCode == "RIZ2" ? 10m : 1)
//.TryAdd(Level1Fields.StepPrice, 6m)
//.TryAdd(Level1Fields.MinPrice, 10m)
//.TryAdd(Level1Fields.MaxPrice, 1000000m)
//.TryAdd(Level1Fields.MarginBuy, 10000m)
//.TryAdd(Level1Fields.MarginSell, 10000m);
Несколько раз перезагружал исторические данные с разных источников, при этом ошибок при загрузке не было.
Тестирование на Тиках и Стаканах
Тест работает в независимости есть или нет данные о стаканах, включена или нет генерация стаканов. Версии Stock Sharp v4.3.14.2, v4.3.14.5 показали одинаковые результаты при тестированни.
Comentários (5)
Entrar ou Criar conta, Faça login ou cadastre-se para deixar um comentário
О тебе повезло, у тебя этот пример вообще хотя бы запустился! У меня при запуске выдает две ошибки-головоломки: вначале "H:\Programs\StockSharp\StockSharp (GitHub)\Samples\Testing\SampleHistoryTesting\MainWindow.xaml(10,9): error MC3050: не удается найти тип "LocalizedStrings". Имена типов вводятся с учетом регистра букв." и затем: "Неизвестная ошибка сборки, "Невозможно разрешить зависимую сборку для сборки "DevExpress.Data.v15.2, Version=15.2.7.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a", поскольку она не была предварительно загружена. При использовании API-интерфейсов ReflectionOnly зависимые сборки необходимо предварительно загружать или загружать по запросу при возникновении события ReflectionOnlyAssemblyResolve." "
Посмотри пост там есть решение: http://stocksharp.com/forum/5378/DevExpress-Xpf-Core-v15-2/
Спасибо за ответ! Что FORTS и TQBR разные плащадки я понимаю, но речь идет только о тиковых дынных, чем кроме их количества они могут отличаться?
Спасибо за ответ! Что FORTS и TQBR разные плащадки я понимаю, но речь идет только о тиковых дынных, чем кроме их количества они могут отличаться?
Насколько я понимаю если вы не задаете площадку то S# это сделает за вас, @TQBR или @FORTS. Поэтому кроме количества они отличаются площадкой. Площадка TQBR поддерживает рыночные заявки а площадка FORTS нет. В стратегии видимо как то конфликтует это. Попробуйте просто ордера выставлять лимитники на 10 шагов меньше(больше) цены последней сделки.
и еще он же говорит где падает StockSharp.Algo.TraderHelper.GetMarketPrice(Security security, IMarketDataProvider provider, Sides side)