Михаил Е (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Депозит на демо, Нужно обновить
 
Добрый день.
Можно ли продлить действие логина U0210924 на 12 месяцев
и пополнить депозит на клиентский счет: SPBFUT000hx
на какую-то очень большую сумму?
Переносить заявку, Дата экспирации в LUA скриптах.
 
Кстати, даже по русски эти транзакции не работают, sendTransaction со следующим текстом
ставит заявку как будто переносить заявку не указано
Код
{"SECCODE":"SiU2","ACTION":"NEW_ORDER","QUANTITY":"1","Переносить заявку":"Да","TRANS_ID":"23091660","PRICE":"62000","ACCOUNT":"SPBFUT000kg","CLIENT_CODE":"23091660","OPERATION":"B","Дата экспирации":"20220829","CLASSCODE":"SPBFUT"}

там надо все поля вводить кириллицей, только тогда это будет работать, ужасно
Переносить заявку, Дата экспирации в LUA скриптах.
 
https://github.com/finsight/QUIKSharp/blob/master/src/QuikSharp/DataStructu­res/Transaction/Transacti...
Как я в обычном языке программирования C++/C# создам вам переменную на кириллице, да ещё с пробелом?
Никак не создам!

А вот с английскими кодами без пробелов всё работает.
Переносить заявку, Дата экспирации в LUA скриптах.
 
Цитата
Alexey Danin написал:
Само использование кириллицы в коде Lua скрипта не должно создавать каких-либо проблем, т.к. это всего лишь ключи полей Lua-таблицы. Можете переключить интерфейс терминала на английский, и тогда в коде Lua скрипта можно будет задавать данные поля транзакции на латинице.
Вы представляете, если это будет open-source библиотека на тысячу русскоязычных пользователей,
нужно всем сказать "ребята быстро переключайте терминал на английский язык, или у вас ничего работать не будет" ?
Это очень плохое решение.
Переносить заявку, Дата экспирации в LUA скриптах.
 
Цитата
Alexey Danin написал:
Здравствуйте.Существует два формата файлов импорта транзакций: фиксированный и универсальный.В справке QUIK Раздел 6. Совместная работа с другими приложениями/Импорт транзакций/ Фиксированный формат файла импорта транзакций, описан формат и примеры, которые Вы можете использовать при подаче транзакций.Поля, которые не описаны, можно получить в универсальном формате. Например, поместить транзакцию в карман транзакций, сохранить ее в tri файл и полученный результат использовать в своем скрипте.В Вашем случае необходимо использовать универсальный формат, выше Вы привели пример транзакции в таком формате.Если мы поняли Вас не правильно, просьба сообщить.
Спасибо, теперь я понял вас.
Мне очень хотелось бы, чтобы для описания данных элементов выставления заявки
использовались поля из фиксированного формата импорта транзакций.
Либо какие-то существующие поля, либо завести новые поля, дополнительно.

Чтобы эту информацию можно было легко передавать в коде (например .lua скриптов)
Переносить заявку, Дата экспирации в LUA скриптах.
 
В .tri-файл эта транзакция сохраняется таким образом
Код
TRANS_ID=1;CLASSCODE=SPBFUT;ACTION=Ввод заявки;Торговый счет=SPBFUT000kg;К/П=Покупка;Тип=Лимитированная;Класс=SPBFUT;Инструмент=SiU2;Цена=61000;
Количество=1;Условие исполнения=Поставить в очередь;Комментарий=;Переносить заявку=Да;Дата экспирации=20221223;
Нужные написаны кириллицей! То есть в квике на другом языке, эти параметры будут не "Переносить заявку"
и "Дата экспирации", а называться как-то по-другому.

Хотелось бы, чтобы можно было задавать их либо через уже имеющиеся поля в универсальном формате файла импорта транзакций,
либо для них завели какие-то новые поля в универсальном формате файла импорта транзакций.
Переносить заявку, Дата экспирации в LUA скриптах.
 
Цитата
Daniil Pozdnyakov написал:
Добрый день,

Могли бы Вы более подробно описать пожелание, ведь при формировании заявки Вы можете в поле "EXPIRY_DATE" указать вариант "GTC", который будет действовать до отмены.

Касательно латиницы и кириллицы. Также могли бы уточнить, Вам не нравится, что, используя универсальный формат файла импорта транзакций, нужно использовать и кириллицу, и латиницу ?
Добрый день.
Я имел ввиду возмость для лимитных заявок на срочном рынке МБ:

Я не знаю как называется эта галочка "Переносить заявку"
и дата, до которой надо держать заявку активной.

Но в .tri-файле или в описании транзакции я никак не могу это указать!
не работает MOVE_ORDERS для класса "FUTSPREAD"., не передвигаются заявки спреда между фьючерсами
 
Цитата
Юрий Балашов написал:
А почему?!
Планируется ли введение этой операции в следующих версиях, если нет, то возможно ли это зарегистрировать как пожелание?
Документация p2gate_ru.pdf говорит что для связок move_orders не поддерживается.
Видимо биржа пока не подумала поддерживать перевыставление заявок для FUTSPREAD'ов
Переносить заявку, Дата экспирации в LUA скриптах.
 
Я поддержу, что хотелось бы какой-то простой,
задокументированный параметр в транзакции,
чтобы отправлять GTC заявку.

Лучше вообще не заниматься вычислением корректной даты в будущем (не выходные, не праздники, а торговый день),
а например отправить
Цитата
["GTC"] = "1",
и QUIK сам бы сделал отступ скажем на 6 месяцев или около того.

А отправлять названия параметр в кириллице,
а в английском квике - в латинице,
это выглядит "костыльно"
Имена фьючерсов в квике, от чего это зависит?
 
У одних брокеров в квике фьючерсы называются по буквенным кодам,
у других есть месяц.год экспирации.
Вариант отображения зависит от сервера брокера,
или я могу поменять в настройках квика?
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
Egor Zaytsev написал:
Цитата
Михаил Е написал:
 
Цитата
Egor Zaytsev  написал:
 
Цитата
 Михаил Е   написал:
Здравствуйте.
Я почему-то не могу перенести квик с одного компьютера на другой копированием папки,
при открытии info.exe сразу падает приложение. В версии 8.6 присылал дампы, так и не поправили.

С чистой установки квик работает, я попробовал загрузить настройки из wnd файла
но перенеслись далеко не все настройки.

Как можно ещё ПОЛНОСТЬЮ перенести настройки из одного квика в другой?
  Добрый день.

Если присылали файлы дампов, то мы должны были сообщить CQ проблемы. Сообщите номер, мы проверим.
 CQ02788718
Добрый день.
К сожалению, по CQ02788718 разобраться не удалось.
Если проблема повторяется, то пришлите архив рабочего места повторно + дмп файл, если он есть.
Вам присылался архив с рабочим местом QUIK.
В принципе можете смотреть CQ02803881, там тамп с версии квика 8.8.1.5
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
Egor Zaytsev написал:
Цитата
Михаил Е написал:
Здравствуйте.
Я почему-то не могу перенести квик с одного компьютера на другой копированием папки,
при открытии info.exe сразу падает приложение. В версии 8.6 присылал дампы, так и не поправили.

С чистой установки квик работает, я попробовал загрузить настройки из wnd файла
но перенеслись далеко не все настройки.

Как можно ещё ПОЛНОСТЬЮ перенести настройки из одного квика в другой?
Добрый день.

Если присылали файлы дампов, то мы должны были сообщить CQ проблемы. Сообщите номер, мы проверим.
CQ02788718
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
Egor Zaytsev написал:
Цитата
Михаил Е написал:
Здравствуйте.
Я почему-то не могу перенести квик с одного компьютера на другой копированием папки,
при открытии info.exe сразу падает приложение. В версии 8.6 присылал дампы, так и не поправили.

С чистой установки квик работает, я попробовал загрузить настройки из wnd файла
но перенеслись далеко не все настройки.

Как можно ещё ПОЛНОСТЬЮ перенести настройки из одного квика в другой?
Добрый день.

Если присылали файлы дампов, то мы должны были сообщить CQ проблемы. Сообщите номер, мы проверим.
CQ02803881
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Здравствуйте.
Я почему-то не могу перенести квик с одного компьютера на другой копированием папки,
при открытии info.exe сразу падает приложение. В версии 8.6 присылал дампы, так и не поправили.

С чистой установки квик работает, я попробовал загрузить настройки из wnd файла
но перенеслись далеко не все настройки.

Как можно ещё ПОЛНОСТЬЮ перенести настройки из одного квика в другой?
Ограничение 50 транзакций в секунду
 
На QUIK 8.6.0.97 данный код работает без превышения транзакций
уже несколько дней
Ограничение 50 транзакций в секунду
 
Кажется, подсчет транзакций можно сделать следующим образом
- запоминаем транзакцию когда её отправляем
- когда получили ответ от сервера, начинаем считать 1 секунду
- можно поставить лимит времени, когда мы сами забудем транзакцию
например, если соединение разорвалось и сервер не ответил
Код
--
-- Подсчёт количества событий, произошедших за последние несколько секунд.
-- При регистрации очередного события в массив событий добавляется новый элемент с указанием текущего момента времени.
-- При подсчёте числа событий учитываются только те события, которые произошли не более чем указанное количество
-- секунд назад, а остальные события удаляются из массива.
--

local EventsCounter = {}

local function systime()
    local d = os.sysdate()
    local mcs = d.mcs or 0
    d.ms = nil
    d.mcs = nil
    return os.time(d) + mcs * 0.000001
end

--- Конструктор.
-- @param self объект
-- @param interval количество секунд, на протяжении которых отслеживаются события
-- @param bump максимальное количество секунд, на протяжении которого событие занимает очередь без регистрации
local function new(self, interval, bump)
    local object = {
        interval = interval,
      bump = bump,
        events = {},
    }
    setmetatable(object, self)
    self.__index = self
    return object
end

EventsCounter.new = new

--- Зарегистрировать событие.
-- @param self объект
local function registerEvent(self, trans_id)
    self.events[trans_id] = systime()
end

EventsCounter.registerEvent = registerEvent

--- Запомнить событие до его регистрации
-- @param self объект
local function preRegisterEvent(self, trans_id)
    self.events[trans_id] = systime() + self.bump
end

EventsCounter.preRegisterEvent = preRegisterEvent

--- Узнать, сколько событий произошло за последние несколько секунд.
-- @param self объект
-- @return количество событий, произошедших за последние несколько секунд
local function getCount(self)
    local now = systime()
    local count = 0
    local remove = {}
    for id, time in pairs(self.events) do
        if now - time <= self.interval then
            count = count + 1
        else
            remove[id] = true
        end
    end
    for id, _ in pairs(remove) do
        self.events[id] = nil
    end
    return count
end

EventsCounter.getCount = getCount


return EventsCounter

Отправка транзакции
Код
local EventsCounter = require("EventsCounter")

local eventsCounter = EventsCounter:new(1.0, 30.0)

function myTransactionSend(transaction)
-- Перед отправкой транзакции проверяем количество событий и притормаживаем, если надо
  while eventsCounter:getCount() >= 50 do
    sleep(10)
  end

-- Ваш код, который отсылает заявку
  sendTransaction()

  eventsCounter:preRegisterEvent(tonumber(transaction.TRANS_ID))
end

Получение ответа на транзакцию:
Код
-- ответ на отправку транзакции
function OnTransReply(trans_reply)
  eventsCounter:registerEvent(transReply.trans_id)
end
Брокер Открытие. Не работает MOVE_ORDERS., Ошибка: "Указанная транзакция по указанному классу не найдена: "SPBOPT"."
 
Цитата
Egor Zaytsev написал:
Добрый день.

Возможность использовать транзакции вида MOVE_ORDERS действительно была временно отключена по техническим причинам.

К сожалению, на момент Вашего обращения не можем сообщить когда именно доступ к данным транзакциям будет восстановлен. Как только это произойдет - Ваш брокер будет соответствующим образом извещён, и, вероятно, своевременно сообщит об этом Вам при соответствующем запросе с Вашей стороны.
Спустя несколько месяцев, что-нибудь прояснилось?
Будет ли доступна транзакция MOVE_ORDERS хотя бы в новом 8м квике?
Ограничение 50 транзакций в секунду
 
Цитата
Михаил Е написал:
Цитата
swerg написал:
Вполне может еще сетевой буфер влиять: несколько транзакций по факту накапливаются на вашей стороне в один сетевой пакет, после чего весь макет одновременно уезжает серверу, где они все сразу обрабатывает
Это можно объяснить как меньшее кол-во заявок в секунду по вашим замерам, так и одновременность их обработки.

Попробуйте связаться с брокером и уточнить у него по чем для вас встанет для вас увеличение допустимого количества транзакций в секунду. Вдруг это будет обозримая цифра.
Ну либо придётся менять алгоритм, избавляюсь от простой идеи одновременного снятия буквально всех заявок. Наверняка ведь вашу торговую идею можно реализовать иначе, красивее и без внезапного снятия буквально всех выставленных заявок.
:)
Сначала там вообще была оплата за каждую транзакцию выше 20 в секунду,
я подумал это какая-то дыра, даже если снимать все заявки в квике, когда заявок несколько десятков.
Я предложил брокеру например платить фикс сумму в месяц, на что они просто сделали до 50 транзакций в секунду,
дальше будет ошибка.
Дыра - в смысле практически неконтролируемо получаю доп комиссию от брокера,
и я не понимал как уследить, где было больше 20 тр. в секунду...
Ограничение 50 транзакций в секунду
 
