В главном окне S#.Studio можно выделить множество рабочих областей, которые предназначены для отображения информации по стратегиям, инструментам, портфелям, свойствам выбранного объекта, и т.д. Главное окно представлено на рисунке:

Можно выделить следующие основные элементы интерфейса:
- Главное меню
- Панель инструментов
- Основная рабочая область для отображения стратегий
- Список стратегий для торговли на реальных счетах и для тестирования
- Список используемых инструментов
- Список портфелей
- Окно свойств
- Окно для отображения логов.
Для начала работы необходимо добавить подключение к торговой системе. Для управления подключениями к торговым системам используются следующие кнопки панели инструментов.

В случае, когда выполняется команда подключиться к торговой системе, но нет ни одного настроенного подключения - окно настройки подключения будет открыто автоматически и после сохранения настроек будет выполнено автоподключение к торговой системе.

В окне Логи можно видеть ход подключения и любые ошибки, которые будут возникать при подключении, получении данных, работе стратегий или тестировании стратегий на истории.

После подключения к торговой системе в окне Портфели будут показаны все доступные позиции сгруппированные по портфелю, если для каких-то портфелей нет открытых позиций, то будет показан только заголовок с названием портфеля.

В окне инструменты по-умолчанию не показываются все полученные от торговой системы инструменты, т.к. инструментов может быть много. Для отображения необходимых инструментов надо выбрать добавить инструмент из хранилища:

В открывшемся окне будут показаны все доступные инструменты, необходимо выделить инструменты, которые будут использоваться в работе и добавить в список выбранных инструментов с помощью стрелочек, после подтверждения изменений эти инструменты будут добавлены в окно Инструменты главного окна:

Для площадок, которые не предоставляют список всех инструментов, можно воспользоваться поиском нужного инструмента по заданным критериям, для этого необходимо выбрать пункт Найти инструмент и в открывшемся окне указать параметры поиска инструментов:

После выбора используемых инструментов можно переходить к созданию стратегий. Все стратегии в S#.Studio представлены в виде дерева:

Корневой элемент задает тип стратегии, а его подэлементы конкретные экземпляры стратегий. Т.о. имея одну стратегию на скользящих средних мы можем запустить множество ее экземпляров с разными параметрами:

Для добавления нового типа стратегий используется кнопка
, при этом откроется окно добавления стартегии:

При добавлении стратегии можно:
- Создать стратегию из кода, выбрав один из готовых шаблонов
- Указать путь к готовой сборке со стратегией и выбрать один из типов стратегий в этой сборке После добавления нового типа стратегии из кода откроется вкладка с редактором кода для этой стратегии:

Окно редактора кода состоит из двух частей: редактора кода и специального элемента для вывода ошибок компиляции стратегии. Компиляция стратегии выполняется с помощью соответствующей кнопки в панели инструментов над редактором кода. Если в коде стратегии были допущены какие-либо ошибки, то они будут показаны в окне Список ошибок, если компиляция прошла без ошибок, на панели инструментов будет выведена надпись "Компиляция выполнена!".

Компиляция стратегии допускается только если в текущий момент времени нет ни одной запущенной стратегии данного типа, иначе кнопка компиляции будет недоступна. После выполнения компиляции стратегии можно перейти к экземпляру стратегии в дереве стратегий и в окне свойств указать ее параметры (портфель, инструмент, объем и др.)

После того как были указаны все необходимые параметры стратегии ее можно запустить с помощью соответствующей кнопки на панели инструментов окна стратегий

Если все данные были указаны верно и есть активное подключение к торговому терминалу, то должен отобразиться стакан для выбранного инструмента и, если стратегия поддерживает работу с графиком, то график по соответствующему инструменту:

Комментарии (103)
Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий
Для открытия опционного деска в S# Studio при использовании подключения к Plaza2 необходимо:
Здорово, молодцы. Но как я понял, оптимизации в студии совсем нет?
Подключаю к Альфа-Директ: AlfaTrader OnConnect -не добавляет реальный портфель для торговли, доступен только портфель - FORTS test. -стакан не транслируется -график не отображается ("Стратегия не предоставляет интерактивный режим")
и главный вопрос - через S#.Studio - можно торговать на реальном счете?
По портфелю баг подтверждаю, в ближайшее время будет обновление с фиксом.
-работа с графиком ведется из кода Подскажите что нужно в код дописать, чтобы график отображался?
Подскажите где найти (загрузить) простые тестовые стратегии, чтобы попробовать работу программы?
Коннект к Quik есть. Портфелей не видно. Если без Studio в API коннектиться портфели нармально поступают. Не ту кнопку нажал наверное.😀 Что сделать чтобы портфели появились?
В текущей версии перезапустить студию, как писал выше - скоро будет фикс.
Добрый день!
Установил S# Studio v4.1.16.1, все настройки по инструкции, несколько раз проверил. Но непосредственно во время установки соединения с QUIK были отличия от инструкции - окно "Новое подключение" вообще не появлялось. Также в окне "Настройка подключений" не было меню "Эмулятор".
Итого данные из по инструментам S# Studio получает, но мои портфели не показывает.
В чем может быть проблема?
Спасибо!
Инструмент RIM3 - RTS 6.13 в альфе по нему точно стакан есть!
В лоогах много чего например в ветке S#.Stidio S#.Studio | 19.03.2013 22:59:10.824 | Ошибка | System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта. в Abt.Controls.SciChart.RubberBandXyZoomModifier.caa1e079ee4b2473870761cdb1deb6b6d(Point c2fd6eaa47e6648ca5e229e24eb3dd951, Point c75e39920eb915b8663d277cc1de0e9f5) в Abt.Controls.SciChart.RubberBandXyZoomModifier.OnModifierMouseUp(ModifierMouseArgs e) в Abt.Controls.SciChart.ModifierGroup.c9fd5ab524d787e8439d8933aeb87fdc5(IChartModifier c6b1effd112e5355cd5f051dd91cd4f67, ModifierMouseArgs cbb39038dde40bfc3fdcfa70f4bbf8778) в (Object , IChartModifier , ModifierMouseArgs ) в A.cc520773788910821ba0d6331e9485563.c6dea473323fdce89c6d7460d087afc9c(Object c2e4dcf306e5d5e570ccc0d688db6e42c, IChartModifier c2e4dcf306e5d5e570ccc0d688db6e42c, ModifierMouseArgs c2e4dcf306e5d5e570ccc0d688db6e42c) в Abt.Controls.SciChart.ModifierGroup.c9e8960a6a8527c20ac9e46e162c72b22(Action
2 c4bd4ab823835cf92d221476b6fb65a17, ModifierMouseArgs c4c23d80d4d060e409c3479ef17d6c65e) в Abt.Controls.SciChart.ModifierGroup.OnModifierMouseUp(ModifierMouseArgs e) в Abt.Controls.SciChart.Utility.Mouse.MouseManager.cad56cb88fe961ec17710025afdf79607(ModifierMouseArgs cbb39038dde40bfc3fdcfa70f4bbf8778, IReceiveMouseEvents c18509698be3f9366c690e7d2b107b62c, Boolean c3791a1b71c1577bde30b55c12b2a5583) в Abt.Controls.SciChart.Utility.Mouse.MouseManager.cf88844ca415efe316ebbc6460c4d5477.c05440e857244a1c94c553c8d10b1499b.cdc6dd0b1b34439c6e93339dd3929be9f(IReceiveMouseEvents c133657388cc0f6f6615e21e129ac4b3a) в A.c3631c672e3fc9e342ac08ff1a63d428e.cacf72b657252e3e73860afb89d70cb9f[c13c28af86f0b14202b9c7ef43b1bd11a](IEnumerable1 c40a30a1bb6416cd164565919fdef15a9, Action`1 c885aac61bc9832561b7ff07903c88d5e) в Abt.Controls.SciChart.Utility.Mouse.MouseManager.cf88844ca415efe316ebbc6460c4d5477.c3e034dbe6fa1da0fdb7d6c9ee0f4960b(Object cae49ecc8585f35e8dd5ce624f7fb7ab5, MouseButtonEventArgs c4c23d80d4d060e409c3479ef17d6c65e) в 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.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent) в System.Windows.UIElement.OnMouseUpThunk(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.RaiseTrustedEvent(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, WindowMessage 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, Int32 numArgs) в MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)Смотрите исходный код стратегии средних, там есть работа с графиком. Стоит учесть, что свечки строятся по тиковым данным, в альфе, если не ошибаюсь, данные есть только с момента подключения, поэтому свечки могут быть не сразу.
Да, настроен верно, много раз перепроверял
А как второй инструмент в стратегию добавить? Или какая в принципе идея может быть использована для чего-то подобного арбитражу. Может две запущенные стратегии по каждому отдельному инструменту както взаимодействующие между собою?
Оставил работать на ночь. Пока Quik отсоединился от сервера Studio закидала окошками с сообщением о потеряном соединении. Устал кнопку Ок топтать. 😳 Как от них избавиться, пусть в лог пишет если хочет или парочку сообщений даст и успокоится.😀
С Quik в режиме эмуляции на инструменте RIM3 стакан показывает, графики рисует, выставляет заявки, но не совершает сделки на стратегии "Скользящие".
Запустил для пробы ту же стратегию без эмуляции. При попытке выставить Buy стратегия сообщила: OrderFailed:59380905/0 Покупка Цена=2147483647 Объем=1 Сост=Failed Бал=1 StockSharp.Quik.Api.Exception: Код ошибки Failed Сообщение Ошибка создания заявки. [FORTS][39] "Цена не кратна минимальному шагу цены".
Ради чайников типа меня, придется самому себе ответить на 2 вопрос. Выставление заявки на FORTS по рынку можно например сделать например так:
Заменив соответсвующий фрагмент в методе private void Process(Candle candle)
А что с первым вопросом делать не понятно.
Код исправлен.
Добрый день! Настроил подключение к Quik. При подключении сообщает "Ошибка в соединении. Отказано в доступе". Лицензия действительна до 22.04.2013. О каком доступе речь? Настроил подключение к Альфе, почему то запускается мастер установки Альфа-Директ на мой компьютер, он у меня уже стоит и работает.
Лицензию нужно получить. Предварительно активировав ее в личном кабинете через СМС код. Лицензия бесплатная, но она есть.
Активировал и получил лицензию на 180 дней. Но проблема осталась. При подключении выдает сообщение "Ошибка в соединении. Отказано в доступе".
Log файл от 26.03.2013
08:44:00.413|Error |QuikTrader|System.ComponentModel.Win32Exception (0x80004005): Отказано в доступе в System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited) в System.Diagnostics.NtProcessManager.GetModuleInfos(Int32 processId, Boolean firstModuleOnly) в System.Diagnostics.NtProcessManager.GetFirstModuleInfo(Int32 processId) в System.Diagnostics.Process.get_MainModule() в Ecng.Interop.WinApi.GetFileName(Process process) в StockSharp.Quik.QuikTerminal.#=qsPLxyreygt1NSZsDpcqx$aH5jRqHmo0e6VA8Ae6GM9o=(Process #=qqOqljU$aLnM181dH8tBimw==) в System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable
1 source, Func2 predicate) в StockSharp.Quik.QuikTerminal.#=qrqBOpYnqQJEOlUxrPCypSA==() в StockSharp.Quik.QuikTrader.OnConnect() в StockSharp.Algo.BaseTrader.Connect() 12:37:51.192|Error |QuikTrader|System.ComponentModel.Win32Exception (0x80004005): Отказано в доступе в System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited) в System.Diagnostics.NtProcessManager.GetModuleInfos(Int32 processId, Boolean firstModuleOnly) в System.Diagnostics.NtProcessManager.GetFirstModuleInfo(Int32 processId) в System.Diagnostics.Process.get_MainModule() в Ecng.Interop.WinApi.GetFileName(Process process) в StockSharp.Quik.QuikTerminal.#=qsPLxyreygt1NSZsDpcqx$aH5jRqHmo0e6VA8Ae6GM9o=(Process #=qqOqljU$aLnM181dH8tBimw==) в System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable1 source, Func2 predicate) в StockSharp.Quik.QuikTerminal.#=qrqBOpYnqQJEOlUxrPCypSA==() в StockSharp.Quik.QuikTrader.OnConnect() в StockSharp.Algo.BaseTrader.Connect()Студию и Квик нужно из под одних привилегий запускать. Если Квик запускается из под админа, то и студию так же. Или все не под админом.
Запустил все под админом, выбрал из хранилища RIM3, теперь выдает следующее: 14:12:26.073|Error |StudioTrader|System.ArgumentException: Окно с заголовком 'позиции по деривативам' не было найдено. Имя параметра: caption в StockSharp.Quik.QuikTerminal.#=qOa4h3ytbob2D_f4IyqFrnw==(String #=q7L7NL2wmQfGhvKG3CYty3g==, Boolean #=qORerfWgUVgZ$mEVWRb871Q==) в StockSharp.Quik.QuikTerminal.#=qXXz7Z_ELbOhh7UmEmlspUQ==(String #=qTQtOk647PdDmNpEz48fPSA==) в StockSharp.Quik.QuikTerminal.#=qPfUOKjnA3UGh7AEShv5YLQ==(IEnumerable
1 #=qkxdJWa43nmyMOEkv$Qx7yg==) в StockSharp.Quik.QuikTrader.StopExport() в StockSharp.Algo.BasketTrader.#=qJezPxycoBuPn5uCQk$MjajxEBjgno8aZcHSV_ZzdvU0=(ITrader #=qLdDZXqRAbea5g5R$jDkb2g==) в Ecng.Collections.CollectionHelper.ForEach(IEnumerable1 source, Action1 action) в StockSharp.Algo.BasketTrader.StopExport() в StockSharp.Algo.BasketTrader.#=qJezPxycoBuPn5uCQk$MjajxEBjgno8aZcHSV_ZzdvU0=(ITrader #=qLdDZXqRAbea5g5R$jDkb2g==) в Ecng.Collections.CollectionHelper.ForEach(IEnumerable1 source, Action`1 action) в StockSharp.Algo.BasketTrader.StopExport() в StockSharp.Studio.StudioTrader.StopExport() в StockSharp.Studio.MainWindow.ExecutedConnect(Object sender, ExecutedRoutedEventArgs e) 00:00:00.000| |EmulationTrader|Экспорт запущен. 00:00:00.000| |EmulationTrader|Экспорт остановлен.Я настроил все таблицы, начал вывод, как посыпалась одна и та же ошибка 16:21:25.981|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'инструменты' экспортировались в меньшем формате. Не было найдено значение для колонки 'Краткое название бумаги'. Количество колонок равно '6', индекс колонки '12'. в #=q8EsfaC7HD5VDd4e$FdscBWI$Sbtn9I5WBY$5mFj8FPBaFXRZh9W7hIfdRMkHCgEh.#=q2QuyrxHRAzbI_7JSDAnc3g71FEj1sG6rJNIoCh0fE_Y=.#=qxru21NdododkRcIt8tGK8I0wUPtm3igM6raGJQnUrjk=(DdeTableColumn #=qaxTr0AVgaX3ZqI1YjJJBdA==) в #=q8EsfaC7HD5VDd4e$FdscBWI$Sbtn9I5WBY$5mFj8FPBaFXRZh9W7hIfdRMkHCgEh.#=qYzNB6TqY6_aaggdALmQ7ag==(Func
2 #=qoEK$zwhmdGMghSUXvd0b8w==, DdeTableColumn #=qI7bTHw9KgahBXKPKsIXrGA==) в StockSharp.Quik.QuikTrader.#=qm3DJIfKQjEOygviJVG8g1xgrJnUUUBPg6S_I_6Nv3v4=.#=qNKABkom_ANJcNpOkOQ2Mo_ycmrnczBzOLk$P357WhEg=.#=q0ovLWk_6N7gGo3LZtDRHYA==(Security #=qwmSy0CDMe2fmjBAk52QPpA==) в StockSharp.Algo.BaseTrader.GetSecurity(String id, Func2 createSecurity, Func2 changeSecurity) в StockSharp.Algo.BaseTrader.GetSecurity(String id, Func2 changeSecurity)Какая по счету должна быть колонка "Краткое название бумаги", в инструкции по настройке её нет вообще.
При работе стратегии скользящие средние на реале студия не видит Position соотвественно бесконечно на каждой новой свечке выставляет заявки удвоенного объема. Так и разорится можно учитывая что на эмуляторе не функционирует. Может можно выдавать какую-нибудь расширенную диагностику по подключению к Quik терминалу, а то основная головная боль по работе с библиотекой или со Studio представляется именно в этом. Народ хочет разобраться что к чему.😀
Пардон проблема с Position снята. Стал на собственные грабли наступать. В коде приведенном в предыдущем посте ошибочка. Сейчас поправлю. Вопрос по расширенной диагностике коннектора Quik все-же остается.
Диагностика чего именно в коннекторе?
Ну например куда-нибудь лог скинуть в стиле таблица Quik такая-то; Колонка номер такая-то; послано то; получено это.
Из-за таблицы тиков и стаканов такие логи быстренько скушают весь диск. И будут нечитаемы из-за большого объема.
Это понятно. Такую возможность хочется иметь только для включения на очень короткий период отладки. Чтобы выяснить проблему подключения. При таком использовании диск не съест.
Еще лучше вариант логирование обмена с каким-либо образом выбранной таблицей.
Вы вручную настраивали таблицы? Столбца "Краткое название бумаги" быть не должно, если вы не выбирали его вручную в настройках подключения к Quik.
Я настраивал вручную. В настройках колонки "краткое название бумаги" нет, а студия ругается, что таблица "инструменты" экспортировалась в меньшем объеме, отсутствуют данные в этой колонке. Я так понимаю, это студии они нужны, а в Квике их нет.
Попробуйте готовый файл настроек.
Студия вроде бы заработала, стакан есть, график есть, вот только прорисовка графика очень далека от реальности.
Запустил стратегию. Через 5 минут всё зависло.
17:59:58.761| |SS_RIM3@RTS_FORTS_test|Стратегия запущена. [0,-1]. Позиция при старте 0. 18:04:04.058| |SS_RIM3@RTS_FORTS_test|Новый сигнал на шорт. 18:04:04.081| |SS_RIM3@RTS_FORTS_test|Регистрация новой Limit (0x201C39D) заявки на Sell с ценой 1 и объемом 1. 18:04:04.134|Error |SS_RIM3@RTS_FORTS_test|System.InvalidOperationException: Шлюз для портфеля FORTS_test не найден. 18:04:04.134| |SS_RIM3@RTS_FORTS_test|Стратегия останавливается. [0,-1]. Позиция при старте 0. 18:04:04.134| |SS_RIM3@RTS_FORTS_test|Ожидание снятия всех активных заявок.
При этом в лог файле QuikTrader и StudioTrader опять посыпалась ошибка
18:09:13.732|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'инструменты' экспортировались в меньшем формате. Не было найдено значение для колонки 'Краткое название бумаги'. Количество колонок равно '6', индекс колонки '12'.
Портфель FORTS_test предназначен для тестирования на истории, для торговли на реале надо выбрать портфель, который есть в терминале.
А что надо сделать чтобы в стратегии Position показывала позицию. this.PositionManager.Position показывает все верно, а this.Position показывает 0. Соответсвенно стратегия простая скользящая не работает, а генерит сделки. Так как считает что позиция 0. Если заменить Position на this.PositionManager.Position то работает. Quik настраивал и вручную и с info.wnd от API. Результат одинаковый. Очень бы логирование коннектора помогло бы, полагаю. Не приставал бы с дурацкими вопросами.😑
Чтобы разобраться в проблеме приводите лог работы стратегии и ее параметры.
Спасибо за подсказку moadip. После снятия галки с фильтра параметров все заработало. Не подозревал что такое в разделе Связь Quik-а есть.
Если нет каких то столбцов, надо проверить не стоит ли фильтр. Или если стоит, то выбраны нужные столбцы в Связь -> Списки -> Фильтр параметров.
Если нет каких то столбцов, надо проверить не стоит ли фильтр. Или если стоит, то выбраны нужные столбцы в Связь -> Списки -> Фильтр параметров.
Точно стоял фильтр параметров. Только я его не ставил видимо от брокера так установлено. Спасибо. Надо учить матчасть.
Почему то после выходных стратегия перестала функционировать пишет что то про Гидру. Возможно как то связанно с тем что удалил подключеие к Quik и создал новое с добавлением двух дополнительных колонок по таблице инструменты "минимальная цена" "максимальная цена". Как бы понять как с этой ошибкой бороться:
Обновите Студию. Поменялся контракт клиент-серверного взаимодействия.
на Windows 7 (64) - установлены все последние обновления, при запуске #Studio - пишет что нужен NETFramework 4.0
Обновления это не .NET Framework 4. Раз просит, скачайте и поставьте - .NET Framework 4.
имел в виду установлен NETFramework 4.5 На другом компьютере установил NETFramework 4.0, как просит #Studio, теперь у меня каждый автоматическое обновление Windows предлагает установить NETFramework новый
4.5 - это 4.0 с плюшками. Если у вас есть 4.5, значит есть и 4.0.
Если бы всё было так просто, то можно было бы устанавливать 4.5, т.е. плющки, на Виндовс ХР с .NET 4.0 Но нельзя в принципе, т.к. 4.0 из поколения 4.5 пользуется тем, что на чистых машинах 4.0 в принципе нет
PS Неужели Вы тот самый загадочный Василь Саныч - член той самой изумительной прокреативной четвёрки Стокшарповцев?
То, что Вы собираете под 4.0 на машине с .NET 4.5 имеет только теоретическую совместимость с 4.0-без-4.5 (особенно Виндовс ХР)
PS В частности, я так и не смог установить S#.Studio на Windows XP
Если Вам одной ссылки по поводу того, что из машины с .NET 4.5 нельзя создавать приложения на для 4.0 - недостаточно, могу ещё подкинуть
Фу, как пахнет некрасиво. Стокшарп, одним словом всё сказано
В профиле убрал ниже приведенные слова, а что с постами?
зы Текущий ник Терпила - наводит конечно на определенные мысли. Но я думаю вам и мне достаточно лет, чтобы не заниматься ерундой в интернете.
PS Хуже того: гадский 3.5 имелся в двух версиях - "новой" и "старой", которые значительно отличались по клиент-сервеному взаимодействию. Что немало доставляло разработчикам и службам поддержки.
Другое дело, что поддержки XP уже давно нет, и как оно у вас там будет копошиться - это только ваши личные проблемы. Могу только заверить, что под Windows 2000, windows 98, windows 95, windows nt и windows 3.1 софт, скомпиленный под .net 4.0 работать точно не будет.
Под Windows XP все прекрасно работает. Если не работает, то это локальные проблемы.
На самом деле проблема Геннадия уникальна. Раз уж Геннадий, программист со стажем(что подразумевает что он Advanced User PC) не может решить эту проблему, то скорее всего ему уже никто и ничто не сможет помочь.
Возможно это из за плохой кармы.😂
Доброго дня, чёт не получется у меня смартком подружить с вашими продуктами, студия не показыват портфели и стаканы пустые, выдаёт сообщение - Ошибка запуска экспорта Операция является недопустимой из-за текушего состояния обьекта.пробовал ваши стратегии которые идут в студии. W7, 64.
Похоже дело не в Anu cpu , попробовал на ноутбуке запустить, точь так же не работает и выдаёт тоже сообщение, в ноуте стоит виста х32.
Пытаюсь протестировать стратегию в стокшарп студии, создал как на видео стратегию sma, в окне выбора инструментов появляются инструменты, причем какие-то одни и те же, хотя подключаюсь к plaza2 или к квику, их список не меняется, выбираю например RIM3, а стратегия про попытке запуска все равно выдает сообщения "стратегия 'sma' не имеет информации об инструменте". Подскажите что не так сделал?
В список инструментов в главном окне можно добавить инструменты из хранилища, по-умолчанию показыаются не все инструменты, а только специально выбранные, чтобы легче было работать только с необходимыми данными. Стратегия у вас только одна или несколько?
Одна стратегия, создаю ее как в примере на видео, хранилище локальное, скачал предварительно фьючерсы, при этом показывает что данные скачаны только по RIM3, остальные инструменты не показывает, тот список что по умолчанию не обновляется когда я меняю папку хранилища, там должны быть вообще другие инструменты http://screencast.com/t/UrLURzMFx
При попытке запуска выдает сообщения "стратегия 'sma' не имеет информации об инструменте
Под хранилищем, в данном случае, понимается немного другое. Когда подключение выполняется через плазу, то приходит большой список инструментов, т.к. все сразу они не нужны, то они просто сохраняются в БД Студии, далее пользователь сам формирует список необходимых ему инструментов (избранные инструменты) и именно с этим списком дальше ведется работа. Как добавить инструменты из общего списка в избранные есть в первом сообщении.
Из хранилища данных инструменты получить нельзя, если у вас в терминале сейчас нет нужных инструментов, то его можно создать руками, указав его Id и остальные поля.
По запуску стратегии, покажите скриншот настроек стратегии и как вы ее запускаете?
Снова вернулся к тестам вашей программы. Работаю с Альфа-директ (все настроено: стакан, заявки...) При запуске стратегий Скользящие, Аналитическая - ни стакан ни график не отображаются
Давайте начнем с логов, что лежат в Documents\StockSharp\Studio\Logs
12:55:27.201| |SS_RIM3@RTS_XXXXX-000@FORTS|Стратегия запущена. [0,-1]. Позиция при старте 0. 12:55:43.887| |SS_RIM3@RTS_XXXXX-000@FORTS|Стратегия останавливается. [0,-1]. Позиция при старте 0. 12:55:43.887| |SS_RIM3@RTS_XXXXX-000@FORTS|Ожидание снятия всех активных заявок. 12:55:43.900| |SS_RIM3@RTS_XXXXX-000@FORTS|Стратегия остановлена. [0,-1]. Позиция при старте 0.
не нахожу как прикрепить файл, вставляю из StudioTrader
00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 00:00:00.000|Error |EmulationTrader|OrderLog не прошел валидацию лицензией, тестирование на OrderLog невозможно. 15:53:42.335| |AlfaTrader|OnConnect() 15:53:42.731| |AlfaTrader|Соединение с Альфа-Директ установлено 00:00:00.000| |EmulationTrader|Экспорт запущен. 15:53:42.739| |AlfaTrader|StartExport() 15:53:42.740| |AlfaTrader|Экспорт запущен. 15:53:42.874|Error |AlfaTrader|System.ArgumentNullException: Значение не может быть неопределенным. Имя параметра: board в StockSharp.Algo.SecurityIdGenerator.GenerateId(String secCode, String secClass, ExchangeBoard board) в StockSharp.AlfaDirect.AlfaTrader.#=qvBntNXwTyb8nDnqu1Xp9SueMAki0U8yuuqqZ3Jo2ZyI=.#=qFlA5keRKqrfIYFPsk8IjZQqiWEYGn48CRhCszCTFpm4=() в StockSharp.Algo.BaseTrader.ProcessEvents(Action handler) 15:53:42.874|Error |AlfaTrader|System.ArgumentNullException: Значение не может быть неопределенным. Имя параметра: board в StockSharp.Algo.SecurityIdGenerator.GenerateId(String secCode, String secClass, ExchangeBoard board) в StockSharp.AlfaDirect.AlfaTrader.#=qvBntNXwTyb8nDnqu1Xp9SueMAki0U8yuuqqZ3Jo2ZyI=.#=qFlA5keRKqrfIYFPsk8IjZQqiWEYGn48CRhCszCTFpm4=() в StockSharp.Algo.BaseTrader.ProcessEvents(Action handler) 15:53:42.874|Error |AlfaTrader|System.ArgumentNullException: Значение не может быть неопределенным. Имя параметра: board в StockSharp.Algo.SecurityIdGenerator.GenerateId(String secCode, String secClass, ExchangeBoard board) в StockSharp.AlfaDirect.AlfaTrader.#=qvBntNXwTyb8nDnqu1Xp9SueMAki0U8yuuqqZ3Jo2ZyI=.#=qFlA5keRKqrfIYFPsk8IjZQqiWEYGn48CRhCszCTFpm4=() в StockSharp.Algo.BaseTrader.ProcessEvents(Action handler) 15:53:43.114| |AlfaTrader|create order: id = 114285430, tr. id = 2773781830 15:53:43.114| |AlfaTrader|Создание ордера из терминала, tr. id 2773781830 15:53:43.392| |AlfaTrader|update order: id = 114285430 15:53:43.394| |AlfaTrader|Order changed: 2773781830/114285430 Покупка Цена=129390 Объем=5 Сост=Done Бал=5 15:53:43.399| |AlfaTrader|New order: 2773781830/114285430 Покупка Цена=129390 Объем=5 Сост=Done Бал=5 15:53:43.407| |AlfaTrader|create order: id = 114294006, tr. id = 148851687 15:53:43.407| |AlfaTrader|Создание ордера из терминала, tr. id 148851687 15:53:43.650| |AlfaTrader|update order: id = 114294006
Лицензию получал (42815)
Приветствую, сегодня обновил студию и гидру, так и не подключается к смарткому, устал уже(, может подскажете всё же? студия выдает вот эту ошибку 00:41:05.832|Error |SmartTrader|System.Runtime.InteropServices.COMException (0x800706BA): Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA) в StClientLib.StServerClass.connect(String ip, Int16 port, String login, String password) в StockSharp.Smart.SmartComWrapper.#=q5dJH1y7MI3gwsZ8QzLKabg==() в Ecng.ComponentModel.EventDispatcher.<>c__DisplayClass1.<Add>b__0() мои приложения работают норм под смарткомом. W7,х64.
Студию запускаю в режиме х86 от админа, мои приложения работают на прямую с комом , без стокшарпа, написаны на Visual Basic
Всё это делал, закрывал свои приложения, перезапускал службу. и всё равно выбивает службу смартком. скачал последний ком, поставил всё по инструкции. да и стоял последний
А когда ждать следующую версию?
Добрый день. Скажите а как в студии сохранять свечи? Или для этого надо пользоваться S# Data. Если да то вопрос в том умеет ли сутдия мержить свечи: допусти у меня Гидра качает раз в день с утра. А все остальное приходит через квик. Студия сумеет это отобразить?
Помогаю дальше настраивать работу S#.Studio ))
Добрый день.
Как протестировать стратегию на скользящих средних по историческим данным? Данные скачаны и лежат в локальной папке.
Еще вопрос - в качестве хранилища нужно указывать папку, куда Гидра качает все данные (c:\data) или по конкретному источнику (c:\data\dataFinam)?
Такая проблема, При компиляции любой стратегии пишет: Не удалось найти файл метаданных "D:\Studio\StockSharp.Studio.Controls.Interfaces.dll". Соответственно ничего не работает.
Последняя версия студии. Тока установил, пытаюсь запустить.
Выложили 4.1.14.2 с фиксом. После обновления необходимо открыть редактор кода для любой стратегии, далее открыть окно редактирования ссылок на библиотеки и удалить из списка отсутствующий файл.
Спасибо за отличный продукт!
Было бы здорово добавить кнопку "Обновить стратегию" Я пишу код стратегии в VS, затем компилирую. Добавляю стратегию в S#.studio. Если мне необходимо внести изменения, то мне необходимо вновь скомпилировать стратегию, закрыть S#.studio, и вновь ее открыть. Только тогда изменения вступят в силу. Собственно кнопочка "Обновить стратегию" просто заново бы "читала" сборку со стратегией, без закрытия S#.studio.
Здравствуйте. А как определить порядок отображения параметров стратегии в окне свойства? У меня выглядит как на рисунке, всё вперемешку. Хочется их расставить в определённом порядке, чтобы всё красиво было.