Ответы на вопросы | Какой язык программирования выбрать для торговой системы?
Хочу выгрузить исторические данные из Quik, проверить парочку гипотез, потом реализовать систему сигналов на buy\sell.
Какой язык программирования выбрать для торговой системы? Хочу выгрузить исторические данные из Quik, проверить парочку гипотез, потом реализовать систему сигналов на buy\sell.
Интересуют какие-нибудь тематические статьи с «best practises» чтобы иметь какую-то базу для начала. Как выгружать данные из Quik, как транслировать данные в реальном времени, простейшие примеры работы с данными.
Как красиво отображать сигналы на покупку\продажу прямо на графике цен.
Вообщем нужен FAQ как первоначально настроить все это дело, какие библиотеки удобные есть для трейдеров, дальше уже сам разберусь с языком программирования и документацией.
Понимание всего остального придет лишь с опытом своей торговли.
А мне нужно просто пару ссылочек, с «лучшими практиками» на тему, чтобы я мог базу откуда-то взять, а дальше доработать под свои желания.
2) вы можете в реальном времени выгружать данные через odbc и dde с квика.
3) графически красиво оформлять сигналы вы можете через qlua с помощью графических меток на графике
4) так же сигналы можно оформлять в виде своего индикатора на qlua
5) выгружать данные не обязательно, если алгоритм простой, вы просто можете воплотить его на qlua и не придется никуда выгружать данные. Обрабатывайте их в реальном времени.
Нашел пару уроков, посмотрим как пойдет. Жалко конечно, что никто не посоветовал конкретных уроков.
Для начала поставлю себе такую простую задачу:
Анализ объемов сделок по 1 инструменту. Выдавать сигнал если: объем превышает медиану объемов за прошлые N периодов. Проверить нужно на таймфреймах: 15 минут, 1 час, 4 часа, день.
Поясню, я обычно изучаю языки программирования так: нахожу пример простейший, ставлю среду разработки, пытаюсь запустить пример. Мне нужно в живую посмотреть\пощупать среду, чтобы прочувствовать её.
Далее когда я уже убедился, что хотя бы «Hello Wold» запускается, я начинаю серьезно читать документацию, изучаю особенности языка и прочее.
1) обкатал свою идею на сторонних тестерах: mt5, tslab (тестирование бесплатно) и тд
2) реализовал бы систему сигналов на основе тестов в реальном режиме на qlua
меня смущает что в qlua нет отладчика стандартного, даже если я проверю свою идею на tslab, «перенесу» ее на Qlua, то могут вылезти ошибки в момент переноса кода.
Есть какие-то сторонние отладчики, но ковырять их отдельный геморр скорее всего)
Если делать на Qlua, то в Quik нет тестировщика. По любому придется сначала присать на любой из указанных выше, тестировать и потом переписывать на Qlua.
1. В Quik тестировщика стратегий нет.
2. Платить 1600 руб. в месяц за TSlab, если торгуете. Тестирование в TSLab бесплатно.
При реальной работе в QUIK для большинства приложений скорее всего будет достаточно расширения LUA для QUIK — QLUA. В документации на QUIK есть информация.
Для отображения сигналов вполне можно использовать механизм меток, но можно сделать и свой полноценный индикатор, как и штатные.
Я думаю для начала хватит 3-5 тысяч свечей. Для часового графика это данные за целый год и даже больше. А если понадобится анализировать сезонность, тогда да… придется искать другие источники данных.
Посмотрю документацию QUIK спасибо.
1. Если рассматривать первый вариант, то делаете экспорт в Excel и на VBA пишете код который будет он-лайн что-то проверять и выдавать сигнал
2. Если с R то либо забираете данные из открытых источников (mfd, finam) или же тоже через Quik который будет писать или в файлы или в БД, и оттуда уже читаете R, и снова все проверяете.
Достоинства Excel+VBA что достаточно прозрачно и понятно,
а достоинство с R что есть фин. пакеты в которых уже много чего реализовано.
Так мой робот-советник работает по первому варианту
smart-lab.ru/blog/175461.php
а на R сделан анализ сделок ЛЧИ
smart-lab.ru/blog/281094.php
так что все можно реализовать и так и эдак
Спасибо всем) Плюсики пока ставить не могу.
Так что учтите это в своей разработке. Если вы строите свой анализ на data mining approach (вектор входов вектор выходов, data.frame ) или у вас все прям все векторизованно то ок, в противном случае могут возникнуть некоторые трудности на преодоление которых уйдет лишнее время
yadi.sk/d/EPpvKmlakfWnU
Создаем в каталог QUIK подкаталог Luaindicators, переносим туда файл !volmid.lua. Берем любой инструмент, в окно объема добавляем индикатор (!volmid). В списке он будет где-то вверху. Лучше на минутках. Смотрим на поведение. Period для начала лучше взять равным 1.
Кстати какую среду разработки выбрать, с ништяками типа подсветкой синтаксиса ит.д.? Через блокнот мне пока рано писать.
habrahabr.ru/company/itinvest/blog/271493/