Цитата
swerg написал:
Вполне может еще сетевой буфер влиять: несколько транзакций по факту накапливаются на вашей стороне в один сетевой пакет, после чего весь макет одновременно уезжает серверу, где они все сразу обрабатывает
Это можно объяснить как меньшее кол-во заявок в секунду по вашим замерам, так и одновременность их обработки.

Попробуйте связаться с брокером и уточнить у него по чем для вас встанет для вас увеличение допустимого количества транзакций в секунду. Вдруг это будет обозримая цифра.
Ну либо придётся менять алгоритм, избавляюсь от простой идеи одновременного снятия буквально всех заявок. Наверняка ведь вашу торговую идею можно реализовать иначе, красивее и без внезапного снятия буквально всех выставленных заявок.
:)
Сначала там вообще была оплата за каждую транзакцию выше 20 в секунду,
я подумал это какая-то дыра, даже если снимать все заявки в квике, когда заявок несколько десятков.
Я предложил брокеру например платить фикс сумму в месяц, на что они просто сделали до 50 транзакций в секунду,
дальше будет ошибка.
Ограничение 50 транзакций в секунду
 
_sk_, код в целом работает, но иногда сбоит.
Причем если смотреть по таблице транзакций (время и микросекунды),
то иногда не вижу чтобы в 1 секунду были ровно 50 транзакций (бывало 23),
а ошибка есть.
Или что странно там по 5-10 транзакций пишутся с одинаковой секундой и микросекундой (1/1000000),
но это вообще не реально выглядит, по логам скрипта время различается,
хотя бы на несколько миллисекунд.

