Помощь в понимании и механики выставления СТОП ОРДЕРОВ, алгоритмизация
Доброго времени суток, уважаемые форумчане, кто нибудь может ли подсказать какая логика должна быть в выставлении стопов?
у меня по стратегии закрытие сделки происходит в какой то момент, то есть не сразу выставляются стопы.
И я столкнулся с такой штукой как проскальзывание, да и вообще не пойми какое исполнение.
Сразу скажу что это для робота, не руками и ни в каком терминале, работаю через Transaq Connector.
Разработчики торговых роботов(может даже HFT), может кто то может дать консультацию, желательно лично, и возможно за деньги?
PS. Не обязательно чтоб разработчик имел дело с Transaq Connector, главное чтоб просто объяснил как выставлять, чтоб максимально избежать проскальзывание и прочих рыночных радостей.
Спасибо
Тут вариант такой, на каждом инструменте свое проскальзывание, вы его должны видеть, поэтому ставьте ордер в зазором(учитывая проскальзывание)
Чтобы максимально попадать в рыночную цену нужно иметь текущую цену.
Точнее цену последней сделки.
И от неё плясать.
На самом деле не до конца ясна суть проблемы.
Если вы ставите стоп, то срабатывая он генерирует лимитник.
По лимитнику проскальзывания быть не может.
Но судя по всему вы кроетесь маркетными ордерами.
В этом случае проскальзывание неизбежно и неконтролируемо.
Antishort, может.
Но для этого к лимитной цене в стоп заявке добавляется/отнимается некоторая величина.
Чтобы при срабатывании быть лучше рынка.
Плюсом в момент выставления лимитника программа должна начинать мониторить его исполнение.
И при необходимости догонять цену, если это допустимо стратегией.
Особо продвинутые могут эмулировать стоп самостоятельно.
Т.е. следить за ценой и в нужный момент крыть позу лимитником.
Ибо не всегда сервера брокера быстро превращают стоп в лимитник.
Про рыночные я после первых же тестов на реале понял, что там цены исполнения улетают мама не горюй.
Могу писать туманно, тоже факт)
Смотрите, столкнулся с такой штукой, даже пример
Купил фьюч si, пошла не в мою сторону, я выставляю стоп ордер где вбиваю цены активации и TP и SL последнюю цену, в итоге ордер выставляется, цена за секунду улетает вниз еще на 60 пунктов, и получается так что мой ордер висит а цена далеко убежала вниз, и минус мой продолжает увеличиваться.
Скорее я хочу сделать так чтобы если у меня происходит на закрытие сигнал, я точно закрываю сделку.
И вот в этом месте у меня затык, у же пару недель всевозможно тестирую, но как только появляется провал цены на 50 шагов за секунду, никакие ордера не схватываются.
Надеюсь доступно объяснил, что меня интересует.
И да мне не совсем нужны общие фразы, мне скорее нужен тот кто решил для себя так или иначе подобную задачу, и скажет мне схематично мои действия, а я за это соответственно заплачу.
Всем спасибо
SO, в стоп-заявке есть лимитная цена.
Цена, которая будет в лимитной заявке при срабатывании стопа.
Если вы покупаете стоп-заявкой, то к этой цене плюсуйте дельту.
Чтобы при выставлении лимитника быть выше сработавшей цены.
Если продаёте, то минусуйте от цены дельту.
И тоже будете лучше рынка.
Дельта подбирается в зависимости от инструмента и его волатильности.
Это защита не идеальна, но снимает массу проблем.
Ничё не пойму — почему все пишут, что лимитниками не будет проскальзываний — они будут, просто контролируемые — за этот контроль платишь вероятностью исполнения)) — что, короче, ещё может быть похуже проскальзывания)) — если говорить о выходе из позиции, при входе ты можешь четко контролировать где заканчивается цена, по которой тебе ещё выгодно выходить и уже нет смысла — от неё и танцуешь, а при выходе если цена где можно выходить уже прошла — то как бы тем более надо выходить))) — хотя есть нюансы конечно.
А по вопросу в посте — как сказал — слишком туманно все, не понятен контекст и задача до конца.
Мне надо помочь сделать систему учета заявок, исполнения ордеров и сделок, чтоб максимально адекватно происходило открытие и закрытие позиции.
Например схематично, можно даже блоками
Сигнал на покупку => делаешь то
Сигнал на закрытие покупки => делаешь следующее
Сигнал на переворот => пятое десятое и т.д.
И вот за это я готов заплатить.
Стратегия скальперская, сделок в среднем по тестам где то 60 по сишке, пока тестирую на ней, так как цена за тесты не такая болезненная.
Спасибо
SO, хз, по-прежнему довольно абстрактно)
Тут все многофакторно, важны в т.ч. скорости — скорость соединения с брокером — от этого будет зависеть проскальзывание на имульсных движениях, это если сам кидаешь заявку, второй вариант стоп-ордер — он на стороне брокера. Часто на стороне брокера это быстрее, но, например, во время жары на бирже квиковский сервер может тупить и задержки будут ого-го, а во время жары волатильность тоже ого-го, поэтому волатильность ого-го в степени задержек ого-го дадут результат ОГО-ГО)). Т.е. условно говоря, можно делать так: если финальным условием-триггером является пробитие цены — в момент предусловия кидаешь стоп, а дальше он сработает так быстро как это умеет брокер — по условию пробития цены — я не помню — может в стопах и другие триггеры можно заложить. Если нет такой разбивки исходя из особенностей входных условий, т.е. нельзя заранее выставить стоп — значит сама стратегия кидает лимитку в момент сигнала — тут критичной становится скорость соединения — поскольку на импульсных движениях за малые промежутки времени можно далеко улететь. Тоже сумбурно пишу, потому что не до конца понял, чего надо)).
А может подскажите, какие варианты улучшения соединения с брокером? Помимо прямого подключения.
Для исследования на текущей скорости могу предложить простой алгоритм.
Ставите заявку МЕЖДУ лучшими ценами на покупку и продажу в момент отгрузки заявки. Если заявка не исполнилась, скажем, за Х секунд, переставляете опять в середину спреда. На Си — пойдет. На полуликвидах уже нет.
Если эта заявка сработала, выставляется стоп и тейк.
Стоп также стоп-заявка на продажу по цене Y+проскальзывание.
Тейк — лимитная заявка.
Можно выставить связанную заявку стоп и тейк, но нужно понимать, что в 18:45 брокер ее уберет.
как у меня, вход лимитником, то есть если выставил заявку на покупку по 72, вошёл — хорошо, цена не дошла или кто то меня опередил и цена уже выше — ну и фиг с ним, снимаем заявку, ждём дальше....
допустим вошли по 72, цена бултыхалась, и тут пошла против меня, если дошла до 70 то выставляю заявку на продажу по цене 69,9, цена пролетела мою заявку и вот уже цена 69,7, выставляю по 69,5, опять не взяли — повторяем заново. меня такой вариант не устраивает, по этому если нужно выйти по стопу то я выхожу обязательно! по любой цене какая есть, по этому выставляю заявку на продажу не по 69,9 а на 0,5% или 1% ниже, например (учитывать надо что у фьюча нельзя выставлять цену слишком далеко от текущей цены) получается выставляю на 0,5% ниже рыночной = 70, т.е. 69,65 и заявка исполнится по лучшей цене из стакана, может быть и 70 и 70,2 или 69,85 например, как повезёт, но зато точно (или почти точно) мы закроем позу. я предпочитаю так делать, всегда выставляю стоп на 0,5 или 1% ниже
вы про это спрашивали?)
да, если надо обязательно купить значит выставляю заявку выше текущей цены на 0,5-1%, ну то есть получается заявка — по рынку