Cкальперский робо-привод - Glass (бета версия)


Cкальперский робо-привод - Glass (бета версия)
Atom
09.01.2011


Привет всем форумчанам-скальперам.

Хочу поделиться своей собственной разработкой Glass. Понимаю, что сейчас пойдут ахи и вздохи, ну зачем еще один привод, но перед этим небольшая история о приводе и почему он не такой как другие.

Я сам скальпирую примерно 1.5 года. За это время перепробовал почти все известные приводы. В принципе, все они хорошо, но есть один недостаток - негибкие и нет полноценного авто-трейдинга. Сейчас скальпить с роботами затея бесперспективная (хотя бы посчитать сколько роботов было в TOP 20 ЛЧИ). Уходить полностью в роботы не планирую, многое еще зависит от моих глаз и понимания рынка. Поэтому я начал создавать свой привод, где можно совместить ручной трейдинг и скорость роботов. Сначала появился сам привод:



Затем я добавил возможность создания стратегий и запуск их в стакане:



Все, что видно на экране (расцветка, шрифт, форматирование), горячие клавиши и реакция на мышку - это все программируется во встроенном редакторе на C# (заморочки с программированием есть, но я старался их максимально спрятать, так что получилось очень просто). У всех свой уникальный стиль скальпинга, и нельзя его подстраивать под какую ни было программу. Если что-то не понравилось (нужно больше информации, или, наоборот, убрать лишнее), просто меняется код и стакан начинает работать по другому.

Есть еще много всяких плюшек как: одновременная работы с Quik и SmartCOM (привод получился кросс-платформенный), журнала сделок и заявок, экспорта в Excel и т.д..

Программа одновременно платная и бесплатная. Все, что относиться к приводу - бесплатно. Но можно использовать только одну стратегию, которую я придумал для себя. Если необходимо использовать свои наработки, то это уже за лицензию. Цену не ломлю, так как сам не из Москвы и понимаю тех, кто торгует их регионов. Но и чтобы штаны не спадали ;-). 200р в месяц, или купить сразу анлим.

Есть триал версия на полный режим в один месяц. Пока решил сделать бета тестирование. Всем, кто сильно "натестирует", вообще подарю пожизненную лицензию. Я не жадный. А еще хотел бы поработать вместе с теми, кто тоже интересуется автоматизированным скальпингом. Если есть идеи и желание запрограммировать + поделиться со всеми, пишите ответом или в личку. Можно совместно сделать самую продвинутую платформу для скальпинга ;-)

Glass написан с использованием S#. Так что, если кто-то захочет использовать привод как тестер для стратегий, чтобы потом их полностью перевести в автономный робот, то теоретически это можно сделать за несколько часов.



Спасибо:


<< < 5 6 7 8  >
kurt

Фотография
Дата: 21.06.2011
Ответить


Mikhail Sukhov Перейти
При создании как раз и добавляется код DefaultStrategy.

Да, увидел! Спасибо.
Спасибо:

kurt

Фотография
Дата: 22.06.2011
Ответить


Такие вопросы по Glass'у возникли:
1. Глубина стакана в нём 20, а на ФОРТСе - 50. Есть возможность такой её сделать?
2. Есть возможность уменьшить шрифт? (чтобы окно стакана сделать маленьким, или чтобы бОльшая глубина стакана помещалась на экран если она возможна).
3. я так понимаю что смысл разреженного стакана - неподвижная шкала цены (а двигаются бид/аск относительно её). В Glass'е нет такого?
Спасибо:

Mikhail Sukhov

Фотография
Дата: 22.06.2011
Ответить


kurt Перейти
Такие вопросы по Glass'у возникли:
1. Глубина стакана в нём 20, а на ФОРТСе - 50. Есть возможность такой её сделать?
2. Есть возможность уменьшить шрифт? (чтобы окно стакана сделать маленьким, или чтобы бОльшая глубина стакана помещалась на экран если она возможна).
3. я так понимаю что смысл разреженного стакана - неподвижная шкала цены (а двигаются бид/аск относительно её). В Glass'е нет такого?