Возможно Sergey Gorokhov - сможете объяснить как хотят транзакции между квиком и сервером
и как замеряется этот интервал - 50 транзакций в секунду?
Ограничение 50 транзакций в секунду
 
_sk_, спасибо большое за ваш пример!
для себя опытным путём определил, что
Код
while eventsCounter:getCount() > 45 do
    sleep(10)
end
пролазит в ограничение 50 транзакций от брокера,
не вызывая ошибок сервера квика.
Отсутствует опционный аналитик в QUIK
 
Вероятно ваш брокер не подключил этот сервис
Ограничение 50 транзакций в секунду
 
Цитата
_sk_ написал:
Заведите себе объект, который вычисляет количество отправленных заявок в последнюю секунду (реализация через очередь). Если количество заявок больше, скажем, 45, не отправляйте новые. Понятно, что ограничение неприятное и неудобное, но спамить сервер тоже не правильно.
Извините, можете привести пример, как написать это эффективно?

Например достался код коннектора у которого, повезло,
всего одна точка sendTransaction:
Код
-- отправка траназакции квику
function router:processTransaction(transaction, tJson)
  trace("info", "NEW TRANSACTION: " .. tJson)
  local ok = sendTransaction(transaction)
  if ok ~= "" then
     -- код, чтобы обработать ошибку
  end  
