Сбор, скачивание, поиск тиковых данных для Forex

sibman

Активный участник
Взял в Нефтепромбанке торговое API. Вообщем там eclipse+java.Их торговый терминал NPDTrader похоже на той же либе сделан. Доки пока никакой нет, одно readme как примеры запустить. Если кому интересно, вот ссылка _http://aftpro.com/forum Я конечно не любитель джавы, но как говорится "на безрыбье ..." По крайней мере это решение можно из под линукса запустить.
 

sibman

Активный участник
Вторую неделю копаю торговый API от нефтепрома. Хочу проинформировать любителей сбора чистых котировок, как таковые получить от Нефтепромбанка.
Сначала про API.
Писан на java компанией AFT FX Group. Сам API дока и представитель разработчика находятся сдесь http://www.aftpro.com. Фактически на этом API написана торговая часть терминала NPBTrader. Поддерживает даже такую экзотику как ордера типа if-done и OCO. API рабочий, то есть если есть наработки, то подключаетесь и гребёте бабло :D. Скорость отработки ордеров очень даже на уровне.
Теперь по поводу сбора котировок. В примерах есть QuotesListenerDemo - это практически готовый сборщик котиров(так пару строк поправить). Если зайти на сайт nefteprominvest.ru, то слева котиры мыргают. Это пример как выглядит работа этого QuotesListener. Поэтому, кто хочет эти котиры с нефтепрома собирать. Открываете реал, ставите этот QuotesListener и получаете чистые тики с банковского шлюза. Обьемы будут большие. Котиры фигачат по экрану, прочитать не успеваю.
Так что я себе этот API в арсенал возьму однозначно. В сухом остатке пока три API от дукаса, лмакса и от AFT. Если GKFX еще торговый API заделает, попрощаюсь с метаквотесами навсегда. А вот с API от OPENFX у меня чего-то не срослось. Видимо у меня идиосинкразия на С#, не люблю я продукты от майкрософта и всё тут.
 

Niktesla

Активный участник
Чтобы придать этому безобразию какой-то более-менее законченный вид, выкладываю скрипт на Perl, который, собственно, эти файлы-тики и запуливает в базу (на выбор, или sqlite или MySQL).

Схема (для MySQL) таблицы:

Чувак, ты чего, забудь вообще про тики в SQL базе в таком виде... :facepalm:
Если интересно почему - попробуй попихай туда тики с дуки по нескольким валютным парам, за несколько лет, и попробуй поработай...
На клиенте, обрабатывающем результат запроса скорее всего будут лютые тормоза...
 

Sergey Kovalyov

Элитный участник
Чувак, ты чего, забудь вообще про тики в SQL базе в таком виде...
Если интересно почему - попробуй попихай туда тики с дуки по нескольким валютным парам, за несколько лет, и попробуй поработай...
На клиенте, обрабатывающем результат запроса скорее всего будут лютые тормоза...

Ну, форекс-скальперы не живут "несколько лет". =)

Тормоза будут, да. Но мне, хвала суслику, не надо несколько лет. Хотя, я охотно выслушаю альтернативные варианты работы с тиками за длительный период времени. Если оно станет лучше, быстрее и все такое, то почему бы и нет?! =)
 

zipinter

Protester
Коллеги, вы как армянские комсомольцы, ей Богу.. сами придумываете себе трудности, чтобы потом героически их преодолевать) только без обид, я по-доброму шучу)
Вот вам _http://depositfiles.com/folders/RW9WK8S3K"]база Дюковских котировок в формате CSV, уже разбита по годам. Как обращаться с тиковыми котировками в CSV есть полно инфы на просторах

Всем профитов!
 
Последнее редактирование модератором:

TarasBY

Активный участник
Кстати, он не только качает, но и парсит и делает нормальные CSV-файлы (можно в эксель, или еще хоть куда совать) с тиками.
Сергей, если ты писал свой скрипт, то чем тебе готовые решения не понравились, тот же _http://www.strategyquant.com/tickdownloader/ ? Сейчас попробовал им качнуть, сразу встал вопрос (наверно, давно и не раз обсуждался?) откуда в 2003 году пятизнак на Forex инструментах?
 
Последнее редактирование модератором:

Sergey Kovalyov

Элитный участник
Сергей, если ты писал свой скрипт, то чем тебе готовые решения не понравились, тот же Tick Downloader? Сейчас попробовал им качнуть, сразу встал вопрос (наверно, давно и не раз обсуждался?) откуда в 2003 году пятизнак на Forex инструментах?


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

По поводу 5-го знака не скажу. Я качаю за пару лет максимум. Мне за 10 лет не надо. А там не ноль? Значит, какая-то ошибка) Или в данных (так тоже бывает) или в самой проге, конвертит неправильно.

Могу для сравнения скачать какую-то пару за конкретную дату своим скриптом, сравним. =)
 

Sergey Kovalyov

Элитный участник
EURUSD за 2010 год. Сделай *.csv минуток (UTC +0) и мы сравним.


Дату! А не год) И в 2010 уже был пятизнак.

Вот за 2005, 1-е февраля. Таки пятизнак. Странно это.

ps Блин, я тики сделал.
 

Вложения

TarasBY