1. В конфиге (MyDocuments\Glass\glass_config.xml) поправьте значение в атрибуте maxDepth c 20 на 50.
2. По позднее отпишусь.
3. Есть. Есть и разреженный и сгруппированный. Откройте свойства у стакана, там есть поле Type.
Спасибо:

kurt

Фотография
Дата: 22.06.2011
Ответить


Mikhail Sukhov Перейти

1. В конфиге (MyDocuments\Glass\glass_config.xml) поправьте значение в атрибуте maxDepth c 20 на 50.
2. По позднее отпишусь.
3. Есть. Есть и разреженный и сгруппированный. Откройте свойства у стакана, там есть поле Type.


1. При изменении maxDepth с 20 на какое-нибудь другое вылетает ошибка:

Цитата:
2011-06-22 15:55:50 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.NullReferenceException: В экземпляре объекта не задана ссылка на объект.
в Glass.DefaultStrategy.DisplayQuote(IGlassQuote glassQuote, IGlassCell ownBuyCell, IGlassCell buyCell, IGlassCell priceCell, IGlassCell sellCell, IGlassCell ownSellCell)
в Glass.MarketDepthWindow.<OnUpdatingFinished>b__18()
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
2011-06-22 15:55:51 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.NullReferenceException: В экземпляре объекта не задана ссылка на объект.
в Glass.DefaultStrategy.DisplayQuote(IGlassQuote glassQuote, IGlassCell ownBuyCell, IGlassCell buyCell, IGlassCell priceCell, IGlassCell sellCell, IGlassCell ownSellCell)
в Glass.MarketDepthWindow.<OnUpdatingFinished>b__18()
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
2011-06-22 15:55:52 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.NullReferenceException: В экземпляре объекта не задана ссылка на объект.
в Glass.DefaultStrategy.DisplayQuote(IGlassQuote glassQuote, IGlassCell ownBuyCell, IGlassCell buyCell, IGlassCell priceCell, IGlassCell sellCell, IGlassCell ownSellCell)
в Glass.MarketDepthWindow.<OnUpdatingFinished>b__18()
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
2011-06-22 15:55:52 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.NullReferenceException: В экземпляре объекта не задана ссылка на объект.
в Glass.DefaultStrategy.DisplayQuote(IGlassQuote glassQuote, IGlassCell ownBuyCell, IGlassCell buyCell, IGlassCell priceCell, IGlassCell sellCell, IGlassCell ownSellCell)
в Glass.MarketDepthWindow.<OnUpdatingFinished>b__18()
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)

... И ДАЛЕЕ ПРОДОЛЖАЕТ ...



3. Разреженный стакан делается, но двигается-то попрежнему шкала цены, а не лучшие бид/аск вдоль неё (они попрежнему остаются всегда в центре стакана).

4. Сейчас сгруппированный стакан группируется по диапазону 50 шагов (=250 пунктов для RIU1) - как можно его уменьшить? (Пробовал изменить в свойствах стакана поле "Ценовой диапазон" - не помогло).

5. С такой проблемой ещё столкнулся. Открыл два стакана (RUI1, SRU1), потом один (SRU1) закрыл - красным крестиком в правом верхнем углу окна стакана, закрыл Гласс. Однако при следующем запуске Гласса опять запустились оба стакана (и оба стакана сохранились в glass_config.xml). Чтобы второй стакан не запускался - это теперь надо поудалять его строки в glass_config.xml?


P.S. А куда пропал автор темы denis?
Спасибо:

Mikhail Sukhov

Фотография
Дата: 23.06.2011
Ответить


Ок, ошибки принял к сведению. Буду лечить.
Спасибо:

spirit

Фотография
Дата: 27.06.2011
Ответить