end
Как сделать, чтобы проходило не более 50ти в секунду,
но при этом не тупо делать sleep(1000 / 50) ?
Проблемы с разрешением 1920х1080., Неудобный интерфейс и шрифт.
 
Здравствуйте.
Подниму эту проблему. Вообще сам по себе 7й квик работает нормально,
на Windows 10 с разрешением экрана 1920x1080 и масштабированием в 150%.
Но если подключить чужую библиотеку StockSharp.Quik.lua, то окно терминала сразу сворачивается
а элементы сильно мельчают в размерах.
Почему такое может быть из-за Lua скрипта, в нём особо ничего нет, он фактически
обращается к dll'ке
Получение данных без lua
 
Цитата
SDL написал:
Цитата
Михаил Е написал:

Но как же они могут получать рыночные данные и данные "стаканов" без  какого-либо кода в lua скрипте ?
Рекомендую ознакомиться с библиотекой, где реализован подобный подход:
https://github.com/elelel/qluacpp

Да, чтобы работали колбэки, совсем не обязательно определять эти функции в lua-скрипте. И даже использовать Trans2Quik. Функции колбэков можно регистрировать в глобальном окружении (_G) луа-машины из C-кода своей подключенной через 'require ...' DLL, тогда Quik обнаружит их и сможет вызывать.
Спасибо.
Правда этот код изобилует макросами, я так понимаю структуры там после обработки макросов
преобразуются в функции-callback'и
Получение данных без lua
 
