Подскажите пожалуйста, есть ли в StockSharp и/или Гидре классы/инструменты чтобы закачать стаканы из РТСовских архивов Order Logs http://ftp.rts.ru/pub/info/historical_data/ т.е. Order Log должен преобразовываться в стаканы и сохраниться в базу.
Подскажите пожалуйста, есть ли в StockSharp и/или Гидре классы/инструменты чтобы закачать стаканы из РТСовских архивов Order Logs http://ftp.rts.ru/pub/info/historical_data/ т.е. Order Log должен преобразовываться в стаканы и сохраниться в базу.
Comments (11)
Login or Create account, Log in or register to leave a comment
Там всего за 1 месяц. Нормальные пацаны давно сами ОЛ пишут. Через Гидру это возможно.
И все таки, как закачать FOL в Гидру? Если можно, поподробней про механизм, алгоритм закачки.
Я знаю что там за месяц. Остальное купить можно.
Что значит сами пишут ОЛ ? Подключившись к торгам в онлайне сохраняете стаканы через Гидру ?
Мужчины, подскажите, где можно взять стаканы в формате S# по ликвидным фьючерсам Фортс?
Добрый день! Пытаюсь собрать стаканы из Ордер Лога архивных данных РТС http://ftp.rts.ru/pub/info/historical_data/. Парсю тексктовый файл, создаю коллекцию OrderLogItem, в моем случае List<OrderLogItem>, далее планировал использовать OrderLogHelper.ToMarketDepths. Но он понимает только коллекции Ecng.Collections.IEnumerableEx<OrderLogItem>, простой List для этого не подходит. Как можно работать с IEnumerableEx ? Как добавить туда элемент или конвертировать из List? Есть какой то класс реализующий IEnumerableEx?
Фиг знает :) Пользуйтесь OrderLogMarketDepthBuilder - именно он содержит логику.
Пытаюсь использовать этот класс, но столкнулся с проблемой.Как в OrderLogItem можно указать причину отмены заявки? А то OrderLogMarketDepthBuilder.Update при записи OrderLogItem об отмене заявки выдает эксепшн:
Строчка содержит неверную информацию о причине отмены заявки. Parameter name: item Actual value was 3.
Судя по всему она должна быть в OrderLogItem.Order.Messages, но указать его не получается т.к. оно read only.
at StockSharp.Algo.OrderLogHelper.GetCancelReason(OrderLogItem item) at StockSharp.Algo.OrderLogMarketDepthBuilder.Update(OrderLogItem item) at OrderLogConverter.Form1.button1_Click(Object sender, EventArgs e) in F:\Projects\OrderLogConverter\OrderLogConverter\Form1.cs:line 145 at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(Form mainForm) at OrderLogConverter.Program.Main() in F:\Projects\OrderLogConverter\OrderLogConverter\Program.cs:line 18 at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()
Должно быть заполнено поле Order.Status битовой маской как в плазе.
order.Status = new OrderStatus?((OrderStatus)Status);
Да на ФТП туфта лежит, а не данные. Полей там нет необходимых. Я уже писал об этом на РТС.