Блог им. vkcoda982

Пишу MarketScanner. 21.02.2016

Продолжаю писать в свободное от работы время собственный market scanner.

Решено, что сканер будет состоять из двух программ, работающих независимо:
1) Database, которая будет вытягивать исторические данные через IB TWS, формировать из них базу данных.
2) Scanner + Visualizer, собственно поиск паттернов, отображение чартов, подача сигналов, выставление ордеров и т. д.
Предполагается, что работать они будут параллельно и круглосуточно, скачивая и сканируя весь рынок на предмет точек входа.
 
Торговые данные будут храниться на диске в виде XML-файлов — текстовый формат более удобен для ручной инспекции, он расширяем, может читаться разными парсерами и т. д. Для работы с XML я подключил библиотеку TinyXML: https://sourceforge.net/projects/tinyxml/

Тестовый код работает следующим образом: в XML-файле хранится список тикеров, по которым нужно получить исторические данные. Для простоты я начал с компаний из списка S&P 500. Программа идёт по списку и вытягивает исторические данные за последний год для каждого тикера. Полученные данные записываются в соответствующий XML-файл, который имеет такое же символьное сокращение как и у тикера.

Пишу MarketScanner. 21.02.2016
Пишу MarketScanner. 21.02.2016
Пишу MarketScanner. 21.02.2016
Кстати уже столкнулся с ограничениями IB по запросу исторических данных:
Пишу MarketScanner. 21.02.2016
Поэтому следующим шагом станет внедрение request policy — алгоритма, который будет учитывать кол-во отосланных запросов и отсчитывать время для нового запроса таким образом, чтобы не нарушать historical data request limitations (описаны здесь: www.interactivebrokers.com/en/software/api/apiguide/api/historical%20data%20limitations.htm).
Ограничения введены IB скорее всего для защиты их серверов от «заDDoS-ивания» непрерывными запросами.
★8
12 комментариев
Подключись к яху, проще будет, если ты дневки тянешь.
Капитан Сильвер, я не умею с вебом работать.
Т.е. проще ухандохать тонну времени на программу которая с погрешностями тянет маркет дату, чем её купить у биржи без погрешностей?:) Зачётное уничтожение ресурсов времени и труда:)
Самокритичный трейдер, зачем тонну времени? Знакомый за пол дня под пиво написал коротенький скрипт.
Там же API. Ничего выдумывать не надо. И с чего вы взяли что у Яхи есть погрешности?
Капитан Сильвер, Ну купи маркет дату и сверь по экселю. Сам увидишь. Что мне тебе словами что ли доказывать?:)
продам доступ к реальному аккаунту thinkorswim. там маркет-сканер — очень и очень крутой, можно даже свои параметры описывать скриптом.
avatar

Дык это же реализовано уже 100 раз. www.marketscreen.com

там скрипт ходил  по всему рынку и на различных таймфреймах давал сигналы по огромному списку паттернов  Кстати не взлетело. Пришлось продать.

avatar
MezonMaksimov, $95 в месяц? Спасибо, нет.
Багатенький Буратина, молодец!
А ты из IB нахаляву историю тянешь, или нужно счет у них открывать и т.п.? 
ты дневки тащишь, или чего помельче?
ограничения срабатывают когда историю по тикерам выкачиваешь, или даже когда просто свечи за сегодняшний день запрашиваешь?

Бабёр-Енот, нужен счет — у меня он открыт. Вытягиваю дневки на годовом интервале. В принципе там разные опции возможны, ограничение в 2000 свечей на запрос.
Багатенький Буратина, дык я же не настаиваю, просто подумалось, что если вам для составления базы + скрипт кт ее филит понадобился сторонний человек, то придется и на остальное или его нанимать или покупать модули кт ищут паттерны. Как сейчас помню — модуль для паттернов по candles — стоил 200$. Т.е. в итоге выйдет оч дорого. Попробуйте для примера написать программку кт, будет искать dobble top. Но с другой стороны, Вы же богатенький )
avatar
MezonMaksimov, я могу самостоятельно запрограммировать некоторые паттерны. Думаю есть исследования на эти темы или даже сорсы на гитхабе. К тому же я могу настраивать собственные алгоритмы как мне удобно.

теги блога 🗝Багатенький Буратина

....все тэги



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