Цитата
Egor Zaytsev написал:
Цитата
Михаил Е написал:
Здравствуйте.
На сколько я знаю, общая схема работы lua "коннекторов" к квиву,
что они переопределяют почти все функции обратного вызова (callback'и onXXX)
по их действию собирают данные в объекты-таблицы
и отправляют их своей программе (через разные библиотеки например socket core.dll)

Но в одном проекте
 https://github.com/StockSharp/StockSharp/blob/master/References/StockSharp.Quik.lua  
я увидел что в lua нет особо никакого кода,
они просто подключают свою dll-ку через require и всё.

Да, для транзакций у них внутри наверняка работает Trans2Quik.
Но как же они могут получать рыночные данные и данные "стаканов" без  какого-либо кода в lua скрипте ?
Другими словами, какие функции нужно определить в DLL, написанной на C# или C++,
чтобы получать данные из квика?
Добрый день.
При помощи Trans2Quik можете подписать на состояние заявок и сделок в QUIK.
Функции описаны в руководстве пользователя QUIK: Раздел 6. Совместная работа с другими приложениями/Раздел 6. Совместная работа с другими приложениями/Функции для работы с транзакциями через API
Транзакции это не главное.
Мне не понятно, каким образом можно сделать dll библиотеку на C# или C++,
чтобы она принимала к себе вызовы функций OnXXX из вашего Quik Lua.
При этом не прописывая этот код в .lua файле.
Получение данных без lua
 
Здравствуйте.
На сколько я знаю, общая схема работы lua "коннекторов" к квиву,
что они переопределяют почти все функции обратного вызова (callback'и onXXX)
по их действию собирают данные в объекты-таблицы
и отправляют их своей программе (через разные библиотеки например socket core.dll)

Но в одном проекте
https://github.com/StockSharp/StockSharp/blob/master/References/StockSharp.Quik.lua
я увидел что в lua нет особо никакого кода,
они просто подключают свою dll-ку через require и всё.

Да, для транзакций у них внутри наверняка работает Trans2Quik.
Но как же они могут получать рыночные данные и данные "стаканов" без какого-либо кода в lua скрипте?
Другими словами, какие функции нужно определить в DLL, написанной на C# или C++,
чтобы получать данные из квика?
Таблица обезличенных сделок. Удобный фильтр по инструментам
 
Цитата
Andrey Bezrukov написал:
Иными словами, Вы бы хотели, чтобы выбор инструментов для таблицы "Обезличенные сделки" был реализован аналогично тому, как этот функционал выполнен для таблицы текущих торгов, правильно?




Да, чтобы в фильтре инструментов была такая же иерархия как в таблице текущих торгов.
Например для опционов это разбиение по фьючерсному контракту, потом разбиение по датам экспирации
и наконец сами инструменты.
Можно выбрать что-нибудь в этой иерархии и сразу добавить все инструменты,
которые к "этому узлу" относятся.
Таблица обезличенных сделок. Удобный фильтр по инструментам
 
Здравствуйте.
Просьба к таблице обезличенных сделок прикрутить
такой фильтр по инструментам, который есть в котировках и таблице текущих торгов:


В таком списке отфильтровать одну серию опционов - очень неудобно,
да и нету каких-то шаблонов текста, например "BR*BG9", "BR*BS9":
Замена срочных инструментов, замена срочных инструментов на следующий день
 
Цитата
Imersio Arrigo написал:
Цитата
Михаил Е написал:
В день экспирации он ещё торгуется, на срочном рынке МБ до 18:45 этого дня,
Можно делать склейку в следующий день.
Т.е. 20 был экспир, мы от склейки отказались. А 21, в ручном режиме делаем замену и склейку.
Тогда получается так как вы хотите, если я правильно понимаю вопрос.
Проблема в основном в том, что в один день заканчиваются сотни контрактов (опционов и фьючерсов),
там неудобно в этом списке искать что тебе нужно оставить, а что можно заменить.

Что вы имеете ввиду под включенной склейкой?
Она позволит смотреть график и торговать текущим контрактом, пока он не закончился?
Замена срочных инструментов, замена срочных инструментов на следующий день
 
Цитата
Alexey Ivannikov написал:
Цитата
Михаил Е написал:
Здравствуйте.
Было бы удобно, если в настройках программы, замены инструментов
можно было указать не замену инструментов за 0 дней до погашения (т.е. сегодня или вчера, позавчера...в прошлом),
а попросить заменять только истекшие контракты.

То есть например 21 сентября он бы проверял на замену инструменты с исполнением (или погашением)
20 сентября, 19 сентября или ещё раньше. А 20 сентября - предлагал бы заменить инструменты с погашением
не позднее 19 сентября.
Добрый день.
Можно просто соглашаться на замену инструмента в день экспирации.
В день экспирации он ещё торгуется, на срочном рынке МБ до 18:45 этого дня,
не удобно заменять инструмент если он ещё нужен или по нему есть позиции.
Замена срочных инструментов, замена срочных инструментов на следующий день
 
Здравствуйте.
Было бы удобно, если в настройках программы, замены инструментов
можно было указать не замену инструментов за 0 дней до погашения (т.е. сегодня или вчера, позавчера...в прошлом),
а попросить заменять только истекшие контракты.

То есть например 21 сентября он бы проверял на замену инструменты с исполнением (или погашением)
20 сентября, 19 сентября или ещё раньше. А 20 сентября - предлагал бы заменить инструменты с погашением
не позднее 19 сентября.
Trans2Quik + Lua - нормально ли?
 
Цитата
Sergey Gorokhov написал:
нужен конкретный пример транзакции (дата, время, класс, инструмент), ваш UID, и кто Ваш брокер.
Далее запросим логи у брокера и по логам разберемся.
это типичная транзакция которых по инструменту были десятки если не сотни за день.
По синтаксису она корректна. На сервер брокера она выставилась,
проблема что в Lua её оповещение не прошло... Луа так понимаю локальный язык, с брокером никак не связан.

Цитата
Sergey Gorokhov написал:
Сообщите дату этих транзакций и хотя-бы примерное время, Ваш UID и кто брокер.
Пока этого будет достаточно.
В личные сообщения могу прислать...
Trans2Quik + Lua - нормально ли?
 
Цитата
Sergey Gorokhov написал:
Пока же просто проверьте актуальные ли у Вас версии (терминал QUIK 7.19 и qlua.dll версии 2.7.0.3)
Да, версии совпадают

Цитата
Sergey Gorokhov написал:
Если есть проблема с Lua мы готовы разбираться, но нам нужен конкретный пример.
схематически я описал что произошло, а по поводу примера
я не представляю данные какой подробности тут нужны.
Проблема была на версии то ли 7.16 то ли 7.18 в квике,
про новую версию не знаю, пока ещё не видел.
Trans2Quik + Lua - нормально ли?
 
Цитата
Sergey Gorokhov написал:
ЦитатаМихаил Ершов написал:
Сталкиваюсь с проблемой иногда что в Lua не приходят транзакции с номером заявки,
Если есть проблема следует разобраться с причиной проблемы, а потом уже делать выводы.
Приведите пример такой такой транзакции (скриншот или лог), сообщите Ваш UID и кто брокер.
Это редкая ситуация, происходит раз другой среди тысяч ордеров.
Последний раз было как-то так, что отсылаются две транзакции на лимитные ордера
по двум разным инструментам. По первому инструменту получили нормальный отклик (transaction reply) с номером заявки,
сохранили номер у себя и всё хорошо. По второму инструменту отклик на транзакцию не пришел!

Цитата
Sergey Gorokhov написал:
Зачем? Всё что есть в trans2quik уже есть в Lua
Есть, но если Lua это не очень надежный инструмент, разработчик говорит навертели много защиты от его ошибок
и все равно такие косяки. Я думаю вещи на C++ будут работать четко, не как на интерпретируемых скриптах.
Trans2Quik + Lua - нормально ли?
 
Здравствуйте, вижу что очень популярно использовать Lua скрипт в квике
для экспорта данных в свои приложения, написанные на некотором языке - C++, C#, Python ...
Такой вопрос, можно ли технически в паре с Lua скриптом использовать trans2quik для заявок из программы,
а Lua - для поступления торговых данных?

Сталкиваюсь с проблемой иногда что в Lua не приходят транзакции с номером заявки,
хотя они выставляются, они теряются из виду у робота и т.д. Посоветовали trans2quik как "прямой API" к квику,
типа такой проблемы не будет, поэтому думаю попробовать его
если это нормальная и не устаревшая технология?
Улучшение функционала алгоритмической заявки
 
Цитата
Sergei Kunitckii написал:
Михаил, по поводу "другого "тикера""  просьба дать пояснения. Сейчас берется базовый актив для расчета, Вы хотите, чтобы можо было указать совсем другой инструмент, произвольный?
Это был бы самый универсальный и самый лучший вариант.
Я привел пример, например если не доверяем фьючерсу SBRF-3.18, то можно брать цену с акции "Сбербанк ао" с фондового рынка,
или например вместо MGNT-3.18 брать цену акций "Магнит". Например для нефти...даже какую-то индикативную котировку вместо фьючерса, скажем если брокер транслирует Brent Oil Index, либо RTSI (индикативный индекс РТС).
В более простом варианте можно сделать только возможно выбирать среди доступных фьючерсов у актива
(например для опционов по доллар-рублю можно выбирать между Si-3.18, Si-6.18, Si-9.18, ... как источником цены БА. С поправкой своими коэффициентами)
Улучшение функционала алгоритмической заявки
 
Цитата
Sergei Kunitckii написал:
Уже сейчас есть возможность заменять заявку и это происходит через снятие заявки, это особенность реализации.
Сергей, возможно это особенность брокерской сборки!
Я вижу что "Изменить алго-заявку Ctrl+A" не доступно,
активен только вариант "Снять алго-заявку Ctrl+D"
Улучшение функционала алгоритмической заявки
 
Цитата
Sergei Kunitckii написал:
2. Про замену не совсем понятно ,что Вы хотите. Уже сейчас есть возможность заменять заявку и это происходит через снятие заявки, это особенность реализации.
Это небольшое удобство, сейчас сначала нужно щёлкнуть Ctrl+D или пункт меню отменить заявку,
потом нужно ещё раз щёлкнуть по отменённой заявке в таблице алго-заявок,
чтобы она открылась с теми же параметрами, их можно было поменять и выставить заново.

Почему бы не сделать активной замену заявки, чтобы и заявку снимало,
и сразу же открывало окно с её параметрами (можно выставить заново, можно нажать отмену и не выставлять).
Цитата
Sergei Kunitckii написал:
3. Мы зарегистрировали пожелание по поводу применения коэффициентов к цене базового актива при расчете цены алгозаявки.
Да, именно что получать цену с другого "тикера", символа как базового актива. И поправку коэффициентами.
Если это сложно реализовать, тогда ладно...
Улучшение функционала алгоритмической заявки
 
Здравствуйте.

Есть пожелания по улучшению работы с алгоритмической заявкой "Волатильность"
для опционов
1) Очень неудобно что все выставленные заявки пропадают после 23:59
на следующий торговый день. Хотя в принципе они могут быть актуальны для меня.
Можно ли сделать
- либо, чтобы данные заявки переносились на следующий день,
соответственно например на FORTS они снимают связанные ордера перед закрытием в 23:50
и продолжают работать в следующий торговый день с 10:00 плюс несколько секунд.
Собственно как-то так работает заявка со сроком действия (GTD)
- либо сделать возможность сохранять такие заявки в карман транзакций
и потом доставать их в следующий день. Соответственно в кармане транзакций
желательна возможность редактировать все её параметры.
При доставании одной или нескольких таких заявок,
наверно, стоит показывать подтверждающие диалоги на каждую (то же самое, когда создаешь заявку и видишь
"Вы действительно хотите выполнить транзакцию "Ввод алго-заявки", и т.д.")
2) Хотелось бы, чтобы алго-заявку волатильность можно было заменять.
То есть в таблице алго-заявок выбираешь Изменить алго заявку (Ctrl+A),
тогда текущая заявка и ордера - отменяется,
всплывает окно с параметрами только что снятой алго-заявки.
Их можно поменять и поставить новую заявку.
3) Последний пункт чисто пожелание,
в алгоритме который переводит волатильность в цену ордера есть параметр
S – текущая цена базового актива (для опционов FORTS используется параметр «Расчетная
цена»);

