QL
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
QL Library Version 0.5.3.2 // дАННАЯ ИНСТРУКЦИЯ СОДЕРЖИТ НЕ ПОЛНЫЙ НАБОР ДОСТУПНЫХ В БИБЛИОТЕКЕ ФУНКЦИЙ! ОБЯЗАТЕЛЬНО ЗАГЛЯНИТЕ ВНУТРЬ;) 1. function sendLimitFO(class,security,direction,price,volume,account,comment,execution_condition,expire_date,market_maker) -- отправка лимитированной заявки -- все параметры кроме кода клиента и коментария должны быть не нил -- ВАЖНО! цена должна быть стрингом с количеством знаков после точки для данной бумаги -- если код клиента нил - подлставляем счет (для спот-рынков) -- execution_condition может принимать 2 варианта - FILL_OR_KILL(Немедленно или отклонить),KILL_BALANCE(Снять остаток). Если параметр не указан то по умолчанию Поставить в очередь. ВНИМАНИЕ! Работает ТОЛЬКО на срочном рынке! -- expire_date - указывается для переноса заявок на срочном рынке -- market_maker - признак заявки маркет-мейкера. true\false -- Данная функция возвращает 2 параметра -- 1. ID присвоенный транзакции либо nil если транзакция отвергнута на уровне сервера Квик -- 2. Ответное сообщение сервера Квик либо строку с параметрами транзакции 2. function sendLimitSpot(class,security,direction,price,volume,account,client_code,comment,market_maker) -- отправка лимитированной заявки -- все параметры кроме кода клиента и коментария должны быть не нил -- ВАЖНО! цена должна быть стрингом с количеством знаков после точки для данной бумаги -- если код клиента нил - подлставляем счет -- market_maker - признак заявки маркет-мейкера. true\false -- Данная функция возвращает 2 параметра -- 1. ID присвоенный транзакции либо nil если транзакция отвергнута на уровне сервера Квик -- 2. Ответное сообщение сервера Квик либо строку с параметрами транзакции 3. function sendRPS(class,security,direction,price,volume,account,client_code,partner) -- функция отправки заявки на внебиржевую сделку -- Данная функция возвращает 2 параметра -- 1. ID присвоенный транзакции либо nil если транзакция отвергнута на уровне сервера Квик -- 2. Ответное сообщение сервера Квик либо строку с параметрами транзакции 4. function sendReportOnRPS(class,operation,key) -- отправка отчета по сделки для исполнения -- Данная функция возвращает 2 параметра ОР -- 1. ID присвоенный транзакции либо nil если транзакция отвергнута на уровне сервера Квик -- 2. Ответное сообщение сервера Квик либо строку с параметрами транзакции 5. function killOrder(orderkey,security,class) -- функция отмены лимитированной заявки по номеру -- принимает минимум 1 парамер -- ВАЖНО! Данная функция не гарантирует снятие заявки -- Возвращает сообщение сервера в случае ошибки выявленной сервером Квик либо строку с информацией о транзакции 6.function killAllOrders(table_mask) -- данная функция отправит транзакции на отмену АКТИВНЫХ заявок соответствующим фильтру указанному как входящий параметр table_mask -- список всех возможных параметров : ACCOUNT,CLASSCODE,SECCODE,OPERATION,CLIENT_CODE,COMMENT -- если вызвать функцию с параметром nil - снимутся ВСЕ активные заявки 7. function toLog(file_path,value) -- запись в лог параметра value -- value может быть числом, строкой или таблицей -- file_path - путь к файлу -- файл открывается на дозапись и закрывается после записи строки 8. function getHRTime() -- возвращает время с милисекундами в виде строки 9. function getHRDateTime() -- Возвращает строку с текущей датой и время с милисекундами 10. function toPrice(security,value) -- преобразования значения value к цене инструмента правильного ФОРМАТА (обрезаем лишнии знаки после разделителя) -- Возвращает строку 11. function getPosFromTable(table,value) -- Возвращает ключ значения value из таблицы table, иначе -1 12. function orderflags2table(flags) -- фнукция возвращает таблицу с полным описанием заявки по флагам -- Атрибуты : active, cancelled, done,operation("B" for Buy, "S" for Sell),limit(1 - limit order, 0 - market order) 13. function bit_set( flags, index ) --функция возвращает true, если бит [index] установлен в 1 14. function getRowFromTable(table_name,key,value) -- возвращаем строку (таблицу Луа) из таблицы table_name с столбцом key равным value, иначе nil. -- table_name[key].value 15. function moveOrder(mode,fo_number,fo_p,fo_q,so_number,so_p,so_q) -- перемещение заявки -- минимальный набор параметров mode,fo_number,fo_p -- в зависимости от класса первой заявки будет вызвана функция перемещения либо для СПОТ либо Срочного рынка 16. function moveOrderSpot(mode,fo_number,fo_p,fo_q,so_number,so_p,so_q) -- перемещение заявок для рынка спот -- минимальный набор параметров mode,fo_number,fo_p -- отправится 2 транзакции снятие+постановка для каждой из указанных заявок -- Возвращаем 2 параметра : -- 1. Nil - если неудача или номер транзакции (2-й если 2 заявки) -- 2. Диагностиеское сообщение 17. function moveOrderFO(mode,fo_number,fo_p,fo_q,so_number,so_p,so_q) -- перемещение заявок для срочного рынка -- отправка "нормальной" транзакции Квика -- минимальный набор параметров mode,fo_number,fo_p -- Возвращаем 2 параметра : -- 1. Nil - если неудача или номер транзакции (2-й если 2 заявки) -- 2. Диагностиеское сообщение 18. function table2string(table) -- превращение таблицы в строку 19. function getPosition(security) -- возвращает текущую позицию по инструменту 20. sendStop(class,security,direction,stopprice,dealprice,volume,account,exp_date,client_code,comment) -- отправка простой стоп-заявки -- все параметры кроме кода клиента,коментария и времени жизни должны быть не нил -- если код клиента нил - подлставляем счет -- если время жизни не указано - то заявка "До Отмены" -- Данная функция возвращает 2 параметра -- 1. ID присвоенный транзакции либо nil если транзакция отвергнута на уровне сервера Квик -- 2. Ответное сообщение сервера Квик либо строку с параметрами транзакции 21. function stoporderflags2table(flags) -- фнукция возвращает таблицу с полным описанием стоп-заявки по флагам --[[ Атрибуты : active, cancelled, done,operation("B" for Buy, "S" for Sell),limit(true - limit order, false - market order), mte(Возможно исполнение заявки несколькими сделками),wait_activation(Стоп-заявка ожидает активации), another_server(Стоп-заявка с другого сервера),tplopf(Устанавливается в случае стоп-заявки типа тейк-профита по заявке, в случае когда исходная заявка частично исполнена и по выставленной тейк-профит заявке на исполненную часть заявки выполнилось условие активации), manually_activated(Стоп-заявка активирована вручную),rejected(Стоп-заявка сработала, но была отвергнута торговой системой), rejected_limits(Стоп-заявка сработала, но не прошла контроль лимитов),cdtloc(Стоп-заявка снята, так как снята связанная заявка), cdtloe(Стоп-заявка снята, так как связанная заявка исполнена),minmaxcalc(Идет расчет минимума-максимума) ]] 22. function stoporderextflags2table(flags) -- фнукция возвращает таблицу с дополнительнім описанием стоп-заявки по флагам --[[ Атрибуты : userest(Использовать остаток основной заявки), cpf(При частичном исполнении заявки снять стоп-заявку), asolopf(Активировать стоп-заявку при частичном исполнении связанной заявки), percent(Отступ задан в процентах, иначе – в пунктах цены),defpercent(Защитный спред задан в процентах, иначе – в пунктах цены), this_day(Срок действия стоп-заявки ограничен сегодняшним днем),interval(Установлен интервал времени действия стоп-заявки), markettp(Выполнение тейк-профита по рыночной цене),marketstop(Выполнение стоп-заявки по рыночной цене), ]] 23. function killStopOrder(orderkey,security,class) -- функция отмены стоп-заявки по номеру -- принимает минимум 1 парамер -- ВАЖНО! Данная функция не гарантирует снятие заявки -- Возвращает сообщение сервера в случае ошибки выявленной сервером Квик либо строку с информацией о транзакции 24. function killAllStopOrders(table_mask) -- данная функция отправит транзакции на отмену АКТИВНЫХ стоп-заявок соответствующим фильтру указанному как входящий параметр table_mask -- список всех возможных параметров : ACCOUNT,CLASSCODE,SECCODE,OPERATION,CLIENT_CODE,COMMENT -- если вызвать функцию с параметром nil - снимутся ВСЕ активные заявки 25. function isTradeTime(exchange, shift) --возвращает true если текущее серверное время является торговым для биржи exchange и false если нет (клиринг, нет торгов) -- возможные вариант бирж - UX,MICEX,FORTS -- в параметре shift следует указать сдвиг времени сервера брокера относительно времени бирж MICEX,FORTS (сервера размещены в Украине например) 26. function getSTime() --возвращает время сервера в виде числа формата HHMMSS 27. function getTradeDate() -- возвращает текущую торговую дату в виде числа формата YYYYMMDD 28. function datetime2string(dt) -- преобразует обьект datetime в строку формата YYYYMMDDHHMMSS 29. function isEqual(tbl1,tbl2) -- возвращает true если таблицы tbl1 и tbl2 полснотью совпадают 30. function isSubTable(sub,main) -- возвращает true если таблица sub полностью и в точности содержится в таблице main 31. function tradeflags2table(flags) -- фнукция возвращает таблицу с полным описанием заявки по флагам --[[ Атрибуты :operation("B" for Buy, "S" for Sell, "" for not defined(index for example)) ]] 32. function getLTime() -- возвращает текущее время компьютера в виде числа формата HHMMSS 33. function getParam(security,param_name) --вызывает стандартную функцию getParamEx. Автоматически находит код класса. возвращает значение в правильном формате. В случае ошибки возвращает диагностику вторым аргументом Добавлен класс для создания и удобной работы с нативными таблицами Квика QTable 34. function QTable:new() -- Создать и инициализировать экземпляр таблицы QTable 35. function QTable:Show() -- отобразить в терминале окно с созданной таблицей 36. function QTable:IsClosed() --если окно с таблицей закрыто, возвращает «true» 37. function QTable:delete() -- удалить таблицу 38. function QTable:GetCaption() -- возвращает строку, содержащую заголовок таблицы 39. function QTable:SetCaption(s) -- Задать заголовок таблицы 40. function QTable:AddColumn(name, c_type, width, ff ) -- Добавить описание столбца name типа C_type в таблицу -- ff – функция форматирования данных для отображения 41. function QTable:Clear() -- очистить таблицу 42. function QTable:SetValue(row, col_name, data) -- Установить значение в ячейке 43. function QTable:AddLine() -- добавляет в конец таблицы пустую строчку и возвращает ее номер 44. function QTable:InsertLine(key) -- добавляет в таблицы пустую строчку и возвращает ее номер 45. function QTable:GetSize() -- возвращает размер таблицы, количество строк и столбцов 46. function QTable:GetValue(row, name) -- Получить данные из ячейки по номеру строки и имени столбца 47. function QTable:SetPosition(x, y, dx, dy) -- Задать координаты окна -- x,y - координаты левого верхнего угла; dx,dy - ширина и высота 48. function QTable:GetPosition() -- Функция возвращает координаты окна 49. function isChartExist(chart_name) -- возвращает true, если график с идентификатором chart_name сущестует иначе false 50. function getCandle(chart_name,bar,line) -- возвращает свечу со сдвигом bar от последней существующей для графика с идентификатором chart_name -- параметр line не обязательный (по умолчанию 0) -- параметр bar не обязательный (по умолчанию 0) -- возвращает таблицу Луа с запришиваемой свечей или nil и сообщение с диагностикой 51. function getPrevCandle(chart_name,line) -- возвращает пред-последнюю свечу для графика с идентификатором chart_name -- параметр line не обязательный (по умолчанию 0) -- возвращает таблицу Луа с запришиваемой свечей или nil и сообщение с диагностикой 52. function getLastCandle(chart_name,line) -- возвращает последнюю свечу для графика с идентификатором chart_name -- параметр line не обязательный (по умолчанию 0) -- возвращает таблицу Луа с запришиваемой свечей или nil и сообщение с диагностикой 53. function crossOver(bar,chart_name1,val2,parameter,line1,line2) -- Возвращает true если график с идентификатором chart_name1 пересек снизу вверх график (или значение) val2 в баре bar. -- параметры parameter,line1,line2 необязательны. По умолчания равны close,0,0 соответственно 54. function crossUnder(bar,chart_name1,val2,parameter,line1,line2) -- Возвращает true если график с идентификатором chart_name1 пересек сверху вниз график (или значение) val2 в баре bar. -- параметры parameter,line1,line2 необязательны. По умолчания равны close,0,0 соответственно 55. function turnDown(bar,chart_name,parameter,line) -- Возвращает true если график с идентификатором chart_name "развернулся вниз". Т.е. значение графика в баре bar меньше значения в баре bar-1. -- параметры parameter,line необязательны. По умолчания равны close,0 соответственно 56. function turnUp(bar,chart_name,parameter,line) -- Возвращает true если график с идентификатором chart_name "развернулся вверх". Т.е. значение графика в баре bar больше значения в баре bar-1. -- параметры parameter,line необязательны. По умолчания равны close,0 соответственно 57. function getClass(security) -- возвращает класс для бумаги security 58. function datetimediff(t1,t2) -- возвращает разницу в секундах между t2 и t1 (оба стандартного типа datetime библиотеки qlua)