Николай написал: Читаю очередную ветку на форуме, и ловлю себя на том, что уже возник такой "спортивный" интерес: найти хоть какую-нибудь ветку, в которой после сообщения "Ваше пожелание зарегистрировано", позже было бы сообщение: "Ваше пожелание реализовано".
Очень много такого. Темная тема, фильтры, всякие сортировочки, кнопочки, рюшечки. То есть все то, что теперь делает квик тормозным и глючным. Все это выпрашивали пользователи, очень им нужно было. Правда, сейчас никого из них вы тут не увидите, некому кричать ура и в воздух чепчики бросать.
Alexey Ivannikov написал: Задача действительно не тривиальная, начиная от концепции и дизайна, и заканчивая ценой возможной ошибки в реализации. Про пожелание помним, когда сможем выделить значительный ресурс для реализации подобного - пока вопрос открытый.
Сказочники, как говорится, кто хочет ищет возможности, кто не хочет ищет оправдания. Могли разбить на этапы и часть за частью реализовывать. Начать с малого, добавить в форму заявки новый блок и в нем по пунктам* 1. Активировать блок 2. Покупка или продажа 3. Отступ от цены заявки в % 4. Цена(с возможностью редактирования), которая равна и цене проскальзывания, два поля ни к чему. Всё. делаешь заявку, ставишь галочку активировать блок стоплосс и отправляешь, потом подтягиваешь стоплосс до нужного места и готово. Дальше можно годами допиливать.
Добрый день.
Мы пишем как есть, и если Вам кажется, что внедрить подобное в торговый терминал, где цена ошибки/недоработки в коде - это финансовые потери пользователей, легко и просто - мы Вас, наверное, в обратном убедить не сможем.
В то же время есть встроенный язык программирования LUA, любой желающий может самостоятельно написать алгоритм выставления автостопов.
Добрый день! Подскажите как в быстром вводе заявок быстро ввести цену, по аналогии с количеством alt+S,D,F? Например, взять и подставить ближайший бид или офер.
По умолчанию, в режиме быстрого ввода заявки - берётся цена котировки, кликом по которой Вы инициировали выставление заявки в режиме быстрого ввода заявки. В этом случае, явным образом задать "другую" цену нельзя. Однако, по аналогии с "быстрым объёмом" - Вы можете использовать настроенные отступы цены, для выставления от цены котировки. Настроить отступы Вы также можете в окне редактирования таблицы котировок. Использование того, или иного отступа по умолчанию происходит по комбинациям горячих клавиш: «Alt»+«Z» - «Отступ 1» «Alt»+«X» - «Отступ 2» «Alt»+«C» - «Отступ 3» «Alt»+«V» - «Отступ 4» и при необходимости переназначить их в окне редактирования горячих клавиш (Система / Настройки / Редактор горячих клавиш).
Вот у вас есть реализация быстрого ввода заявок со стакана. То есть, открышийся стакан уже привязан к инструменту. В насторойках стакана по CTRL+E ставите опцию - использовать Быстрый стоп-лосс. (кому надо тот использует или отключает функцию) В стакане добавляете поля, где указывается количество пунктов для стоп-лосса и поле указания пунктов проскальзывания. - При исполнении маркет заявки стоп-лимит автоматом устанавливается согласно условиям указанным в полях. -При исполнении лимит заявки так же выставляется стоп-лимит по указанным условиям. -При активации кнопки С Закрыть все позиции стоп-лимит автоматически удаляется из системы.
То же самое делаете для тейк-профита как отдельная опция.
Если у вас есть технические затруднения с реализацией этого, то вы могли бы сделать официальный скрипт для Квика. Подчеркну, официальный скрипт, так как подобные скрипты делают сторонние люди и неизвестно, что там в коде у них заложено и насколько они собираются поддерживать это далее. Ссылка на "а вы напишите скрипт сами" - не принимается, так как большинство пользователей Квика программистами не являются.
Правильно понимаем, что при исполнении заявки должна выставляться стоп-заявка у которой условная цена = цена сделки + кол-во пунктов, а цена исполнения = цена сделки + кол-во пунктов + пунктов (проскальзывания)?
Вот так: - Заявка исполнена. - Выставляется стоп-заявка по алгоритму = (а) цена сделки + (в) кол-во пунктов стопа+ (с) кол-во пунктов проскальзывания. -При сработке стопа цены сделки (в) в систему отправляется ордер на исполнения по цене (с).
Пример: - В полях панели стакана (как на моем рисунке выше) заранее выставляются цифры, на которые ориентируется алгоритм. а) Стоп-лосс - 200 п (разумеется все цифры согласно шагу инструмента, например фьючерс РТС) в) Проскальзывание - 20 п с) Происходит сделка пользователем: - Куплен 1 контракт по 150 000 (лимит ордер или маркет) - Система считает: 150 000 - 200 = 149 800 - 20 = 149 780, где 150 000 - цена покупки 1 контракта 149 800 - цена активации стоп-лимит, который хранится на сервере брокера. 149 780 - цена по которой система отправляет заявку на продажу кратное количеству контрактов купленных поцене 150 000, то есть 1 контракт.
Данный алгоритм привязан к опции быстрого ввода заявок со стакана, так как актуален именно для подобного ведения торговли, где важно сразу выставить стоп-лосс. Причем редактирование этой стоп-заявки после её установки легко осуществить простым перетаскиванием на графике, как это уже реализовано в программе. Ручное закрытие кнопкой "С" по существующему алгоритму программы закрывает все позиции и отменяет все стоп-заявки в системе. Если эта кнопка уже зарезервирована и нежелательно прикручивание к ней допопций, то можно добавить в панель кнопку Отмена всех стоп-ордеров по данному инструменту.
Дополнение, Ручное закрытие кнопкой "С" по существующему алгоритму программы закрывает все позиции и отменяет все стоп-заявки в системе. Если эта кнопка уже зарезервирована и нежелательно прикручивание к ней допопций, то можно добавить в панель кнопку Отмена всех стоп-ордеров по данному инструменту.
Можно даже не усложнять с этими опциями, а закрытие позицией вручную осуществитьпростым перетаскиванием на графике стоп-заявки под цену. И позиция закроется и стоп-заявка удалится по причине сработки оной.
Уточните, еще, пожалуйста, что касается количества в выставляемой стоп-заявке: Оно равно количеству в исполненной ранее лимитированной заявке? Если уже есть открытая позиция по инструменту, стоп-заявка также должна выставляться? На какое количество?
Цитата
Павел написал: Ручное закрытие кнопкой "С" по существующему алгоритму программы закрывает все позиции и отменяет все стоп-заявки в системе.
Имеется в виду закрытие всех позиций и снятие всех стоп-заявок (по всем инструментами) независимо от того, по какому инструменту открыт стакан? Нам данная функция кажется немного нелогичной. Уточните, пожалуйста, зачем это нужно в стакане по инструменту? (частично описанный функционал выполняет кнопка "закрыть все" таблицы "Состояние счета") Быть может, имелось в виду, закрытие позиций / снятие стоп-заявок по инструменту, для которого открыт стакан?
Давайте уточнять Оно равно количеству в исполненной ранее лимитированной заявке? Если уже есть открытая позиция по инструменту, стоп-заявка также должна выставляться? На какое количество? Да, равно. Это логично. Сколько позиций открыли столько и хотим защитить. Если уже есть открытая позиция по инструменту, стоп-заявка также должна выставляться? На какое количество? Для этого в первом посте я написал о вводе в Таблице настройки стакана опции "Быстрый стоп-лосс". Ставим галочку, активируем эту опцию, в стакане появляются нужные нам окошечки и кнопки. С этого момента все заявки вводимую в систему через режим Быстрого стоп-лосса начинают защищаться стоп-лоссом при условии заполнения соотв. полей (кол-во пунктов стопа+проскальзывание) иначе автоматичесий стоп не выставляется. Это логично, так как системе не на что ориентироваться при формировании стоп-заявки, если в поля не введено условий. Уже открытые позиции имеющиеся в системе до активации опции Быстрого-стоп лосса игнорируются. Иными словами, Активация опции + заполненные поля = работа алгоритма Быстрого стоп-лосса.
Быть может, имелось в виду, закрытие позиций / снятие стоп-заявок по инструменту, для которого открыт стакан? Совершенно верно. Я веду свою логику относительно функционала Стакана, а именно варианта Быстрый ввод заявок, который открывается для конкретногоинструмента, и все манипуляции производимые в стакане относятся к конкретному инструменту. Было бы странно командой с конкретного стакана начинать закрывать позиции по другим инструментам. Далее,
Такая оциии как Срок действия стоп-заявки в функции Быстрого стоп-лосса : До отмены или Сегодня - не требуется. То есть, удаление стоп-заявки в этом варианте происходит в двух случаях: - Сработка стоп-заявки. - При ручном закрытии позиций через зарезерированную для этого кнопку в Панели стакана.
Отдельный вопрос для некоторых людей может быть в том, что они захотят дробное закрытие позиции. Тогда поля в панели стакана (кол-во пунктов стоп-лосса и проскальзывание) очищаются, становятся равны нулю и алгоритм уже не реагирует на вводимые вручную контрзаявки. Оставшиеся в системе стоп-заявки удаляются вручню, допусти через Таблицу стоп-заявок. Тут люди могут возразить, что пока ты частями закрываешь позицию, что-то произойдет страшное и активируется стоп-заявка кратная лотам, которые уже закрыты по частям вручную, но предлагаемое мной является как можно более простой в исполнении и использовании вещью без извращений. В конце концов можно разбить позицию и входить по частям, соответственно на каждую часть система будет создавать отдельную стоп заявку.
Отчасти соглашусь с разработчиками - задача не такая тривиальная, как может показаться на первый взгляд непосвящённому. Например:
Цитата
Павел написал: С этого момента все заявки вводимую в систему через режим Быстрого стоп-лосса начинают защищаться стоп-лоссом
Заявки или сделки? Если в заявке 100 лотов, и она исполняется частями по одному лоту, то когда и сколько должно быть выставлено стоп-заявок? А если заявка выставлена другим способом, из таблицы заявок, например, автостоп должен работать?
Цитата
Павел написал: Уже открытые позиции имеющиеся в системе до активации опции Быстрого-стоп лосса игнорируются. Иными словами, Активация опции + заполненные поля = работа алгоритма Быстрого стоп-лосса.
Допустим, до активации опции открыта позиция +2 лота. После активации опции и исполнении заявки на продажу 1 лота, какая должна быть выставлена стоп-заявка? И т.д и т.п.
Надо делать так, как надо. А как не надо - делать не надо.
Старатель, Заявки или сделки? Если в заявке 100 лотов, и она исполняется частями по одному лоту, то когда и сколько должно быть выставлено стоп-заявок? Ну конечно, ориентация на исполненную заявку. Нет смысла, ставить стоп-заявку на 100 лотов, если забрало 50. Если вы поставили заявку и она исполнилась не вся, стоп-ставится на кол-во исполненной заявки, а неисполненный вы снимаете. Если не снимаете, и остаток все таки исполняется - стоп так же выставляется на кол-во исполненной заявки. На графике будет две линии стоп-заявки, и так же можно двигать ее куда надо.
А если заявка выставлена другим способом, из таблицы заявок, например, автостоп должен работать? Я все привязываю к Стакану, а именно к функции Быстрого ввода заявок.
Допустим, до активации опции открыта позиция +2 лота. После активации опции и исполнении заявки на продажу 1 лота, какая должна быть выставлена стоп-заявка? Данный функционал рассчитан на сделки внутри дня. Не вижу проблем перед активацией опции сперва закрыть позиции, потом включить опцию автостоплосса.
Задача не простая, иначе ее давно бы уже реализовали. Но разработчикам нужна конкретика, что от них хотят, а там они уже скажут возможно сделать это или нет.
Павел написал: Не вижу проблем перед активацией опции сперва закрыть позиции, потом включить опцию автостоплосса.
У кого-то может быть другое мнение.
Цитата
Павел написал: Ну конечно, ориентация на исполненную заявку. Нет смысла, ставить стоп-заявку на 100 лотов, если забрало 50. Если вы поставили заявку и она исполнилась не вся, стоп-ставится на кол-во исполненной заявки, а неисполненный вы снимаете. Если не снимаете, и остаток все таки исполняется - стоп так же выставляется на кол-во исполненной заявки. На графике будет две линии стоп-заявки, и так же можно двигать ее куда надо.
Ну так исполниться она может не двумя, а ста сделками. Получите 100 стопов. Ну это опять же к вопросу удобства.
Вот и думают разработчики годами, как бы это так сделать, чтобы всем угодить
Надо делать так, как надо. А как не надо - делать не надо.
У кого-то может быть другое мнение. Пока все выдумывают свои мнения вопрос быстрого стоп-лосса остается открытым много лет уже как. Надо приходить к чему-то уже.) Ну так исполниться она может не двумя, а ста сделками. Получите 100 стопов. Вот я предложил немного другой вариант со стаканом, где стоп выставляется не автоматом, а по стакану по условиям заданным в полях, где отсчет ведется от текущей цены. То есть, у вас прошло 100 сделок на 100 лотов - выставляете в поле Q количество ваших исполненных лотов и выставляете стоп на это количество.
Давайте подведем итог: По сути, описанный Вами функционал представляет собой автоматическое выставление стоп-заявки "по исполнению" для каждой выставленной в стакане заявки (с возможностью частичного исполнения). Иными словами, при частичном исполнении заявки, выставляется стоп на исполненный остаток, в случае дальнейшего исполнения, количество в стоп-заявке увеличивается (чтобы не плодить огромное количество стоп-заявок). Верно?
Дополнительно уточним про кнопку закрытия, она должна закрывать позиции рыночной заявкой или как-то иначе?
Здравствуйте, Роман. Спасибо за интерес к мнению пользователей. Иными словами, при частичном исполнении заявки, выставляется стоп на исполненный остаток, в случае дальнейшего исполнения, количество в стоп-заявке увеличивается (чтобы не плодить огромное количество стоп-заявок). Да, если стоп-заявка будет так динамически изменяется в зависимости от количества исполненных заявок - это вообще волшебство. Заявки могут исполняться частями, на что указал Старатель, и каждый раз редактировать Стоп-лимит заявку дело жуткое.
Дополнительно уточним про кнопку закрытия, она должна закрывать позиции рыночной заявкой или как-то иначе? Логика этой кнопки - ручное закрытие позиции разоммаркет ордеромс удалением выставленных стоп-заявок. Нужна только в таком связанном виде как, Закрытие всех позиций + удаление стоп-лосса.
Вот, на данный момент у нас есть уже два варианта алгоритма Быстрого стоп-лосса: - Автоматический стоп-лосс. Есть подозрение, что это сложно реализовать в существующей архитектуре программы. - Полуавтоматический стоп-лосс. По моему, этот вариант проще, более гибок и подразумевает немного расширить функционал стакана.
Ваши пожелания зарегистрированы, мы постараемся их рассмотреть. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожеланий в будущих версиях ПО.
Alexey Ivannikov написал: Задача действительно не тривиальная, начиная от концепции и дизайна, и заканчивая ценой возможной ошибки в реализации. Про пожелание помним, когда сможем выделить значительный ресурс для реализации подобного - пока вопрос открытый.
Сказочники, как говорится, кто хочет ищет возможности, кто не хочет ищет оправдания. Могли разбить на этапы и часть за частью реализовывать. Начать с малого, добавить в форму заявки новый блок и в нем по пунктам* 1. Активировать блок 2. Покупка или продажа 3. Отступ от цены заявки в % 4. Цена(с возможностью редактирования), которая равна и цене проскальзывания, два поля ни к чему. Всё. делаешь заявку, ставишь галочку активировать блок стоплосс и отправляешь, потом подтягиваешь стоплосс до нужного места и готово. Дальше можно годами допиливать.
Добрый день.
Мы пишем как есть, и если Вам кажется, что внедрить подобное в торговый терминал, где цена ошибки/недоработки в коде - это финансовые потери пользователей, легко и просто - мы Вас, наверное, в обратном убедить не сможем.
В то же время есть встроенный язык программирования LUA, любой желающий может самостоятельно написать алгоритм выставления автостопов.
Спасибо за упоминание qLUA, что на этом языке можно написать нужный скрипт, что нереализован в графическом терминале quik. интересует как смотрите на то, чтобы в процессе обсуждения/реализации графического интерфейса, параллельно, помочь сообществу, выдать какие шаблоны кода на lua, чтобы эти функции можно выполнять, как представляется табличка с кнопками, при нажатии-изменения вводимых данных позволяла всё со стоп заявками сделать.
какая актуальная информация по перемещению стоп-заявки по графике, это возможно сейчас? попробую проверить через 20 часов когда биржа будет работать, вдруг кто раньше ответит точно.
к тем, кто высказывался про автовыставление стопа при исполнении трейда: на lua можно сделать реакцию на сообщение о совершении сделки, функция. вот бы в этих областях закрыть временной промежуток пока не станет доступно в интерфейсе терминала, какие общепринятые шаблоны для решения таких задач через lua.
можно ожидать появления функции, на форуме, редактировать свои сообщения, хотя бы, в течение нескольких минут после опубликования?
У меня в скриптах роботов делается так: ------------ Если стоп-заявки разрешены , то На изменение портфеля по инструменту проверяется наличие стоп-заявки и соответствие в ней количества. Если равенства нет , то стоп-заявка снимается и устанавливается новая, если количество не ноль. Ппри этом, выставление новой заявки должно быть выполнено после подтверждения снятия старой. ------------ Есть различные варианты сигналов, по которым выполняются эти действия. Например скользящий стоп. ---------- Так как умная стоп-заявка - это относительно большой и сложный скрипт, то сомневаюсь, что на форуме появится действительно подобный скрипт. Практически надо выкладывать скрипт автоматической торговли. ----------------
Уважаемые разработчики ! Вместо того, чтобы годами "обсуждать и прорабатывать", сделайте хоть какую-то реализацию в Квике. Скоро будет 10 лет как эта тема начата... Странно, что с таким подходом Квик вообще появился, если каждую фичу так обдумывать долго
Мы получаем от пользователей достаточно много предложений по улучшению ПО QUIK. И мы стараемся воплотить как можно больше интересного пользователям функционала. Но т.к. это не всегда просто в реализации, то и данный процесс не получается сделать быстрым. Кроме того, в своём подходе исходим в понимании критичности тех или иных доработок, в первую очередь, из устойчивости самой платформы и её базового функционала, а также поддержки добавления тех функций, параметров, режимов торгов, кодов расчётов, валютных пар, функционала ведения позиций и пр., которые появляются на тех или иных основных торговых площадках и являются необходимыми именно для осуществления основных требуемых от торгового терминала функций.
Здравствуйте Karina Dmitrieva ! Предмет обсуждения данной ветки - это базовый функционал любого терминала, но не Квика. Во-вторых, чтобы как-то исправить этот недочет, люди уже кучу различных приводов наделали. Ну должно же это какой-то сигнал отправить разработчикам, что не все хорошо в их софте, если столько костылей люди самостоятельно ( после десятков лет (ха-ха) ожидания ) сделали. Опять же разговоры о "понимании критичности тех или иных доработок, в первую очередь, из устойчивости самой платформы и её базового функционала, а также поддержки добавления тех функций, параметров, режимов торгов, кодов расчётов, валютных пар, функционала ведения позиций и пр., которые появляются на тех или иных основных торговых площадках и являются необходимыми именно для осуществления основных требуемых от торгового терминала функций" - у вас 2 программиста в штате ? Я ни на что не намекаю, но 10 лет исправлять, это как Франкенштейна оживлять -проще новое написать. Хоть что-то поменяйте уже в подходе... Спасибо )!
Как уже было сказано выше, мы придерживаемся определенных принципов при планировании реализации того или иного функционала, который был предложен пользователями. Мы можем зарегистрировать пожелание от Вас - для этого просьба подробно описать функционал, который Вы бы хотели увидеть в терминале QUIK, а точнее: -Что подразумевается под одновременным вводом заявки и стопа? Какую задачу Вы хотели бы решить с помощью данного функционала? Какое поведение ожидается?