Активный участник
Дату! А не год) И в 2010 уже был пятизнак.
Для меня важнее корректно нарезанные бары из тиковой истории. Свои наблюдения описал здесь. Именно поэтому для меня интересна тиковая история. Ну, и ещё возможность получать впоследствии (после работы с этой историей в тестере) в МТ4 цены от того же поставщика для торговли.
Поэтому я тебя и попросил нарезать своим скриптом минутки за указанный период.
А что в 2010-ом был пятизнак я в курсе. :)

P.S. Таки за 2005 год историю с 5-ти знаком даёт - волшебненько...
 
Последнее редактирование:

Sergey Kovalyov

Элитный участник
А что в 2010-ом был пятизнак я в курсе. :)
Поэтому я тебя и попросил нарезать своим скриптом минутки за указанный период.


А он не режет. Он минутки и качает) Могу и нарезать, в принципе, но это надо весь год тиков качать, а потом резать. Если ты не передумаешь, то к завтра мож сделаю)

А вот минутки 2010-го года из дюкасовых минуток, если вдруг надо: http://nowhere.kiev.ua/EURUSD.min1.zip
 

TarasBY

Активный участник
А он не режет. Он минутки и качает) Могу и нарезать, в принципе, но это надо весь год тиков качать, а потом резать. Если ты не передумаешь, то к завтра мож сделаю)
Файлы *.csv я без проблем могу сравнить TotalCommander. *.hst можно импортировать в терминал, затем экспортировать данные в *.csv - но этот путь "через задницу". :) Если найдёшь время скачать тиковую историю за 2010 (EURUSD) и нарезать на минутки - буду весьма признателен. У меня годовой архив csv-файла получился размером 4,5 Мега. Сам *.csv 19 Мег.
 

Sergey Kovalyov

Элитный участник
Если найдёшь время скачать тиковую историю за 2010 (EURUSD) и нарезать на минутки - буду весьма признателен. У меня годовой архив csv-файла получился размером 4,5 Мега. Сам *.csv 19 Мег.


http://nowhere.kiev.ua/EURUSD.minutes.csv.zip (4.7M)

В таком виде:

1.43283;1.43283;1.43267;1.43267;1262304003.964
1.43268;1.43285;1.43268;1.43284;1262304069.481
1.4328;1.4328;1.43268;1.4328;1262304126.086
1.4328;1.4328;1.43268;1.43273;1262304182.269

Если надо в другом, скажи)
 

TarasBY

Активный участник
В таком виде:

1.43283;1.43283;1.43267;1.43267;1262304003.964
1.43268;1.43285;1.43268;1.43284;1262304069.481
1.4328;1.4328;1.43268;1.4328;1262304126.086
1.4328;1.4328;1.43268;1.43273;1262304182.269

Если надо в другом, скажи)
Спасибо. Для МТ4 нужно в таком виде:
2010.01.01,00:00,1.43283,1.43283,1.43267,1.43267,104
2010.01.01,00:01,1.43268,1.43285,1.43268,1.43284,51
2010.01.01,00:02,1.4328,1.4328,1.43268,1.4328,47
2010.01.01,00:03,1.4328,1.4328,1.43268,1.43273,74
2010.01.01,00:04,1.43283,1.43283,1.43277,1.43277,90
P.S. Я просмотрел 3000 строк - всё сходится. Остаётся вопрос: Если мы качаем из одного источника (DucasCopy), то почему объёмы разные?
И из чувства любопытства: "Почему ты в своём скрипте при нарезке убрал время???".
 
Последнее редактирование:

TarasBY

Активный участник
Кто-нибудь знает: "API у DucasCopy есть, чтобы котировки on-line забирать?"
 

Sergey Kovalyov

Элитный участник
P.S. Я просмотрел 3000 строк - всё сходится. Остаётся вопрос: Если мы качаем из одного источника (DucasCopy), то почему объёмы разные?
И из чувства любопытства: "Почему ты в своём скрипте при нарезке убрал время???".


Я не время убрал, а объемы (реальные стакановые объемы, а не тиковые). А тиковый ленился считать, мне ж не надо было в метак это все совать. А в последнем поле это и есть время. unixtime. Метак тоже такой формат использует для времени.
 

TarasBY

Активный участник
Я не время убрал, а объемы (реальные стакановые объемы, а не тиковые). А тиковый ленился считать, мне ж не надо было в метак это все совать. А в последнем поле это и есть время. unixtime. Метак тоже такой формат использует для времени.
Понял, Сергей. Спасибо!
 

Sergey Kovalyov

Элитный участник
Про большой депо не понял - объясни.
Через API можно подключиться только к конкретному счёту, а не напрямую к серверу?


К серверу, но надо иметь логин/пароль, и я не проверял, но уверен, что логин/пароль от их торговой платформы тут не подойдет.

В общем, доступ по API дают тем, у кого есть реальный большой счет. Просто так "зашел на сайт, открыл пустой реал счет" не получится.

https://www.dukascopy.com/swiss/english/forex/api/fix_api/fix_api_account/
Minimal Deposit - USD 100.000

Для JForex API надо 10 тыщ, кажется. Лень искать.


То есть, мне непонятно: Если ты готов долбаться с API, то зачем тебе дюкас, когда есть FXOpen, который откроет тебе пустой реал счет просто по запросу? =)
 
Верх