Господа, кто-то пилит в этих средах? Поделитесь впечатлениями. Присматриваюсь, потому что «война» с WealthLab и TSLab не дала нужного результата. А писать снова код «с тарелки» не охота. US markets Only.
Нужно услышать человека, который кодит в одной из вышеназванных сред. Для чего? Для того, чтобы понять стоит ли учить язык в языке, или проще писать свой код с нуля. Например, в ТС и WL я не нашел приличного способа склеить арбитражную стратегию, добавить туда свой индикатор и т.п. А посмотрел примеры кода — проще самому написать. Может без такой красивой визуализации, конечно, но зато не придется учить язык в языке.
ПС Я совсем не силен в программировании. Руководил тремя проектами, а сам кодить так и не научился. Но сейчас вроде есть настроение и решение. Поэтому, возвращаясь к теме вопроса, хочу понять — изучать платформы или просто делать свой код под Питоном или Шарпом.
facevalue, какая разница на каком языке писать. Я знаю трейдеров, которые пишут на Basic-6 и встраивают робот в Excel — все работает, как часы. Дело не в языке программирования, дело в сущности стратегии. Вначале надо стратегию довести до стабильной прибыльности, а уж язык программирования — это дело десятое.
KNK, Есть торгуемая руками идея, которую я был уверен, что алгоримизировать тяжело. Пробовали пару лет назад. А сейчас с высоты этих двух лет увидел возможность попробовать закодить вопрос. Склеить — потому что немного нестандартный подход. Не в чистом виде арбитраж, который мы привыкли таковым понимать. Идея родилась на базе одной западной диссертации по арбитражным алгоритмам.
facevalue, что в велсе, что в ТСлабе можно любую стратегию закодить, это до меня не так давно дошло, но и про C# я узнал только 4 месяца назад, а недавно слепил стратегию из кубиков ТСлаба, сторонних индюков и индюков из Велса которые тоже переделал в кубики))
facevalue, в тслабе с помощью кубиков можно повторить любую стратегию из велса, также прописываются формулы и прочее, а что нельзя повторить то можно закодить. Конечно API велса поудобнее будет, иногда тслабовцам хочется в руки плюнуть)) Естественно использовать ТСлаб для оптимизации нормально не получится, но для этого есть велс. С амиброкером не сталкивался, пока не до него.
Иван Тишевской, Ну, началось все с попытки загрузить в эти платформы историю… WL работает под Fidelity, а моя кормушка в IB. В инетах много жалоб по этому поводу.
Потом — с попытки закодить появление джина из бутылки истории двух символов на одном графике и арбитражной математикой поверх них. Потом все тоже самое пытался проделать в ТСЛабе… А потом я забил к чертям, и пошел к QC и S#. Выглядит лучше.
А вы хотите через IB торговать? Т.е. через TWS API запрограммировать? Мы с этим делом столько возились… Наш программист (с большим опытом программирования) возился несколько месяцев, чтобы реализовать в общем-то не сверх сложную торговую логику, чтобы посредством TWS API посылать ордера на NYSE и NASDAQ. Чисто по этой части использование StockSharp преимуществ не дает, поскольку основные трудности в «общении» с TWS, соблюдении кучи ограничений по использованию TWS API от IB и в программировании торговой логики (ушла ли заявка, отслеживание статусов и пр. пр… в синхронном и асинхронном режимах).
Евгений, зависит от характера стратегии, рынка и актива. В общем бэктест проводится портфельно, т.е. одна и та же стратегия тестируется на истории минимум двумя людьми независимо. Чаще всего под каждый случай пишется свой тестер на R, python и C++. Иногда, когда в этом есть смысл, стратегия тестируется во встроенных тестерах (чаще всего это Ниньзя).
Sergey Pavlov, этот путь, к сожалению, ведет к ошибкам и потерям денежных средств. Мы тестируем один код в одной платформе, а торгуем другой код в других условиях. Не говоря уже про удорожание и увеличение по времени разработки идей.
Евгений, пока что этот путь привел нас к внутренним стандартам на разработку, тестирование и к соглашению о том, на какой стадии при каких проверках считать систему заслуживающей торговаться на реальном счете. В остальном полностью с вами согласен, всё также:
Мы тестируем один код в одной платформе, а торгуем другой код в других условиях.
Максим Дмитриевский, потому что на CME, где мы только пробуем свои алгоритмы, по умолчанию как-то с брокером на ниньзе сложились обстоятельства. Для алгоритмов, которые ощутимо медленнее HFT, ниньзя подходит прекрасно: можно подключить хороший датафид (т.е. сохранять себе хорошие данные для исследований в R), можно оттестировать стратегию (проверить самого себя, что натестировалось в R) ну и потом всё это одним кликом запустить на реале. Плюс ниньзя позволяет автоматически отслеживать контроль соответствия реальной и виртуальной позиции по счету. Для простеньких стратегий это актуально. С метатрейдером сейчас вообще не работаем, хотя лично я начинал с него в 2003-2008 годах… писал полностью автономных ботов на MTAPI3, потом в четвертой версии они API прикрыли ну и моя форекс-история закончилась на этом, перешел тогда полностью на отечественную биржу. На ней не вижу пока особого смысла в МТ. Квик меня полностью устраивает. Возможно, MQL — шикарная вещь, хотя я на MQL ни одного скриптика не написал:) Если вам известны из практики какие-то явные бонусы от сегодняшнего МТ, подскажите, буду благодарен:)
Sergey Pavlov, я как раз сам интересовался ниньзей, потому что хочу достаточно быстрый алгоритм протестировать, который в мт4 плохо тестируется. Но вы уже ответили что ниньзя для этого тоже не подходит :)
Sergey Pavlov, Хм… Принял на заметку… Фьючи планирую перевести на OpenECry (GAIN Capital). А вот NYSE/NASDAQ да, через TWS API. С геморроем по этому поводу знаком не по наслышке. ) Но через FIX реализовали торговый модуль, работает.
Дело в новом бектестере, который не подходит ни под один из тех движков, которые есть. Они все кастомные, написаны чужими руками. Хочу сам попробовать закодить.
мне s# + quik нравится. если хочешь что-то завести за 10-20 минут то это самое оно. если тебе решать бизнес задачи, то рекомендую, а если хочешь высоко-технологического онанизма то тебе модные шлюзы от биржи, прямое подключение и т.д. со вторым товарищем не знаком.
есть, Модные шлюзы и DMA давно «закожен». А вот все бектестеры были кастомными. Сейчас нет специалиста, который писал БТшки. Хочу сам попробовать. Но по рекомендации одного человека вроде нашел то, что искал — AmiBroker. S# пока что сложен для меня. Пока что.
бросил и С# и S# на полпути, пока не понял зачем мне они. хотя и S# лицензия и VS 2015 prof есть. и на камнях растут деревья, главное стратегия, потом уже все остальное. у меня вон акцессе нормально все работает.
kvazar, Стратегия есть. Торгуется руками. Раньше пробовали закодить, не получалось. Было нагромождение из разных индикаторов и оптимизаторов, которые показывали уникальные результаты на бектестах, а в реальной жизни сливали десятку за месяц на объемах до 500 шерз. ))) Поэтому уже больше года торгуется руками. А сейчас вроде пришел к алгоритму благодаря одной пендосской диссертации, которую удалось получить тут в профессиональных кругах по арбитражу.
facevalue, понятно. я до арбитража не дорос. копаю в лоб интрадэй. и тестирование по тикам историческое не вижу у себя смысла проводить, если используются алгоритмы на тиках. тестирование в реале, и так понятно что к чему.
Только странно, что стратегию закодить не получалось… какой таймфрэйм если не секрет или без него?
kvazar, Арбитраж, как по мне, только громко звучит. На самом деле — золотое дно для ленивых. Тиковые данные там не нужны, это правда. Разве что для вспомогательного алгоритма выхода или входа, основанного на тиковых облаках, но это из другой истории. Если, как Вы выражаетесь, в лоб, то минутных данных с головой.
Таймфрейм разный. На быстрых инструментах, волатильных — я бы даже на минутки посмотрел, хотя базовый ТФ все таки 5-10-15 минут. Не так шумит. На ленивых или сильно скоррелированных (типа, близкая и дальняя нефть) можно и часовики смотреть. Но пока что я все это руками в режиме сапки посмотрел. Нужен код и грамотный бектест.
Закодить не получалось, потому что не хватало кое-каких вводных данных. Хотя когда я сейчас про них узнал, то это был эффект БЛЯЭТОЖЕОЧЕВИДНО. ))) Не дорос тогда до арбитража, хотя был ппц как близко, просто не знал об этом. Тогда в команде работало два программиста, я только выдумывал им задания. )
Изучи Си шарп(приятный язык)… его поймешь, сможешь и на С++ писать и на яве… отсюда все дороги тебе открыты… лучше конечно писать самому с нуля но это долго, короче взять стокшарп, еще короче писать скрипт для ТСЛАБА к примеру(или альтернативная платформа) — не кубивами, а скрипт!!! Это вообще быстро будет… Ну и следующий вопрос конечно… идея есть — отлично… далее-твоя идея к скорости требовательна или нет? или может тебе нужна кроссплатформенность(всмысле конекторов и брокеров), исходя из этого и выбираешь себе на чем писать и через какую прослойку работать.
Юрий Елисов, Благодаря Вам сделал выбор в пользу S# для разработки роботов, и буду разбираться с какой-то из лабов для тестирования. Осталось только найти голову, с которой начать. ) Потому что подход к программированию «сразу все» не получился… ))) Голова быстро закипает.
Yuri Chebotarev, Добиться освобождения Крыма! )))
Нужно услышать человека, который кодит в одной из вышеназванных сред. Для чего? Для того, чтобы понять стоит ли учить язык в языке, или проще писать свой код с нуля. Например, в ТС и WL я не нашел приличного способа склеить арбитражную стратегию, добавить туда свой индикатор и т.п. А посмотрел примеры кода — проще самому написать. Может без такой красивой визуализации, конечно, но зато не придется учить язык в языке.
ПС Я совсем не силен в программировании. Руководил тремя проектами, а сам кодить так и не научился. Но сейчас вроде есть настроение и решение. Поэтому, возвращаясь к теме вопроса, хочу понять — изучать платформы или просто делать свой код под Питоном или Шарпом.
Иван Тишевской, Ну, началось все с попытки загрузить в эти платформы историю… WL работает под Fidelity, а моя кормушка в IB. В инетах много жалоб по этому поводу.
Потом — с попытки закодить появление джина из бутылки истории двух символов на одном графике и арбитражной математикой поверх них. Потом все тоже самое пытался проделать в ТСЛабе… А потом я забил к чертям, и пошел к QC и S#. Выглядит лучше.
Все остальное написал выше.
Дело в новом бектестере, который не подходит ни под один из тех движков, которые есть. Они все кастомные, написаны чужими руками. Хочу сам попробовать закодить.
Только странно, что стратегию закодить не получалось… какой таймфрэйм если не секрет или без него?
Таймфрейм разный. На быстрых инструментах, волатильных — я бы даже на минутки посмотрел, хотя базовый ТФ все таки 5-10-15 минут. Не так шумит. На ленивых или сильно скоррелированных (типа, близкая и дальняя нефть) можно и часовики смотреть. Но пока что я все это руками в режиме сапки посмотрел. Нужен код и грамотный бектест.
Закодить не получалось, потому что не хватало кое-каких вводных данных. Хотя когда я сейчас про них узнал, то это был эффект БЛЯЭТОЖЕОЧЕВИДНО. ))) Не дорос тогда до арбитража, хотя был ппц как близко, просто не знал об этом. Тогда в команде работало два программиста, я только выдумывал им задания. )