Перенос данные от одного инструмента другому
Вопрос - как программно перенести данные от одного инструмента другому?
Сделал простейший код, который читает тики из инструментов, генерит свечки и складывает под другим именем.
Все бы хорошо, но при сохранении свечек вылетает ошибка "Инструмент для TimeFrameCandle равен RIZ8@FORTS, а должен быть TESTING@FORTS." TESTING@FORTS это название тестового инструмента.
PS делается для создания склеенных свечек по фьючу.
var timeFrame = TimeSpan.FromMinutes(30);
var tradesSecurity = new Security
{
Id = "RIZ8@FORTS",
Name = "RIZ8@FORTS",
Code = "RIZ8@FORTS",
MinStepPrice = 1,
MinStepSize = 1,
MinPrice = 1,
MaxPrice = 1000000,
ExchangeBoard = ExchangeBoard.Forts,
};
var candlesSecurity = new Security
{
Id = "TESTING@FORTS",
Name = "TESTING@FORTS",
Code = "TESTING@FORTS",
MinStepPrice = 1,
MinStepSize = 1,
MinPrice = 1,
MaxPrice = 1000000,
ExchangeBoard = ExchangeBoard.Forts,
};
var tradesRegistry = new StorageRegistry();
((LocalMarketDataDrive) tradesRegistry.DefaultDrive).Path = "some path 1";
((LocalMarketDataDrive) tradesRegistry.DefaultDrive).UseAlphabeticPath = true;
var candlesRegistry = new StorageRegistry();
((LocalMarketDataDrive) candlesRegistry.DefaultDrive).Path = "some path 2";
((LocalMarketDataDrive) candlesRegistry.DefaultDrive).UseAlphabeticPath = true;
var candlesStorage = candlesRegistry.GetCandleStorage(typeof (TimeFrameCandle), candlesSecurity, timeFrame);
var candleSeries = new CandleSeries(typeof (TimeFrameCandle), candlesSecurity, timeFrame);
var tradesStorage = tradesRegistry.GetTradeStorage(tradesSecurity);
var trades = tradesStorage.Load(new DateTime(2008, 11, 01), new DateTime(2008, 11, 05));
var candles = trades.ToCandles(candleSeries);
if (candles.Count > 0)
{
candlesStorage.Save(candles);
}