Неплохо, если можно будет гибко задавать S как a*S'+b,
где a, b - коэффициенты; S' - текущая цена другого инструмента.
Например, если мы рассматриваем опцион по фьючерсу сбербанка (SBRF-3.18),
и хотим использовать котировку "Сбербанк ао" с фондового рынка как более точную и динамично меняющуюся, то есть
S = 100,5000 * Котировка (МБ ФР:Сбербанк ао) + 0,0000.
(100,50 потому что цена фьючерса равна цене 100 акций и фьючерс несколько дороже из-за безрисковой ставки)
QUIK виснет из-за Таблица изменений параметров
 
Ещё попробовал совет отсюда - [ Закрыто ] FAQ: Возможные проблемы с производительностью и рекомендации по их устранению
когда ставишь «Сохранение данных» - «Только данные, отражающие текущее состояние».
Вышло, что данная таблица вообще не получает новых изменений, вроде бы.
QUIK виснет из-за Таблица изменений параметров
 
Добрый день,
пытаюсь с помощью данных таблиц отслеживать бид/аск,
например строю таблицу по изменению "Лучшей цены спроса"
на 20-30 неликвидных инструментах,
потом строю ещё одно таблицу по изменению  "Лучшей цены предложения"
на этих же инструментах.
Записей там не много, думаю за сессию 1-2-3 тысячи строк выходит,
но где-то через полчаса работы терминал зависает,
только его разворачиваешь - он что-то грузит, отвисает и сразу же снова что-то грузит, отвисает
и так зацикливается. Кнопка крестика из-за этого не работает. Windows предлагает только убивать зависшее приложение.
А при повторном открытии эти два окна уже пропадают...
Страницы: 1
Наверх