закачка стаканов с архива Order Log РТС

закачка стаканов с архива Order Log РТС
Atom
7/5/2012
dave2


Подскажите пожалуйста, есть ли в StockSharp и/или Гидре классы/инструменты чтобы закачать стаканы из РТСовских архивов Order Logs http://ftp.rts.ru/pub/info/historical_data/
т.е. Order Log должен преобразовываться в стаканы и сохраниться в базу.

Tags:


Thanks:


1 2  >
Mikhail Sukhov

Avatar
Date: 7/5/2012
Reply


dave2
Подскажите пожалуйста, есть ли в StockSharp и/или Гидре классы/инструменты чтобы закачать стаканы из РТСовских архивов Order Logs http://ftp.rts.ru/pub/info/historical_data/
т.е. Order Log должен преобразовываться в стаканы и сохраниться в базу.


Там всего за 1 месяц. Нормальные пацаны давно сами ОЛ пишут. Через Гидру это возможно.
Thanks:

dave2

Avatar
Date: 7/6/2012
Reply


Я знаю что там за месяц. Остальное купить можно.

Что значит сами пишут ОЛ ?
Подключившись к торгам в онлайне сохраняете стаканы через Гидру ?
Thanks:

risty

Avatar
Date: 7/15/2012
Reply


Мужчины, подскажите, где можно взять стаканы в формате S# по ликвидным фьючерсам Фортс?
Thanks:

Rash

Avatar
Date: 7/26/2012
Reply


Mikhail Sukhov
dave2
Подскажите пожалуйста, есть ли в StockSharp и/или Гидре классы/инструменты чтобы закачать стаканы из РТСовских архивов Order Logs http://ftp.rts.ru/pub/info/historical_data/
т.е. Order Log должен преобразовываться в стаканы и сохраниться в базу.


Там всего за 1 месяц. Нормальные пацаны давно сами ОЛ пишут. Через Гидру это возможно.


И все таки, как закачать FOL в Гидру? Если можно, поподробней про механизм, алгоритм закачки.
Thanks:

Garry

Avatar
Date: 8/24/2012
Reply


Добрый день! Пытаюсь собрать стаканы из Ордер Лога архивных данных РТС http://ftp.rts.ru/pub/info/historical_data/. Парсю тексктовый файл, создаю коллекцию OrderLogItem, в моем случае List<OrderLogItem>, далее планировал использовать OrderLogHelper.ToMarketDepths. Но он понимает только коллекции Ecng.Collections.IEnumerableEx<OrderLogItem>, простой List для этого не подходит. Как можно работать с IEnumerableEx ? Как добавить туда элемент или конвертировать из List? Есть какой то класс реализующий IEnumerableEx?
Thanks:

Garic

Avatar
Date: 8/24/2012
Reply


Фиг знает :) Пользуйтесь OrderLogMarketDepthBuilder - именно он содержит логику.
Thanks:

Alexander

Avatar
Date: 8/24/2012
Reply


Garry
Добрый день! Пытаюсь собрать стаканы из Ордер Лога архивных данных РТС http://ftp.rts.ru/pub/info/historical_data/. Парсю тексктовый файл, создаю коллекцию OrderLogItem, в моем случае List<OrderLogItem>, далее планировал использовать OrderLogHelper.ToMarketDepths. Но он понимает только коллекции Ecng.Collections.IEnumerableEx<OrderLogItem>, простой List для этого не подходит. Как можно работать с IEnumerableEx ? Как добавить туда элемент или конвертировать из List? Есть какой то класс реализующий IEnumerableEx?



Code
public static IEnumerableEx<T> ToEx<T>(this IEnumerable<T> values)
Thanks:

Garry

Avatar
Date: 8/24/2012
Reply


Garic
Фиг знает :) Пользуйтесь 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()
Thanks:

Garic

Avatar
Date: 8/24/2012
Reply


Должно быть заполнено поле Order.Status битовой маской как в плазе.

order.Status = new OrderStatus?((OrderStatus)Status);
Thanks:

Garic

Avatar
Date: 8/24/2012
Reply


Code

Order order = new Order
            {
                Security = security,
                Id = OrderId,
                TransactionId = ReplId,
                Volume = Amount,
                Balance = AmountRest,
                Direction = Direction,
                Time = Time,
                Price = OrderPrice.RemoveTrailingZeros(),
                State = OrderStates.Active
            };
            Trade trade;

            if (DealId != 0)
            {
                trade = new Trade
                {
                    Security = security,
                    Id = DealId,
                    Time = Time,
                    Volume = Amount,
                    Price = DealPrice.RemoveTrailingZeros()
                };
            }
            else
            {
                trade = null;
                order.State = Action == 1 ? OrderStates.Active : OrderStates.Done;
            }

            if (Status.HasBits(0x01))
            {
                order.ExecutionCondition = OrderExecutionConditions.PutInQueue;
            }
            else if (Status.HasBits(0x02))
            {
                order.ExecutionCondition = OrderExecutionConditions.CancelBalance;
            }
            if (Status.HasBits(0x04))
            {
                order.IsSystem = false;
            }
            order.Status = new OrderStatus?((OrderStatus)Status);
Thanks: Garry
1 2  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy