Настройка коннектора QuikLua

Настройка коннектора QuikLua (Locked)
Atom
7/9/2014
esper


[b]Настройка коннектора QuikLua.

[center][YOUTUBE]http://www.youtube.com/watch?v=yKHIK9dLM5g[/YOUTUBE][/center]

[list=1][*]Скачать и установить [url=http://www.microsoft.com/ru-ru/download/details.aspx?id=40784]Visual C++ 2013[/url] ([b]необходимо скачать vcredist_x86.exe[/b]).

[*][b]Настройка и загрузка Lua скрипта[/b] Для работы с Quik через Lua подключение необходимо загрузить скрипт StockSharp.Quik.lua, который находится в папке References, рядом с файлом скрипта должны быть все необходимые сборки: [spoiler] Antlr3.Runtime.dll ClrPatch.dll Ecng.Collections.dll Ecng.Common.dll Ecng.ComponentModel.dll Ecng.Configuration.dll Ecng.Data.dll Ecng.Data.Providers.dll Ecng.Interop.dll Ecng.Net.dll Ecng.Reflection.dll Ecng.Security.dll Ecng.Serialization.dll Ecng.Serialization.FieldFactories.dll Ecng.Transactions.dll Ecng.Web.dll Ecng.Xaml.dll FirebirdSql.Data.FirebirdClient.dll Google.GData.AccessControl.dll Google.GData.Calendar.dll Google.GData.Client.dll Google.GData.Extensions.dll ICSharpCode.SharpZipLib.dll log4net.dll ManagedWinapi.dll MathNet.Numerics.dll Microsoft.Practices.EnterpriseLibrary.Common.dll Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.dll Microsoft.Practices.ServiceLocation.dll Microsoft.Practices.Unity.dll Microsoft.Practices.Unity.Configuration.dll Microsoft.Practices.Unity.Interception.dll MoreLinq.dll NCalc.dll NDde.dll Newtonsoft.Json.dll Npgsql.dll NPOI.dll NPOI.OOXML.dll NPOI.OpenXml4Net.dll NPOI.OpenXmlFormats.dll Ookii.Dialogs.Wpf.dll PowerCollections.dll QuickFix.dll SevenZipSharp.dll SmartFormat.dll StockSharp.Algo.dll StockSharp.BusinessEntities.dll StockSharp.Community.dll StockSharp.Fix.dll StockSharp.Licensing.dll StockSharp.Logging.dll StockSharp.Messages.dll StockSharp.Quik.dll StockSharp.QuikLua.dll Xceed.Wpf.Toolkit.dll StockSharp.Quik.lua [/spoiler] В файле скрипта можно указать порт, на котором сервер будет принимать подключения, а так же логин и пароль, с которыми будет подключаться клиент, если поле логин не указано, то подключение может выполняться от имени любого пользователя. По умолчанию используется порт 5001 и отсутствует проверка логина: [spoiler]

-- Настройки QUIK Lua Fix сервера

-- Серверный порт, на котором будет работать FIX сервер. ServerPort=5001

-- Логин, с которым разрешено подключение к FIX серверу. -- ServerLogin="quik"

-- Пароль, с которым разрешено подключение к FIX серверу. -- ServerPassword="quik" -------------------------------------------------------------------------[/spoiler] Файл скрипта так же содержит настройки записи отладочной информации, уровень записываемых сообщений и путь к файлу логов: [spoiler]

-- Настройки логирования

-- Уровень логирования. -- 1 - Debug -- 2 - Info -- 3 - Warning -- 4 - Error LogLevel=2

-- Название текстового файла (без расширения), -- в который будут сохраняться лог-сообщения. LogFile="StockSharp.QuikLua" -------------------------------------------------------------------------[/spoiler] Далее необходимо загрузить скрипт в терминале Quik. Открываем таблицу доступных скриптов (Таблицы - Lua - Доступные скрипты), выбираем добавить и после добавления скрипта, необходимо его запустить. Запуск скрипта выполняется один раз, при следующем запуске терминала скрипт будет запущен автоматически.

[*][b]Настройка таблиц в терминале Quik[/b] Коннектор QuikLua не требуется специальной настройки названий таблиц и их содержимого, кроме таблицы инструментов, которая используется для автоматического открытия стаканов. Но, чтобы Quik получал все необходимые данные, все основные таблицы должны быть открыты. Проверить наличие всех необходимых таблиц в терминале можно с помощью программы Verifier, который использует разные варианты проверки для Lua режима и Dde. Режим проверки выбирается соответствующей галочкой.

В качестве примера в архиве лежит файл настроек по умолчанию Quik\info_lua.wnd, все старые файлы настроек и примеры перенесены в папку Quik\Dde. В данной конфигурации открыты все необходимые таблицы с настройками по-умолчанию, кроме таблицы инструментов.

Для поддержки автоматического открытия стакана должна присутствовать открытая таблица текущих параметров. Таблица должна содержать колонки: Код бумаги, Код класса. Порядок столбцов таблицы может быть любым.

[*][b]Создание подключения[/b] Выбор режима подключения к Quik (Lua или Dde) выполняется с помощью установки свойства QuikTrader.IsDde. При Lua подключении нет необходимости указывать путь к терминалу, но необходимо указать настройки подключения к серверу (LuaFixServerAddress, LuaLogin и LuaPassword): [code=csharp] // создаем подключение Trader = new QuikTrader { LuaFixServerAddress = "127.0.0.1:5001".To(), LuaLogin = "quik", LuaPassword = "quik".To() };[/code] Значения по умолчанию для этих полей соответствуют настройкам по умолчанию в скрипте.

[i][b]Свойство QuikTrader.IsDde по умолчанию установлено в false[/b][/i], т.о. по умолчанию используется Lua подключение. Если необходимо использовать подключение через Dde, необходимо вручную выставить это свойство: [code=csharp] // создаем подключение Trader = new QuikTrader(path) ;[/code]

[i]Примеры в Пример Quik\Sample позволяет выполнить подключение только через Lua, старые примеры, которые работают через Dde перенесены в папку Quik\Dde.[/i]

[*][b]Мониторинг работы Lua скрипта[/b] Для мониторинга работы скрипта, после его запуска в Quik, в папке со скриптом, будет создан лог-файл (по умолчанию используется файл StockSharp.QuikLua.log). В данном файле показаны основные запросы клиента к серверу и ошибки обработки данных в скрипте. [/list]

Текущая версия Quik Lua коннектора не поддерживает работу со стоп-заявками и получение истории изменений.

[h]Начиная с версии 4.2.26.0 добавлена поддержка стоп-заявок.[/h]





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

loading
clippy