Добрый день, Последнее время получаю вот такие фокусы. Вчера на вечерней сессии совершены сделки. А сегодня я вижу, что таких цен вчера не было, а сделки по таким ценам есть. т е цены были 10730, а мне впапродали по 10830. брокер меня разводит или биржа химичит или КВИК портачит? Ваше мнение?
еще добавить синтезатор речи с регулировкой интенсивности и голосовое управление. Например, ты ему говоришь: QUIK -деньги!!! А он тебе в ответ: Размечтался!!!
пардон alt/L закрепить , alt+B - убрать. Но блокировка выскакивает нажимаешь alt+B заголовок не появляется нажимаешь alt+L - происходит блокировка с запросом пароля нажимаешь alt+B - появляется заголовок окна. примерно так
Добрый день, Поставил для тестирования версию 7.1.0.381 (юниор) Вопрос 1: При открытии окна меню сначала мелькает окно цветное, потом становится черно-белое (настройки цветов в дистрибутиве) ---------------------- Вот это мелькание так и будет? или это баг, который уберут? ---------------------- При этом заметил следующий прикол Если окно терминала на первом мониторе, то мелькает пустое белое окно, а если на втором то мелькает окно, в котором виден рабочий стол. ---------------------------------
Вячеслав написал: Да, создаются 2 системных потока, да, в каждом из них выполняется lua_pcall
Всегда, при разговоре на эту тему - разделяйте понятия: системный поток - это НЕ LUA-поток, а поток ОС LUA-поток - это не поток ОС. LUA-поток - сродни корутинам.
В самой LUA - никакие системные потоки - не создаются
почему LUA-поток - сродни корутинам. это и есть корутины других луа потоков я не знаю а Вы?
имеется ввиду, что функции из lapi.c вызывают внутренние функции в библиотеке Lua, и их же вызывает luaV_execute напрямую. Например, lua_settable вызывает luaV_settable , которую напрямую (через макрос) вызывает luaV_execute.
Причем здесь вызов функций? Синхронизировать надо обращение к данным, а не к коду функций. Вы что-то путаете.
Тиковый график строится по таблице обезличенных сделок самим терминалом а не сервером. Поэтому заказав тиковый график Вы тем самым заказываете таблицу обезличенных сделок Так как это одно и тоже.
Данное утверждение Sergey Gorokhov оказалось не соответствует реальности. Открытие источников тиков не привело к работе OnAllTrade, пока не отрыл таблицу ТВС. Прошу уточнить, как заставить работать OnAllTrade из QLUA на тиках без открытия ТВС Спасибо
Уточняю Торговая сессия на фьючерсах сегодня начинается вечером вчера У меня всегда, сделки, совершенные вчера после 19-00, отображаются сегодня. Т е вчера в 23-50 закончили торговать комп выключили сегодня в 9-55 -комп включили запустили квик и торгуем Сделки от вчера вижу и сейчас.
Добрый день, на представленной картинке стрелки вверх и вниз - это отображение сделок вечером вчера. Вчера они были на графике цены , а сегодня вне его. Это не мой скрипт, а отображение терминалом совершенных сделок. Кто может объяснить? Спасибо
приведен код функции вставьте ее в скрипт и вызовите с указанием кода инструмента класса (полагаю вы знаете как это сделать, я то же) У меня все работает, лишь при закрытии надо убивать процесс
это полный код версия 6.17.3.6 Я помню раньше нельзя было открывать источники в потоке колбеков, Приходилось их лепить в майн Если эта проблема осталась, то я опять наступил на теже грабли в сарае.
Ярослав С написал: Столкнулся с проблемой с хранением данных. Не могу понять где лучше хранить обработанные роботом данные: в памяти компа, в файле .txt, .bin или еще где. Для моего визуального просмотра мне эти данные не нужны, поэтому думаю их всунуть в файл в .bin файл так как они есть, то есть в двоичном коде. Плюс скорость записи в файл будет выше (поправьте, пжлста, если я не прав). Но я столкнулся с еще проблемой - я не нашел описания записи в файл и чтения чисел(или массивов) из файл в виде числа, а не в виде строки. (Помню, в Delphi запись массивов в файл делалась в касание)
У меня робот будет обрабатывать все ликвидные эмитенты по ММВБ и FORTS, определяя их ключевые точки (условные точки разворота, поддержки и сопротивления). Итого получится около 50 эмитентов. Каждый эмитент будет иметь до 30 ключевых точек с 3мя стринговыми переменными и с 4мя вещественными переменными. Обработка всех эмитентов займет предположительно до 1 часа. Процессор компа - Intel Core i5 4200H CPU 2,8 GHz ОЗУ - 8 ГБ Места на жестком диске - дохера
Я когда-то выкладывал в свободном доступе библиотеку для луа записи в произвольном формате. Преимущество - скорость Но вообще-то хранить в файлах нет большого смысла, так как все есть либо в квике либо в отчетах ----------------------------------- Как говорил классик " Вопрос, а Не женится ли мне, уже содержит ответ" Зачем Вам это надо?
У вас есть обязательство купить в будущем и под эти обязательства биржа блокирует обеспечение Теперь Вы хотите еще взять обязательства - продать в будущем и под эти обязательства биржа блокирует средства Т е В результате у Вас три обязательства 1 - купить и 2 -продать. Когда у Вас появятся встречные обязательства 2, то будет сделано сальдо и останется одно. Но до сальдо Вы должны обеспечить деньги под все ваши обязательства. Если кто-то даст в долг то тогда возьмете 2 а так пока один но за свои. Поэтому нужны свои деньги еще на два и того надо на три.
Полагаю, что такие правила у биржи . Т е если у Вас куплен контракт то для его обеспечения биржа берет денежку А если Вы хотите продать контракт, то надо еще иметь денежку.
Добрый день, Обнаружил следующую проблему Вот такая функция: DS={}; function DS_6(cl,se) -- создание источников тиков local int=INTERVAL_TICK; local x=cl..se..tostring(int); if DS[x]==nil then local ds,er=CreateDataSource(cl,se,int);ds:SetEmptyCallback(); if err then Log(err,"err_ds"); else DS[x]=ds; end end end --------------------- Проблема возникает если запускаем квик автономно (сбрасываем окно запроса логин, например) Квик нормально загружается, но при закрытии его Окно квик закрывается , но процесс в памяти висит снять можно лишь убив процесс -------------------------- колбек onClose скрипта не вызывается. ------------------------ Если в функции убрать DS[x]=ds; то завершение нормальное. Могу предположить, что проблема в CreateDataSource(cl,se,int) и последующем сохранении ds таблицы, что не приводит к закрытию каких-то ожиданий в КВИКЕ. -------------------------- Так и ждет у моря погоды, а моря то и нет.
Относительно отдельного сервера. БКС предлагает услугу VIP сервера за 5 тысяч деревянных в месяц кроме стоимости никаких данных нет. Написано обращайтесь к регион представителям Пришел спросил - ничего не знают, попросил дать протестировать Уже месяц жду ответа ------------------------- Не так страшен черт, как его малюют Можно мерить в реале и учитывать в торговле. ---------------------- Просто было интересно узнать сколько точно и чего. узнал, интерес удовлетворил. Пилим дальше.
Фёдор Сухов написал: Так в том-то и дело если у брокера просто толстый, но некачественный канал от "своего" другана-братана-пацана, то и отсюда и накладка на его стороне. Ну а потом уже и клиенту всякие отбросы со стола.
Фёдор Сухов написал: забыл упомянуть про пинг, что это не показатель, совсем не показатель.
Ровный пинг, по крайней мере, показывает, что периодические задержки в поступлении информации с сервера не могут быть обусловлены проблемами на канале связи клиент-сервер, как чаще всего, утверждают сотрудники техподдержки брокера. Скорее, проблема в недостаточной инфраструктуре самого брокера.
Николай Камынин , а чем пинги снимаете?
Давайте разделим в две посуды мух и котлеты. и будем есть котлеты. Расскажу все по-порядку (немного лекбеза , кто знает не ругайтесь). 1) Изучаем каналы связи с помощью пинга. Пинг у меня реализован так - посылает короткий запрос по ICMP_ECHO. Перед посылкой фиксируем время с погрешностью 100 нс. При приеме ответа от сервера фиксируем время прихода ответа. Разность - время задержки. Если сравнить с системной командой ping, то у меня отличие в десятых долях, так как системный измеряет в мкс. Ответ на ICMP запрос отдает ядро ОС сервера и этот ответ фактически не зависит от работы КВИКА. Таким образом, минимальная задержка пакетов от сервера брокера до меня 17-24 ms, в зависимости от выбранного мною сервера. ------------------- 2) Канал сервер-брокер по определению хороший, так как БКС - это крупный брокер в россии, работает давно и сервер его либо на бирже либо рядом. Полагаю что там задержки не более 1-2 ms. 3) пинг, который встроен в терминал КВИК показывает задержки от 50 до 10 000 ms. Как объяснил г-н Михаил, это результат задержки ядром сервера КВИК ответа на пинг. Не возражаю, но из этого следует, что сервер задерживает и более важную информации т е информацию о сделках, что собственно подтверждает следующий эксперимент. ----------------------- 3) Далее я синхронизировал свой комп с сервером точного времени 1-го уровня. В результате получил на сегодня: вот такую нестабильность. Т е отставание моих часов составляет не более 40 ms от эталонных атомных.
Теперь я считаю, что это время биржи, так как синхронизация часов на бирже полагаю сделана еще точнее.
В принимаемых сделках мы имеем время сделки с микросекундами. ----------------------------- Таким образом, разница времени моего компа и времени в сделках есть величина задержки данных брокером. -------------------------- Клиентам брокера вообще-то без разницы, в каком месте тракта у брокера запор, но если задержки в 500- 1500 ms будут систематически ( а вчера информация по фьючерсам у меня задерживалась аж на 20 минут) , то полагаю, что надо ставить клизму в надлежащий канал такого брокера.
А зачем? ----------------------- Проблема не в каналах. Проблема в том, при скоростях в каналах 50-100 Мбит/c и задержке 3-15 мс мы получаем данные с серверов QUIK брокеров c задержкой от 200 до 2000 мс. --------------------------- Лет десять назад в штатах посадили группу брокеров за то, что они некоторым своим клиентам совершали сделки лучше чем другим, естественно за счет других. ------------------------------ Вот меня интересует вопрос: задержка данных в 10-1000 раз большая, чем задержка в канале, - это умысел или просто наплевательское отношение к клиентам? ----------------- Если первое - то это УК РФ, ---------------- если второе - то это нормальный бизнес в РФ
Дополню пожелание на модернизацию тейк-профита. Раньше я писал это пожелание, но очевидно потеряли. повторю однако. ----------------------- Желаю, чтобы в тэйке была возможность корректировать параметры тейка не снимаю заявку. ------------------------- проблема в том, что существующий тэйк написал очевидно не любитель проферанса. ------------------------ потому, что проценты надо брать не от цены, а от волны, а волны бывают разными и чем выше забирается тренд чем меньше волны. Т е надо в процессе слежения за трендом иметь возможность адаптировать тейк. Так как тейк у Вас на сервере, то зачем его постоянно снимать и ставить Это лишь засоряет таблицу стопов и увеличивает нагрузку на сервер. -------------------------- Еще хорошо бы иметь возможность получить текущие параметры активного тейка --------------------------- Если будет команда коррекции и возможность чтения параметров, то все будет гораздо проще и лучше ---------------------------- Спасибо
читал я фикс и плазу и спектру. это все другого уровня решения (типа надо к затратам дописать справа пару нулей ) и необходимо для HFT роботов. А я ваяю прогнозирующих роботов , а им то и не очень надо быстро бегать. ------------------------------- Вопрос то не в том что есть, а в том сколько точно граммов есть. ----------------------------------- ...За державу обидно
Старатель написал: Николай Камынин , проведите измерения задержек получения тиков на срочной секции. Вы будете "приятно" удивлены: сделки по срочной секции иногда запаздывают по сравнению с фондовой на 2 и более сек.
А вот тут не понятно:
Цитата
Николай Камынин написал: o:-00.0804192s - это отставание часов моего компьютера от часов сервера в мs ------------------------- Т е часы моего компьютера имеют ошибку не более 80 ms.
С каким сервером сравниваете? Если QUIK, то время сервера QUIK можно вообще не брать в расчёт. Если сервера времени, то у биржи может быть своё мнение, на то с каким сервером синхронизировать.
сегодня вообще прикол фьючерсы от бкс все еще идут с задержкой на 15 минут, а акции нормально. Это круто. Торгую фьючерсами, а смотрю в акции иначе полный п...
напоминает ракету из фанеры. Вопрос конструктору: Не уже думаете за неделю долетите до луны? Ответ Да что до луны, Луна - это начало, скоро на марс, а там и юпитер. Да мала ли что мы можем сделать ежели нас никто не остановит. Даже некогда как следует почитать труды Цандера и Циолковского или , не побоюсь этого слова, коллеги Королева.
и еще... Если Вы включите свое воображение, то можете себе представить, что можно сделать за эти секунды имея на руках всю информацию о уже совершенных на бирже сделках ----------------------------- Знал бы прикуп - жил бы в Сочи. Знал бы цену акций - жил бы в Лондоне.
Добрый день, продолжаю исследования скорости поступления информации от сервера КВИК к терминалу КВИК т е от брокера к клиентам. В данном случае брокер - БКС. Приведу лишь кратное описание и результаты для любознательных. Более подробные результаты исследований выложу позже на своем сайте. ----------------------- Описание эксперимента: Компьютер синхронизируется каждые 5 минут от сервера эталонного времени. параметры стабильности синхронизации следующие: -------------------------------- d:+00.0155878s - это задержка получения сигнала точного времени в мs o:-00.0804192s - это отставание часов моего компьютера от часов сервера в мs ------------------------- Т е часы моего компьютера имеют ошибку не более 80 ms. ------------------------------------------------------------------------------------------- Теперь подписываемся на тики Сбербанка и определяем разницу времени сделок с временем моего компьютера. Таким образом, эта разность покажет нам на сколько х.... o сервер брокера транслирует данные с биржи. --------------------------- Что же получили в осадке: ВНИАМНИЕ на ЭКРАН: ВПЕРВЫЕ в МИРЕ проведены измерения запаздывания данных с биржи через сервер QUIK на термина клиента . d -задержка зу-цена сделки q -количество v -объем 03/04/16 13:33:11 d=956, pe=107.36, q=155, v=166408 03/04/16 13:33:11 d=956, pe=107.36, q=84, v=90182.4 03/04/16 13:33:11 d=956, pe=107.36, q=140, v=150304 03/04/16 13:33:11 d=1458, pe=107.36, q=17, v=18251.2 03/04/16 13:33:11 d=1458, pe=107.36, q=121, v=129905.6 03/04/16 13:33:11 d=1452, pe=107.36, q=84, v=90182.4 03/04/16 13:33:11 d=1179, pe=107.35, q=10, v=10735 03/04/16 13:33:11 d=1154, pe=107.35, q=145, v=155657.5 03/04/16 13:33:11 d=1154, pe=107.35, q=35, v=37572.5 03/04/16 13:33:12 d=517, pe=107.35, q=149, v=159951.5 03/04/16 13:33:16 d=602, pe=107.35, q=364, v=390754 Приняв в качестве смещения результата величину 80+15=95 ms (это время отставания моих часов и запаздывание по каналу связи с сервером КВИК получаем: время задержки от 0.5 сек до 1.5 сек --------------------- "Удивительное -рядом, но оно запрещено.."
Digit Service написал: Уважаемый админ, зарегистрируйте мою просьбу и сообщите ФИО Генерального директора АРКА. Действующая форма заявки Тейк профит по исполнению заявки у вас содержит только поле активации заявки но совершенно не содержит поле ЦЕНА. Я не могу заставить брокера исполнить мой ордер так как Квик не дает мне возможности конкретно точно сформулировать мой ордер, а брокер может продать активировавшуюся заявку ПО ЛЮБОЙ ЦЕНЕ! Это нарушение закона и брокером, и Квиком. Если надоест это воровство клиентских средств на пустом месте окончательно, то обе организации в ближайшее время станут ответчиками в суде. Срочно сделайте нормальную форму заявки со всеми необходимыми входящими данными как по активации заявки так и по реализации заявки.
Судя по дискуссии, автор работал на форекс и хочет тоже самое на бирже. Но это увы, невозможно. Так как многие приходят на биржу после плодотворной торговли в кухнях форекса, то Попробую объяснить основы стопов на бирже и чем они принципиально отличаются от форекса. ---------------- принципиальная разница в том что форекс - это внебиржевая торговля, а проще сказать - это обменная лавка. В ней Вы всегда можете сказать клерку, если будет дешевле то купи мне по такой цене. Клерк в такой конторе сбегает к соседям и найдет, дешевле Вашей просьбы. купит у соседа и перепродаст вам. ----------------- На бирже в период сессии брокер не может сбегать к соседу. Это во-первых. ------------------ во-вторых, стоп-заявки - это заявки, которые выставляются в догонку рынку. Т е когда рынок прошел мимо типа поезд тронулся и Вы прибежали на перрон. Вопрос: Как думаете всегда Вы в этом случае сможете сесть в первый вагон? А во второй? А в какой сможете? Ответ простой -Хоть в какой-нибудь успеть. Вот так и стоп заявка. Брокер не может взять у Вас на исполнение стоп по заранее заданной цене. Вернее скзать взять может, но не факт что исполнит. А ему нужет этот гкморой? Нет Поэтому стоп заявка будет выставлена сервером в систему бирже, а уж исполнится или нет - это как поезд едет.
Я не понял контекст вашего оригинального сообщения. Есть просто термин мьютекс , есть std::mutex (или std::recursive_mutex - по сути реализованые через аналог критических секций на уровне Concurrency namespace'а в MS CRT), и есть WinAPI mutex , который может использоваться несколькими процессами сразу. В первом сообщении я сразу упомянул, что имею ввиду std::recursive_mutex или критические секции, а дальше уже оба варианта называл просто "мьютексом", чтобы не писать одно и то же по нескольку раз.
судя по ответу для Вас не имеет разницы мьютекс и критическая секция. Но основное их отличие - это быстродействие. у мьютексов малое, у критических секций -высокое (согласно Рихтеру) ----------------------------------------- мьютекс - это полноценный объект ядра, поэтому он и медленный его имеет смысл применять, если надо синхронизировать потоки различных процессов. в данном случае процесс один. Поэтому надобность в мьютексе не очевидна. вернее сказать избыточна. ------------------------------------------------------ Зачем из пушки стрелять по воробьям. Но это я так для дискуссии, типа если мьтексом обозвать все, то я применяю 5 мьютексов, которые в действительности 4 interlocked-функции и 1 event. ---------------------------- Поэтому применение мьютексов излишне в КВИКЕ.
Николай Камынин написал: меня интересует каким образом заказать данные в QLUA , чтобы работал колбек onAllTrade без открытия ТВС?
через CreateDataSource с параметром INTERVAL_TICK
опять не понял. Если я закажу CreateDataSource с параметром INTERVAL_TICK то сервер будет присылать график тиков т е цену объем и время, но это же не тоже самое, что Таблица обезличенных сделок. или он будет присылать таблицу?
Параметр Тип Описание trade_num NUMBER Номер сделки в торговой системе flags NUMBER Набор битовых флагов price NUMBER Цена qty NUMBER Количество бумаг в последней сделке в лотах value NUMBER Объем в денежных средствах accruedint NUMBER Накопленный купонный доход yield NUMBER Доходность settlecode STRING Код расчетов reporate NUMBER Ставка РЕПО (%) repovalue NUMBER Сумма РЕПО repo2value NUMBER Объем выкупа РЕПО repoterm NUMBER Срок РЕПО в днях sec_code STRING Код бумаги заявки class_code STRING Код класса datetime TABLE Дата и время ---------------------------------- Поясните плиз. Спасибо
Michael Bulychev написал: Добрый день. В чем-то действительно есть сходство со стандартным пингом. Разница только в уровне реализации. Я имею ввиду сетевую модель OSI. Еще раз повторю - приоритет у таких сообщений в протоколе минимальный. Поэтому большие задержки могут в случае если: достаточно интенсивный поток торговых данных на сервере и серверу есть что отправить клиенту кроме ответа на пинг; клиент недостаточно быстро выбирает данные по сети от сервера. Это может быть по причине плохой связи либо "тормозов" терминала; В общем ничего особенно страшного в больших числах нет, при условии что терминал в это время не испытывает проблем с получением данных.
т е данный показатель сделан просто так ( кто делал уже уволился , а кто работает, тот точно не знает, зачем это). верно? и почему это меня не удивляет. Спасибо.
Добрый день, ув.разработчики ---------------------- Попробуйте сделать следующее: --------------------------------------- Сделайте так, чтобы, в период обработки в реальном времени, в индикаторе или скрипте на луа возникло обращение к несуществующей переменной (например сравнение с nil ). ------------------------------- Потом запустить КВИК в реальном режиме в открытой сессии. -------------------------------------- И после того, как появится окно с сообщения об ошибке, попытайтесь удалить этот индикатор с графика, либо отключить скрипт через таблицу скриптов. -------------------------------------- Уверяю Вас, Вы получите незабываемые эмоции в процессе вызвать меню для исполнения желаемых действий по удалению индикатора или отключению скрипта, так как появляющееся с каждым тиком окно сообщений будет закрывать это меню раньше Вас. -------------------------------------- Просьба сделайте так, что окно сообщений не мешало вызвать необходимое меню квика, а то игра в "кто быстрее" просто задолбала. ----------------------------------- Спасибо