Блог им. VARG0R

Оптимизация комиссии при автоматическиой торговле

Как известно Московская биржа не берет комиссия за лимитные сделки.
Оптимизация комиссии при автоматическиой торговле
А чем лимитная сделка отличается от рыночной? Стандартное объяснение, что цена покупки ниже текущей цены Ask, или цена продажи выше текущей цены Bid.
Но иногда получается, что выставляя лимитную заявку по этому правилу цена успевает измениться больше заложенного в заявку отступа и лимитная заявка становится рыночной за которую биржа начисляет комиссию. А это означает, что биржа смотрит не на тип заявки (Лимитная / Рыночная), а на время её установки и срабатывания, точнее даже не на время а на номер заявки (больше/меньше встречной). Если, время её срабатывания меньше времени установки (получит более ранний номер чем у встречной заявки), то заявка сработает как лимитная (без комиссии), а если время будет позже чем у встречной (получит номер больше встречной заявки), то заявка считается рыночной (с комиссией). И что же делать в таком случае?
Есть оказывается такой параметр заявки «Условие исполнения=Только пассивная» который не даёт ей сработать если заявка пытается исполниться по рынку. В этом случае заявка просто снимается и её можно перевыставить заново.
Но здесь возникла сложность при автоматической постановке заявок скриптом. Если использовать старый формат заявок, там есть параметр
[«EXECUTION_CONDITION»] казалось бы поставь его равное «BOOK_OR_CANCEL» и дело в шляпе. Но с Quik так это не работает.
Оказывается значение «BOOK_OR_CANCEL» разработчики до сих пор не прописали в старый формат.
Оптимизация комиссии при автоматическиой торговле
Оптимизация комиссии при автоматическиой торговле
И при попытке установки заявки с таким значением выдается ошибка.
Поэтому пришлось изменить формат ввода заявок на новый
Оптимизация комиссии при автоматическиой торговле

там этот параметр и его значение выглядят так
[«Условие исполнения»] = «Только пассивная»
Теперь при установки заявки с таким параметром она будет или обязательно лимитная или будет снята.
И вы не попадаете на комиссию биржи. Стоит учитывать, что брокер свою комиссию возьмет в любом случае, независимо от типа заявки, но все-равно получается 50% экономии от общих затрат на комиссию. Которая, лично у меня, доходит до 30% в год.
★4
18 комментариев
  
avatar
__rtx, Стандартное объяснение тоже не совсем верное, для сделки нужно чтобы цена покупки была выше или равна текущей цене Ask, или цена продажи ниже или равна текущей цене Bid. 
Я описал условие для установки лимитной заявки, чтобы она НЕ сработала моментально. А вы ведете речь о рыночной заявке, или о моменте срабатывания лимитной.
это тоже не так(больше/меньше встречной так определяется направление сделки купили или продали)
«больше/меньше» не имеется ввиду цена. Речь идет о номере заявки.
не попадёте на комиссию как тейкер(Ваш ордер не исполнится) но Вы получитебаллы за некорректные транзакции и если будете делать это часто то придётся тоже заплатить, причём даже если это не прямое подключение
Первый раз слышу, что брокер берет комиссию за отмену заявки. У моих брокеров такого нет. И думаю, что таких глупостей нет ни у кого. Можете назвать брокера кто начисляет штрафные балы за отмену заявок и потом берет за это комиссию? Или это ваша фантазия?
а например квик то всё равно скорее всего(я почти уверен в этом) брокер Вам это отразит в комиссии так как он платить бирже не будет.
Платить за что? За отмененный ордер?
avatar
  
avatar
__rtx, Здесь перечислены ошибочные транзакции

Транзакций с BOOK_OR_CANCEL в этой таблице нет, но надо будет понаблюдать, такой штраф (от 1000) трудно будет незаметить, но вряд ли что будет, такие сделки не часто бывают.
avatar
  
avatar
__rtx, мне это достаточно просто сделать в потоке FORTS_TNPENALTY_REPL
А вы через Спектр к бирже подключены? Я об этом терминале мало, что слышал. Роботы там через API работают? И на каком языке пишутся скрипты?
avatar
  
avatar
__rtx, Да заморочено у вас. CUDA (я так понимаю это вычисления на GPU)  Вы что десятилетия тиков рассчитываете?
avatar
  
avatar
__rtx, Кстати сегодня у меня уже были отвергнутые транзакции со статусом Book-or-Cancel.
Статус — 4 [Ошибка создания заявки. [GW][82] Заявка Book-or-Cancel не может быть выставлена/переставлена, т.к. она приводит к немедленному исполнению..]
Слово ошибка все-таки присутствует, но комиссия биржи нулевая. Интересно все же начисляются ли штрафные балы за такие сделки? Вы не могли провести тестовую транзакцию Book-or-Cancel, и посмотреть у себя в терминале,  начисляются ли за нее штрафные баллы?
avatar
  
avatar
  
avatar
  
avatar
  
avatar
  
avatar
Кстати нюанс по начислению штрафа за ошибочные транзакции.
Сбор взимается, если а Capmin = 1 000руб В связи с этим если балов за сессию меньше чем на 1000 рублей, штраф не придет. Максимальный штаф 30000руб. После достижения этого максимума  технический центр имеет право заблокировать логин до окончания вечерней дополнительной торговой сессии следующего Торгового дня.
Да, интересная информация. Иногда бывает тестируешь скрипт в плане механизма установки ордеров, и тут бывает десятки ошибочных операций осуществляется. Хорошо еще если под контролем, а можно и не заметить и скрипт накидает тысячи таких заявок в систему и плати штраф.
avatar
  
avatar
  
avatar

теги блога Cubigator

....все тэги



UPDONW
Новый дизайн