Запад хочет джаву потому, что там умеют считать деньги: забить стойку серверов с линуксами для ресеча — это затраты только на железо и свой торговый софт.
А забить стойку серверами с виндой — значит приплюсовать к этому огромные расходы на ОС + тратиться на обновки каждые два-три года.
Ну если нужны библиотеки и разработка вне платформы то питон для него безконкурентно есть финмата. Плюсы актуально лишь для быстротрейдеров где милисекунда это дофига
Дар Ветер, просто из любопытства, нафига библиотеки при разработке робота? Матана в рамках робота я думаю хватает в библиотеках на любом языке.
По существу вопроса у C# вижу большой минус в виде vendor-lock-in и слабую кросс-платформенность. Для себя предпочел бы комбинацию Си/C++/Haskell по мере снижения требований к скорости.
Displacer, я тоже не знаю, все что может понадобиться и сверх того есть равнозначно что в дотнет что в джава EE. Вот если нужны такие штуки как ML, готовые механизмы обработки статданных — то или питон или R. Но это больше для моделирования, для трейдинга не супер. Если работать через API то лучше опять же или дотнет или джава.
По моему опыту управления проектами и их стоимостью, для большинства задач проще взять железо сильнее чем пытаться работать с более низкоуровневыми системами. Отдача от среды ускоряющей и упрощающей разработку гораздо выше, чем от попытке сделать самый оптимальный код.
Дар Ветер, ну так то да, в любом случае, жаву и дотнет бы не рассматривал, ибо тормоза от виртуальной машины и vendor-lock-in, а в случае с c# еще и недружественность к линуксу. С питоном особо не хочется вообще иметь дело, также тормоз + язык постоянно в доработке, как я наблюдаю, бета-тестером быть не хочется. Так что остается то, что я уже называл выше, ну и да, к R тоже отношусь положительно.
PS: кстати говоря в Quik-e народ грамотно сделал плагины на Lua. Сам то Quik полный шлак, но то, что можно с ним работать через Lua — очень грамотный ход, для народа, кому что-то надо побыстрому написать и кто не слишком большой профессионал думаю очень удобно.
Displacer, такое чувство, что у вас опыт 15-летней давности. Торговая платформа Интерактив написана на джаве целиком. Отлично работает. Тоже самое — у Дукаскопи. Квантопиан работает на питоне и они явно знают что делают — платформа номер один в мире для количественного анализа. Что-то вы видимо не с того конца смотрите )) Может i386 пора обновить опять же )
Дар Ветер, ну так то понятно, когда берется ентерпрайз, надо собрать кучу индусов и заставить их по быстрому закодить какой-то конечный продукт, чтобы выкинуть на рынок раньше всех, то да, появляются различные франкенштейны на жаве и дотнете, которые ценой неимоверных усилий уже потом удается допилить до приемлемого состояния наймом уникальных специалистов по конкретному языку за магабаксы денег. Впрочем, опыт действительно у всех разный, каждому своё. Может я со своим хаскелем и в самом деле отстал от жизни ;)
С питоном особо не хочется вообще иметь дело, также тормоз + язык постоянно в доработке
Displacer, питон — довольно зрелый язык, куча всего публичного на нём работает, включая многие высоконагруженные сервисы GOOG (это к вопросу о тормозах)
Lev, ну да, ну да, зрелый язык. У меня в системе в слотах аж три варианта стоит этого «зрелого языка» — (2.7) (3.4) (3.5) и на подходе (3.6). Каждый нужен для какой-то софтины. Регулярно приходится запускать python-updater.
Displacer, на сколько серьезным может быть этот минус — «vendor-lock-in и слабую кросс-платформенность», где, на каком этапе разработки это может вылезти.
Freman, Microsoft создал уже кучу годового кода. Оформил это все в библиотеки и назвал это .Net. То есть, чтобы создавать сложные приложения, нужно затратить минимум усилий. dagh наверное это имел ввиду.
просто сейчас изучаю Java, Python. заинтересовала тема торговых роботов, и везде пишут С#, можно ли написать ТС на джаве, почему лучше использовать С#, а не Java?
уточню свой вопрос. 1 этап:
— торг. платформа QUIK,
— есть небольшой депозит который не жалко потерять, на котором хочу экспериментировать, учиться писать робота,
— супер пупер скорость пока не нужна (С++ отменяется)
— количество сделок небольшое (для начала главное не кол-во а качество)
— торговля не с сервера, не с колокации а с домашнего ПК, с перспективой дальнейшего переноса на сервер поближе к бирже (2 этап)
— основные цели 1 этапа
1. научиться качественно писать ТС, стратегию, бэктестинг, понять как работает система: ТС-брокер-биржа.
2. изучить ЯП на котором можно будет найти работу джуном, и дальше развиваться в направлении- «программирование + трейдинг».
как то так =)
Freman, самый оптимальный вариант — это с# и коннектор от s#… В этом случае вы экономите кучу времени… и сможете работать над стратегией, а не писать кучу «вспомогательного» софта...
Ко мне на блог synapseslot.ru для интереса сходите…
Ранее за бугром корпоративный стандартом был java + Oracle. Сейчас не знаю. У нас все сидели на платформах от Microsoft, поэтому писали на С++, а потом перешли на С#, так как легко было это сделать.
Поэтому если Вы в Роcсии, то пишите на С# — нормальный универсальный язык, если будете писать для зарубежных платформ, то познакомиться с javа придется.
Да и не забудьте, что поднимает голову Linux, там есть С++ и java, C# там нет. Как впрочем и Квика под Linux тоже пока нет, наверное.
Мне С# показался понятней чем ява, на нем я несколько больше сумел напрограммировать =)
Запад хочет джаву потому, что там умеют считать деньги: забить стойку серверов с линуксами для ресеча — это затраты только на железо и свой торговый софт.
А забить стойку серверами с виндой — значит приплюсовать к этому огромные расходы на ОС + тратиться на обновки каждые два-три года.
По существу вопроса у C# вижу большой минус в виде vendor-lock-in и слабую кросс-платформенность. Для себя предпочел бы комбинацию Си/C++/Haskell по мере снижения требований к скорости.
По моему опыту управления проектами и их стоимостью, для большинства задач проще взять железо сильнее чем пытаться работать с более низкоуровневыми системами. Отдача от среды ускоряющей и упрощающей разработку гораздо выше, чем от попытке сделать самый оптимальный код.
PS: кстати говоря в Quik-e народ грамотно сделал плагины на Lua. Сам то Quik полный шлак, но то, что можно с ним работать через Lua — очень грамотный ход, для народа, кому что-то надо побыстрому написать и кто не слишком большой профессионал думаю очень удобно.
Displacer, питон — довольно зрелый язык, куча всего публичного на нём работает, включая многие высоконагруженные сервисы GOOG (это к вопросу о тормозах)
На C# уже в биржевой среде создана вся инфраструктура. Поэтому легко внедрить робота на C#.
Можно и на JAVA, что дороже и дольше. А важен в конечном итоге результат, а не на чем написано.
у одних преобладает java у дргих c#
— торг. платформа QUIK,
— есть небольшой депозит который не жалко потерять, на котором хочу экспериментировать, учиться писать робота,
— супер пупер скорость пока не нужна (С++ отменяется)
— количество сделок небольшое (для начала главное не кол-во а качество)
— торговля не с сервера, не с колокации а с домашнего ПК, с перспективой дальнейшего переноса на сервер поближе к бирже (2 этап)
— основные цели 1 этапа
1. научиться качественно писать ТС, стратегию, бэктестинг, понять как работает система: ТС-брокер-биржа.
2. изучить ЯП на котором можно будет найти работу джуном, и дальше развиваться в направлении- «программирование + трейдинг».
как то так =)
Ко мне на блог synapseslot.ru для интереса сходите…
Поэтому если Вы в Роcсии, то пишите на С# — нормальный универсальный язык, если будете писать для зарубежных платформ, то познакомиться с javа придется.
Да и не забудьте, что поднимает голову Linux, там есть С++ и java, C# там нет. Как впрочем и Квика под Linux тоже пока нет, наверное.
Только зарегистрированные и авторизованные пользователи могут оставлять ответы.
Залогиниться
Зарегистрироваться