Блог им. Tyam

Dear Brokers… (часть 2)

Продолжение статьи-перевода в которой программист пишет брокерам про их «не очень удобные» API...

Удивительно, но это история про топовых западных брокеров, которые десятилетия ничего не меняют к лучшему.

Начало здесь: http://smart-lab.ru/blog/330769.php

Dear Brokers… (часть 2)

 

Получение истории цены



Хотя любой алгоритм торгует в режиме реального времени, на запуске ему все еще нужна история цены для вычисления начальных значений её индикаторов и функций анализа цены. Без доступа к ценовой истории вам бы пришлось ждать пару дней до размещения первой сделки. Так как это не слишком практично, ценовая история является существенной функцией API.

 

Брокер А предоставляет историю цены без особых проблем. Я могу не верить ему. Поэтому нам снова нужно запустить “фабрику запросов”, сгенерировать запросы и ответы, и приблизительно 50 строк текста программы позволят загрузить историю цены. Брокер не взимает сборы за эти цены (вы даже можете загрузить их с демо-счетом) и, по крайней мере недавние данные, с 2010 и выше, находятся в приемлемом качестве. Восемь из десяти очков для истории цены брокера А.

Брокер В у нас вновь креативный и предприимчвый человек. Его ценовая история бесполезна при просмотре с демо-счетов – вы должны открыть реальный счет и внести 10,000$, если хотите хотите получить эти данные. Эта сумма, конечно, также требуется и от бедняги кодера, который лишь хочет внедрить функцию получения истории цены. Но и дальше не проще. Технически это легко – достаточно нескольких линий кода – но у вас только 60 запросов. После этого сервер с историей цены закрывается на 10 минут. 60 запросов достаточно для системы с одним активом, но не для запуска системы с портфелем, и уж точно не для backtest'а. К чему такое странное ограничение? Возможно, брокер В не может позволить себе быстрое интернет-соединение для своего сервера с историей цены. А возможно, они используют старый PC своего генерального директора, расположенный в его гостиной, и пропускная способность понижается, когда его дети играют на нем в Тетрис. Какой бы ни была причина, брокер В получает только одно из десяти очков.

Есть ли брокер, который получил бы ноль очков за историю цены? Да, есть: у брокера С вообще нет функции API для восстановления истории цены. Очевидно, они не ожидали, что кто-то будет действительно использовать их API. И здесь нет иного совета, кроме как посоветовать клиенту выбрать другого брокера для своей алгоритмической системы.

 

 

Обработка сделок

 


Мы, программисты, склонны мыслить бинарно. Когда мы отправляем приказ «исполнить или аннулировать» в API брокера, мы предполагаем, что позиция будет или открыта (“да”), или закрыта (“нет”). Но время от времени, API брокера приводит к третьему результату, например, “возможно”, или “не скажу”. Позиция, которая, возможно открыта, а возможно и нет, способна привести к потере сделки. Это — сделка, открытая брокером, но не получившая ответ от торгового ПО, и следовательно, не автоматизированная. Такая сделка не будет закрыта аннулированием или остановкой, и может таким образом накопить большую потерю.

Теоретически, потерянные сделки предотвратить просто. API всего лишь должен предоставить простую функцию заказа с идентификатором и пределом применимости, например:

 

openAtMarket(string Asset, int Amount, int ID, int SecondsValid);

 

ID = уважаемый брокер, пожалуйста, сохраните этот идентификатор вместе со сделкой и используйте его для восстановления статуса сделки в случае сомнений.

SecondsValid = уважаемый брокер, пожалуйста, игнорируйте заказ, когда после заданного числа секунд ваш API все еще не знает, может ли он заполнить его или нет, или его невозможно подтвердить.

 

Это — идеал, но как в действительности?



Продолжение читаем на смартлабе через неделю...

Удачных алгоритмов!

Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
835 | ★5
16 комментариев
ссылку на оригинал можно?
avatar
Дар Ветер, http://www.financial-hacker.com/dear-brokers/
Дар Ветер, а вы программист? не совсем заметил на СЛ
avatar
Андрей К, был после института, я разрабатываю стратегии на бумаге и торгую а более актуальные программисты их программируют
avatar
Не гнал бы ты зря на IB. За ту цену, которую он обходится розничному клиенту — подобного очень мало.

А по поводу обработки сделок — хорошо, конечно иметь вместо брокера деда мороза, или санта клауса. Но мы в реальном мире живем и сглючить может везде.

Просто в РФ ты отправишь ордер в никуда, и не будешь даже знать, получил его брокер или нет, и переправил ли он его дальше на биржу… А узнаешь обо всем после вечернего клиринга. А потом утром еще раз обо всем узнаешь, и удивишься.

А тут все честно — ордер роутирован — ответа нет. Если бы на бирже был параметр SecondsValid — он бы был и у тебя в API. А так ты предлагаешь брокеру за свой счет эмулировать такой тип ордеров. 

А так никто не запрещает Order Status Request (OSR) использовтаь
avatar
Spekyl, 
1) не ты, а Вы.
2) это перевод, и об этом два раза написано на этой странице.

Спасибо за мнение.
Алексей Ван , Вы далеко пойдете.
avatar

Читайте на SMART-LAB:
Фото
Дешевеющая нефть поддержала Европу и иену, но доллар еще не сломлен
Нефть продолжает дешеветь во вторник: рынок осторожно закладывает в цены сравнительно спокойный новостной фон вокруг ближневосточного кризиса....
Укрепляем портфель юанем – новые облигации Норникеля
В сегодняшнем посте анонсируем выпуск наших новых валютных облигаций . Бумаги подразумевают доход, привязанный к юаню, при первичном размещении...
Фото
Accent объявляет SPO фонда «Акцент 4»
Accent объявляет SPO фонда «Акцент 4»   Дополнительно будет выпущено 220 тыс. паев на сумму более 300 млн рублей. Прием...
Конспект Мозгового штурма. Инсайды с ПМЭФа. Weekly №120
Доброго дня дорогие товарищи. Сегодня у нас был традиционный мозговой штурм. Делюсь итогами штурма и инсайдами с ПМЭФа.

теги блога Алексей Ван <o-s-a.net>

....все тэги



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