При попытке продать или купить объем по предложенной в стакане цене (клик в противоположный пустой квадрат от выставленного объема) лот в 250 единиц вылезло сообщение об ошибке: + не перетаскивается заявка по стакану (drag and drop)


27.06.2011 10:46:29 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.ArgumentException: Транзакции 'ACCOUNT=S01-00000F00; CLIENT_CODE=S#; TRANS_ID=37897154; CLASSCODE=EQBR; SECCODE=SBER03; QUANTITY=250; OPERATION=S; TYPE=L; ACTION=NEW_ORDER; PRICE=96,89; EXECUTION_CONDITION=PUT_IN_QUEUE;' не была зарегистрирована. Причина 'Превышен лимит по деньгам'.
Имя параметра: transactionTxt
в #=qCzG06jA5pttFRr53_6g2gGTXqBvaHYS8TGbFa2nwhH0=.#=q304JTuTcHw511pPvyFcIAosKVGnSfnAX0ktZjW5YBs0=(String #=qo9hczXr4ZAfLDcETgSwzwA==, OrderStatus& #=qNnaFmXy$1KhKV9wazFxrcw==, UInt32& #=qN3HdqREy3X11sBA8RsQBIQ==, Int64& #=qUCvWky4AlQ87BxYhTcL7xA==, String& #=qRrFtKPhpm4fCtblEbf7dSA==)
в Ecng.Trading.Quik.QuikTrader.#=qDN8Jgv78NY1KqyESakCnnGSmWTZ6IVqiK4F7nGep0XI=(Order #=q17zLtNU0PdgxzOwvds5Ahw==, TransactionBuilder #=q9hD6GoEsg3Ujhb4IYYgPiA==)
в Ecng.Trading.Quik.QuikTrader.OnRegisterOrder(Order order)
в Ecng.Trading.Algo.BaseTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.MultiTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.Strategies.Strategy.RegisterOrder(Order order)
в Glass.Core.GlassStrategy.SellAtLimit(Double price, Int32 volume)
в Glass.Core.GlassStrategy.SellAtLimit(Double price)
в Glass.DefaultStrategy.OnSellLeftClick(IGlassQuote quote)
в Glass.Core.GlassStrategy.OnMouseLeftClick(MarketDepthColumns column, IGlassQuote quote)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.<>c__DisplayClass1c.<TryInvokeMouse>b__1b(MarketDepthWindowAction a)
в Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.TryInvokeMouse(MarketDepthColumns column, MouseAction action, ModifierKeys modifierKey)
в Glass.MarketDepthWindow.OnCellMouseUp(Object sender, GridCellMouseControllerEventArgs e)
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.RoutedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridControlBase.OnCellMouseUp(GridCellMouseControllerEventArgs args)
в Syncfusion.Windows.Controls.Grid.GridControlBase.RaiseCellMouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridSelectCellsMouseController.MouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.MouseUp(MouseEventArgs e, Boolean isPreview)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseEventTargetCollection.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.ScrollControl.OnPreviewMouseUp(MouseButtonEventArgs e)
в System.Windows.UIElement.OnPreviewMouseUpThunk(Object sender, MouseButtonEventArgs e)
в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
в System.Windows.Input.InputManager.ProcessStagingArea()
в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
DS 27.06.2011 10:41:58 изменение ордера с ценой 97,1 state = Active
DS 27.06.2011 10:41:58 изменение ордера с ценой 97,1 state = Active
DS 27.06.2011 10:41:59 изменение ордера с ценой 97,1 state = Done
DS 27.06.2011 10:46:29 Ошибка регистрации ордера
DS 27.06.2011 10:46:40 Ошибка регистрации ордера
27.06.2011 10:46:40 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.ArgumentException: Транзакции 'ACCOUNT=S01-00000F00; CLIENT_CODE=S#; TRANS_ID=37897155; CLASSCODE=EQBR; SECCODE=SBER03; QUANTITY=250; OPERATION=S; TYPE=L; ACTION=NEW_ORDER; PRICE=96,9; EXECUTION_CONDITION=PUT_IN_QUEUE;' не была зарегистрирована. Причина 'Превышен лимит по деньгам'.
Имя параметра: transactionTxt
в #=qCzG06jA5pttFRr53_6g2gGTXqBvaHYS8TGbFa2nwhH0=.#=q304JTuTcHw511pPvyFcIAosKVGnSfnAX0ktZjW5YBs0=(String #=qo9hczXr4ZAfLDcETgSwzwA==, OrderStatus& #=qNnaFmXy$1KhKV9wazFxrcw==, UInt32& #=qN3HdqREy3X11sBA8RsQBIQ==, Int64& #=qUCvWky4AlQ87BxYhTcL7xA==, String& #=qRrFtKPhpm4fCtblEbf7dSA==)
в Ecng.Trading.Quik.QuikTrader.#=qDN8Jgv78NY1KqyESakCnnGSmWTZ6IVqiK4F7nGep0XI=(Order #=q17zLtNU0PdgxzOwvds5Ahw==, TransactionBuilder #=q9hD6GoEsg3Ujhb4IYYgPiA==)
в Ecng.Trading.Quik.QuikTrader.OnRegisterOrder(Order order)
в Ecng.Trading.Algo.BaseTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.MultiTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.Strategies.Strategy.RegisterOrder(Order order)
в Glass.Core.GlassStrategy.SellAtLimit(Double price, Int32 volume)
в Glass.Core.GlassStrategy.SellAtLimit(Double price)
в Glass.DefaultStrategy.OnSellLeftClick(IGlassQuote quote)
в Glass.Core.GlassStrategy.OnMouseLeftClick(MarketDepthColumns column, IGlassQuote quote)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.<>c__DisplayClass1c.<TryInvokeMouse>b__1b(MarketDepthWindowAction a)
в Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.TryInvokeMouse(MarketDepthColumns column, MouseAction action, ModifierKeys modifierKey)
в Glass.MarketDepthWindow.OnCellMouseUp(Object sender, GridCellMouseControllerEventArgs e)
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.RoutedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridControlBase.OnCellMouseUp(GridCellMouseControllerEventArgs args)
в Syncfusion.Windows.Controls.Grid.GridControlBase.RaiseCellMouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridSelectCellsMouseController.MouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.MouseUp(MouseEventArgs e, Boolean isPreview)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseEventTargetCollection.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.ScrollControl.OnPreviewMouseUp(MouseButtonEventArgs e)
в System.Windows.UIElement.OnPreviewMouseUpThunk(Object sender, MouseButtonEventArgs e)
в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
в System.Windows.Input.InputManager.ProcessStagingArea()
в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
DS 27.06.2011 10:46:58 Ошибка регистрации ордера
27.06.2011 10:46:58 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.ArgumentException: Транзакции 'ACCOUNT=S01-00000F00; CLIENT_CODE=S#; TRANS_ID=37897156; CLASSCODE=EQBR; SECCODE=SBER03; QUANTITY=250; OPERATION=S; TYPE=L; ACTION=NEW_ORDER; PRICE=96,9; EXECUTION_CONDITION=PUT_IN_QUEUE;' не была зарегистрирована. Причина 'Превышен лимит по деньгам'.
Имя параметра: transactionTxt
в #=qCzG06jA5pttFRr53_6g2gGTXqBvaHYS8TGbFa2nwhH0=.#=q304JTuTcHw511pPvyFcIAosKVGnSfnAX0ktZjW5YBs0=(String #=qo9hczXr4ZAfLDcETgSwzwA==, OrderStatus& #=qNnaFmXy$1KhKV9wazFxrcw==, UInt32& #=qN3HdqREy3X11sBA8RsQBIQ==, Int64& #=qUCvWky4AlQ87BxYhTcL7xA==, String& #=qRrFtKPhpm4fCtblEbf7dSA==)
в Ecng.Trading.Quik.QuikTrader.#=qDN8Jgv78NY1KqyESakCnnGSmWTZ6IVqiK4F7nGep0XI=(Order #=q17zLtNU0PdgxzOwvds5Ahw==, TransactionBuilder #=q9hD6GoEsg3Ujhb4IYYgPiA==)
в Ecng.Trading.Quik.QuikTrader.OnRegisterOrder(Order order)
в Ecng.Trading.Algo.BaseTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.MultiTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.Strategies.Strategy.RegisterOrder(Order order)
в Glass.Core.GlassStrategy.SellAtLimit(Double price, Int32 volume)
в Glass.Core.GlassStrategy.SellAtLimit(Double price)
в Glass.DefaultStrategy.OnSellLeftClick(IGlassQuote quote)
в Glass.Core.GlassStrategy.OnMouseLeftClick(MarketDepthColumns column, IGlassQuote quote)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.<>c__DisplayClass1c.<TryInvokeMouse>b__1b(MarketDepthWindowAction a)
в Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.TryInvokeMouse(MarketDepthColumns column, MouseAction action, ModifierKeys modifierKey)
в Glass.MarketDepthWindow.OnCellMouseUp(Object sender, GridCellMouseControllerEventArgs e)
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.RoutedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridControlBase.OnCellMouseUp(GridCellMouseControllerEventArgs args)
в Syncfusion.Windows.Controls.Grid.GridControlBase.RaiseCellMouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridSelectCellsMouseController.MouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.MouseUp(MouseEventArgs e, Boolean isPreview)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseEventTargetCollection.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.ScrollControl.OnPreviewMouseUp(MouseButtonEventArgs e)
в System.Windows.UIElement.OnPreviewMouseUpThunk(Object sender, MouseButtonEventArgs e)
в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
в System.Windows.Input.InputManager.ProcessStagingArea()
в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
DS 27.06.2011 10:47:21 Ошибка регистрации ордера
27.06.2011 10:47:21 Ошибка System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> System.ArgumentException: Транзакции 'ACCOUNT=S01-00000F00; CLIENT_CODE=S#; TRANS_ID=37897157; CLASSCODE=EQBR; SECCODE=SBER03; QUANTITY=250; OPERATION=S; TYPE=L; ACTION=NEW_ORDER; PRICE=96,86; EXECUTION_CONDITION=PUT_IN_QUEUE;' не была зарегистрирована. Причина 'Превышен лимит по деньгам'.
Имя параметра: transactionTxt
в #=qCzG06jA5pttFRr53_6g2gGTXqBvaHYS8TGbFa2nwhH0=.#=q304JTuTcHw511pPvyFcIAosKVGnSfnAX0ktZjW5YBs0=(String #=qo9hczXr4ZAfLDcETgSwzwA==, OrderStatus& #=qNnaFmXy$1KhKV9wazFxrcw==, UInt32& #=qN3HdqREy3X11sBA8RsQBIQ==, Int64& #=qUCvWky4AlQ87BxYhTcL7xA==, String& #=qRrFtKPhpm4fCtblEbf7dSA==)
в Ecng.Trading.Quik.QuikTrader.#=qDN8Jgv78NY1KqyESakCnnGSmWTZ6IVqiK4F7nGep0XI=(Order #=q17zLtNU0PdgxzOwvds5Ahw==, TransactionBuilder #=q9hD6GoEsg3Ujhb4IYYgPiA==)
в Ecng.Trading.Quik.QuikTrader.OnRegisterOrder(Order order)
в Ecng.Trading.Algo.BaseTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.MultiTrader.RegisterOrder(Order order)
в Ecng.Trading.Algo.Strategies.Strategy.RegisterOrder(Order order)
в Glass.Core.GlassStrategy.SellAtLimit(Double price, Int32 volume)
в Glass.Core.GlassStrategy.SellAtLimit(Double price)
в Glass.DefaultStrategy.OnSellLeftClick(IGlassQuote quote)
в Glass.Core.GlassStrategy.OnMouseLeftClick(MarketDepthColumns column, IGlassQuote quote)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.<>c__DisplayClass1c.<TryInvokeMouse>b__1b(MarketDepthWindowAction a)
в Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)
в Glass.MarketDepthWindow.MarketDepthWindowActionList.TryInvokeMouse(MarketDepthColumns column, MouseAction action, ModifierKeys modifierKey)
в Glass.MarketDepthWindow.OnCellMouseUp(Object sender, GridCellMouseControllerEventArgs e)
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
в System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
в System.Delegate.DynamicInvokeImpl(Object[] args)
в System.Windows.RoutedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridControlBase.OnCellMouseUp(GridCellMouseControllerEventArgs args)
в Syncfusion.Windows.Controls.Grid.GridControlBase.RaiseCellMouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Grid.GridSelectCellsMouseController.MouseUp(MouseControllerEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.MouseUp(MouseEventArgs e, Boolean isPreview)
в Syncfusion.Windows.Controls.Scroll.MouseControllerDispatcher.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.MouseEventTargetCollection.OnPreviewMouseUp(MouseButtonEventArgs e)
в Syncfusion.Windows.Controls.Scroll.ScrollControl.OnPreviewMouseUp(MouseButtonEventArgs e)
в System.Windows.UIElement.OnPreviewMouseUpThunk(Object sender, MouseButtonEventArgs e)
в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
в System.Windows.Input.InputManager.ProcessStagingArea()
в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)
Спасибо:

Alexander

Фотография
Дата: 27.06.2011
Ответить


денег не хватает на заявку на 250 лотов.
в сообщении сказано об этом
Спасибо:

spirit

Фотография
Дата: 27.06.2011
Ответить


А как можно закрепить окно стакана поверх всех окон, чтобы оно не слетало постоянно, когда я в квике что-то делаю? и что сделать чтобы передвигать уже выставленные заявки по стакану?
Спасибо:

spirit

Фотография
Дата: 27.06.2011
Ответить


Alexander Перейти
денег не хватает на заявку на 250 лотов.
в сообщении сказано об этом

Деньги под этот лот есть с большим запасом. Несколько раз кликал, выдавалось сообщение об ошибке, чуть позже посмотрел в портфель - один раз заявка прошла и исполнилась - что ему еще могло не понравиться?
Спасибо:

stakanzmail

Фотография
Дата: 23.12.2011
Ответить


При первом запуске, загрузка, видит квик, подключается и тп. после отключения, выхода из проги создается в
C:\Users\имя пользователя\Documents\Glass\ файл glass_config.xml в котором есть такой раздел

Цитата:
<windows>
<window left="43.408695652173911" top="43.408695652173911" width="463.30434782608694" height="240.4173913043478" windowState="Normal" zIndex="0" isVisible="true" type="Main" />
<window left="65.113043478260863" top="65.113043478260863" width="382.33043478260868" height="415.72173913043474" windowState="Normal" zIndex="0" isVisible="false" type="Securities" />
<window left="86.817391304347822" top="86.817391304347822" width="419.895652173913" height="233.7391304347826" windowState="Normal" zIndex="0" isVisible="false" type="Portfolio" />
<window left="130.22608695652173" top="130.22608695652173" width="700.38260869565215" height="299.68695652173909" windowState="Normal" zIndex="0" isVisible="false" type="StrategyManager" />
<window left="108.52173913043478" top="108.52173913043478" width="899.895652173913" height="761.32173913043471" windowState="Normal" zIndex="0" isVisible="false" type="Strategies" />
<window left="375.6521739130435" top="375.6521739130435" width="565" height="500" windowState="Normal" zIndex="0" isVisible="false" type="Archive" />
</windows>


это то, что написано в этом файле. второй раз уже не запускается. При удалении конфига или изменения чисел на целые значения приложение запускается.
Вин 7, .нет 4.0.30319
Спасибо:
<< < 5 6 7 8  >

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy