исторические данные. StockSharp
https://stocksharp.ru/handlers/atom.ashx?category=tag&id=исторические данные&type=forum
Copyright @ StockSharp Platform LLC 2010 - 2024
2024-03-29T09:12:28Z
https://stocksharp.ru/images/logo.png
https://stocksharp.ru/topic/10435/
В историческом коннекторе (HistoryEmulationConnector) не работает orderLogItem.IsMatched()
2019-02-17T22:34:56Z
2019-02-18T01:43:12Z
Дмитрий_
https://stocksharp.ru/users/62269/
info@stocksharp.ru
Добрый день.<br /><br />Есть следующий код<br /><div class='spoilertitle'><input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_03e740e28cb94187a2a316452d8309df');" title='Показать спойлер' /></div><div class='spoilerbox' id='spolier_03e740e28cb94187a2a316452d8309df' style='display:none'>Connector.NewOrderLogItem += Connector_NewOrderLogItem;<br /><br />FirstSecurity.WhenNewOrderLogItem(Connector)<br /> .Do(ProcessNewOrderLogItem)<br /> .Apply(this);<br /><br />private void ProcessNewOrderLogItem(OrderLogItem orderLogItem)<br /> {<br /> if (orderLogItem.IsCanceled())<br /> {<br /> }<br /><br /> if (orderLogItem.IsRegistered())<br /> {<br /> }<br /><br /> if (orderLogItem.IsMatched())<br /> {<br /> }<br /> }<br /><br />private void Connector_NewOrderLogItem(OrderLogItem orderLogItem)<br /> {<br /> if (orderLogItem.IsCanceled())<br /> {<br /> }<br /><br /> if (orderLogItem.IsRegistered())<br /> {<br /> }<br /><br /> if (orderLogItem.IsMatched())<br /> {<br /> }<br />}</div><br />При приходе OrderLogItem orderLogItem = Combination orders ... -> <br />orderLogItem.IsCanceled() = true,<br />orderLogItem.IsRegistered() = false, <br />orderLogItem.IsMatched() = false.<br /><br />Причем, при чтении из локального хранилища -<br /><div class='spoilertitle'><input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_75411dc549db41cc8352ab774a47b468');" title='Показать спойлер' /></div><div class='spoilerbox' id='spolier_75411dc549db41cc8352ab774a47b468' style='display:none'>var storage = storageRegistry.GetOrderLogStorage(security);<br /> var data = storage.Load(new DateTime(2019, 1, 30), new DateTime(2019, 1, 31));<br /><br />foreach (var d in data)<br /> {<br /> if (d.IsCanceled())<br /> {<br /> }<br /><br /> if (d.IsRegistered())<br /> {<br /> }<br /><br /> if (d.IsMatched())<br /> {<br /> }<br /> sw.WriteLine(d);<br /> }</div>такой проблемы нет.<br /><br />При приходе OrderLogItem d = Combination orders ... -> <br />d.IsCanceled() = false,<br />d.IsRegistered() = false, <br />d.IsMatched() = true.<br /><br />Редактируемый код и исторические данные представлены в другом топике<br /><a href="https://stocksharp.ru/forum/10399/rabota-so-stakanom-zayavok/" title="https://stocksharp.ru/forum/10399/rabota-so-stakanom-zayavok/">https://stocksharp.ru/fo...ota-so-stakanom-zayavok/</a>
https://stocksharp.ru/topic/10400/
Корректная настройка исторического коннектора
2019-02-04T02:49:48Z
2019-02-14T19:29:27Z
Дмитрий_
https://stocksharp.ru/users/62269/
info@stocksharp.ru
Добрый день.<br /><br />Как заставить коннектор HistoryEmulationConnector<br /><div class='spoilertitle'><input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_b42694931bc5483988d8234d683e8695');" title='Показать спойлер' /></div><div class='spoilerbox' id='spolier_b42694931bc5483988d8234d683e8695' style='display:none'>_connector = new HistoryEmulationConnector(new[] { sec1, sec2 },<br /> ConfigManager.TryGetService<IPortfolioProvider>().Portfolios,<br /> new StorageRegistry())<br /> {<br /> HistoryMessageAdapter =<br /> {<br /> StartDate = BeginDateTime.ChangeKind(DateTimeKind.Utc),<br /> StopDate = EndDateTime.ChangeKind(DateTimeKind.Utc),<br /> StorageRegistry = storageRegistry,<br /> StorageFormat = StorageFormat <br /> },<br /> LogLevel = LogLevels.Info,<br /> CreateDepthFromOrdersLog = true,<br /> CreateTradesFromOrdersLog = true<br /> };</div><br />1) Реагировать на изменение стакана, используя исторический ордер лог?<br />CreateDepthFromOrdersLog = true не помогает. Подсказку про MarketDataMessage не понимаю как применить.<br /><a href='https://stocksharp.ru/file/108528/capture_png/' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'><img src="https://stocksharp.ru/file/108528/capture_png/?size=500x500" alt="Capture.PNG" title="Capture.PNG" /></a><br />2) Реагировать на новые сделки, используя исторический ордер лог?<br />CreateTradesFromOrdersLog = true не помогает. Аналогично с подсказкой про MarketDataMessage.<br />3) Реагировать на новые сделки, используя исторический стакан заявок?<br />
https://stocksharp.ru/topic/9255/
Свечи с криптобирж
2018-03-27T14:52:09Z
2018-03-28T16:54:32Z
Иван З.
https://stocksharp.ru/users/6502/
info@stocksharp.ru
Я правильно понимаю, что исторические данные с криптобирж получить невозможно?<br />если можно, то какие биржи?<br />участник крауда
https://stocksharp.ru/topic/8952/
Создание WeightedIndexSecurity из исторических данных (получить исторический спред 2-х инструментов)
2017-12-21T20:39:37Z
2018-01-09T20:04:19Z
Дмитрий_
https://stocksharp.ru/users/62269/
info@stocksharp.ru
Здравствуйте.<br /><br />Подскажите, как правильно создать WeightedIndexSecurity из исторических данных?<br /><br />Имею:<br />Security _leg1Security = new Security() { Id = "SBER@TQBR" };<br />Security _leg2Security = new Security() { Id = "SBERP@TQBR" };<br /><br />DateTime from = new DateTime(2017, 1, 3).ChangeKind(DateTimeKind.Utc);<br />DateTime to = new DateTime(2017, 1, 4).ChangeKind(DateTimeKind.Utc);<br /><br />private TimeSpan _timeFrame = TimeSpan.FromMinutes(1);<br /><br />В переменных _leg1TimeFrameCandles и _leg2TimeFrameCandles исторические 1-мин свечи, загруженные из локального хранилища.<br /><br />_portfolio = new Portfolio<br /> {<br /> Name = "Test Account",<br /> BeginValue = 1000000,<br /> };<br /><br />WeightedIndexSecurity _spreadSecurity = new WeightedIndexSecurity() { Id = "Index1", Board = ExchangeBoard.Forts };<br /> _spreadSecurity.Weights.Add(_leg1Security.Id.ToSecurityId(), Convert.ToDecimal(1));<br /> _spreadSecurity.Weights.Add(_leg2Security.Id.ToSecurityId(), Convert.ToDecimal(-1));<br /><br /> var securityList = new List<Security> { _spreadSecurity };<br /> var portfolioList = new List<Portfolio> { _portfolio };<br /><br />_historyEmulationConnector = new HistoryEmulationConnector(securityList, portfolioList);<br /> _spreadCandleSeries = new CandleSeries(typeof(TimeFrameCandle), _spreadSecurity, TimeSpan.FromMinutes(1)) { BuildCandlesMode = BuildCandlesModes.Build };<br /><br /> ConfigManager.RegisterService<ISecurityProvider>(_historyEmulationConnector);<br /><br /> CandleManager _spreadCandleManager = new CandleManager(_historyEmulationConnector);<br />_spreadCandleManager.Processing += DrawSpreadCandle;<br /><br /> _spreadCandleManager.Start(_spreadCandleSeries); (Исключение - System.InvalidOperationException: "Инструмент S#:SBER@TQBR, Native:,Type: не найден.")<br /><br /><br />private void DrawSpreadCandle(CandleSeries series, Candle candle)<br /> {<br /> Debug.WriteLine(string.Format("series= {0}, candle= {1}, candleseries= {2}", series.Security.Id, candle.Security.Id, _spreadCandleSeries.Security.Id));<br /><br /> var data = new ChartDrawData();<br /> data.Group(candle.OpenTime).Add(_spreadChartCandleElement, candle);<br /><br /> try<br /> {<br /> Chart.Draw(data);<br /> }<br /> catch (Exception ex)<br /> {<br /> }<br /> }<br /><br />Как получить исторический спред этих 2-х инструментов?
https://stocksharp.ru/topic/8345/
Некорректная загрузка исторических данных Финам
2017-06-30T07:40:11Z
2017-07-13T04:04:24Z
roman001
https://stocksharp.ru/users/94444/
info@stocksharp.ru
Добрый день<br />Попробовал загрузить свечки с Финама с помощью FinamHistorySource, как бы все ничего, но почему-то параметры свечи (открытие, закрытие...) округляются до целого.<br />См картинку . При этом с сайта файлом данные качаются нормально. Финамовский глюк или SS? Хорошо бы исправить.<br />