Мобильный трейдер
Описание проекта
Отзыв заказчика
ЗАО «Инвестиционная компания «ФИНАМ» позитивно оценивает опыт своего сотрудничества с ЗАО «Грамант». Мы отмечаем профессионализм ее сотрудников, способных качественно воплощать самые сложные и наиболее современные решения на высоком уровне. Команду ЗАО «Грамант» отличает нацеленность на результат, ответственность, очевидный интерес к своему делу и высокая оперативность при решении возникающих задач.
В объективности наших оценок может убедиться любой желающий, ему достаточно просто установить «Мобильный трейдер» — инновационную платформу для торговли ценными бумагами через интернет при помощи мобильного телефона. Данное решение, разработанное ЗАО «Грамант» для ЗАО «ФИНАМ», до сих пор не имеет прямых аналогов в России. Его востребованность сразу же оказалась на высоком уровне, уже в первые месяцы эксплуатации «Мобильный трейдер» скачали несколько тысяч пользователей.
Инвестиционная компания «ФИНАМ» рекомендует «Грамант» как команду сильных профессионалов и надежного партнера. Мы с радостью продолжим работу с ним в рамках текущих и новых проектов, направленных на развитие российского фондового рынка.
Описание проекта
Мобильный трейдер — приложение, разработанное для компании Финам, позволяющее управлять инвестиционным портфелем с мобильного телефона. Возможность оперативно получать информацию об изменении курсов акций, а также реагировать на них существенно повышает мобильность клиентов компании заказчика. На сегодняшний день подобное приложение не имеет аналогов в России.
Вся информация передается по защищенным каналам, обеспечивая конфиденциальность данных
и индикаторов
Возможности
— Взаимодействие с биржей, выставление заявок на покупку/продажу
— Отображение текущих котировок
— Технический анализ с помощью графиков и индикаторов
— Лента биржевых новостей
Технологии
— Клиентское приложение — платформа J2ME
— Формат передачи данных — XML
Case study
Проект: | Мобильный трейдер |
Заказчик: | компания Финам |
Сроки: | июль 2008 — март 2009 |
Технологии: | 2ME, XML, SSL |
Основные этапы проекта:
Разработка ТЗ, технической спецификации, протокола взаимодействия с биржей
Разработка дизайна
Начало активной стадии разработки
Закончена первая версия для телефона Nokia
Закончены версии для телефонов Samsung и Sony Ericsson
Завершение проекта
Система «Мобильный трейдер» официально анонсирована
Начало массовой эксплуатации системы
Проект «Мобильный трейдер» стал нашим первым опытом в области разработки приложений для мобильных телефонов. Несмотря на большой опыт в построении систем на платформе Java, мобильные технологии до этого момента обходили нашу команду стороной.
Сложности этого проекта были понятны с самого начала:
— Отсутствие у нас достаточной экспертизы в области мобильной разработки
— Серьезные требования по безопасности и надежности, все-таки речь шла о финансовых данных
— Невысокая скорость каналов передачи данных, возможные потери связи
Первую проблему (отсутствие опыта) удалось решить, пригласив консультанта по разработке мобильных приложений. Оставшиеся проблемы мы надеялись решить за счет большого опыта создания различных систем для бизнеса, в том числе финансовых, где вопросы безопасности и надежности всегда стоят на первом месте.
Основные этапы проекта:
Несмотря на то, что компания Sun Microsystems распространяет данный слоган на всю платформу Java, известно, что в случае ее «младшей сестры» — J2ME это, к сожалению, не верно. Каждый производитель мобильных телефонов имеет свою реализацию виртуальной машины Java, а зачастую даже несколько реализаций, для разных моделей телефонов, в зависимости от их технической оснащенности и операционной системы. Это приводит к тому, что для корректной работы приложения на всей линейке аппаратов, его нужно «дорабатывать напильником» под каждую конкретную модель.
У каждого производителя телефонов есть модели, которые очень похожи друг на друга по техническим характеристикам (объем памяти, частота процессора, версия операционной системы и пр.). Эти модели образуют так называемые «группы совместимости». Производители утверждают, что если приложение работает на одном телефоне группы, то оно будет работать и на всех других аппаратах, входящих в нее. Тем не менее, таких групп может быть довольно много, поэтому работу приложения необходимо проверять на большом числе аппаратов.
Поскольку в распоряжении нашей команды не было достаточного числа телефонов для проведения тестирования, было решено что результатом нашей работы станут три базовые версии приложения для различных телефонов. Дальнейшую работу по расширению линейки поддерживаемых аппаратов должны были выполнить наши партнеры — компания, которая специализируется на портировании мобильных приложений. В качестве эталонных были выбраны телефоны Nokia 6300, Sony Ericsson T700 и Samsung E200. При выборе мы старались охватить модели различных производителей, а также аппараты с различным разрешением экрана. Также учитывались данные рынка о популярности тех или иных телефонов.
Интерфейс и дизайн
Разработка интерфейса — важнейшая задача при разработке любой системы, тем более, когда речь идет о мобильном приложении. Мобильные телефоны имеют небольшой экран (в нашем случае, предполагалось, что минимальное разрешение будет 176х220), что накладывает дополнительные ограничения. На небольшом пространстве нужно не просто разместить все элементы интерфейса, но и сделать работу с ними максимальной удобной для пользователя.
Работа над интерфейсом началась с проектирования структуры экранов будущего приложения
Очень важно правильно подобрать цвета, чтобы изображение было контрастным. Каждый эскиз нужно просматривать на экране настоящего телефона (лучше нескольких), поскольку яркость и контрастность компьютерного монитора сильно отличается от экранов телефонов. Также при разработке дизайна очень важно пользоваться шрифтами, которые установлены в телефоне, поскольку в противном случае будут гарантированные проблемы с размещением текста внутри блоков.
Универсальная версия приложения
Ранее отмечалось, что нашей задачей являлась разработка приложения для трех «базовых» моделей телефонов, причем эти аппараты имели разное разрешение экрана. Существует несколько вариантов решения этой задачи, простейшим из которых является создание трех независимых версий приложения, по одной для каждого аппарата. Однако, с точки зрения дальнейшего развития и поддержки, этот вариант крайне нежелателен. Нами было принято решение о разработке специальной библиотеки универсальных элементов интерфейса, которые динамически меняют размер в зависимости от разрешения аппарата, на котором запущено приложение. Такой подход несколько увеличивает первоначальный объем работы, но позволяет значительно сократить время на поддержку в будущем, а также упрощает портирование. В результате у нас получилась единая версия, которая работала не только на трех заявленных аппаратах, но и на достаточно большом числе совместимых с ними моделей.
Взаимодействие с биржей
Мобильный трейдер взаимодействует биржей через сервер компании Финам, которая выступает в роли брокера. По соображениям безопасности, изменениями серверной части занимались инженеры компании заказчика. С нашей стороны требовалось разработать протокол для взаимодействия мобильного трейдера с удаленным сервером, реализовать клиентскую часть, а также провести общее тестирование. Протокол должен быть предусматривать аутентификацию пользователя и поддержку сессий. Также хотелось минимизировать объем передаваемого трафика, для повышения скорости работы.
В качестве формата передачи данных был выбран XML
В качестве транспорта — HTTPS
Таким образом, мы обеспечили безопасность передаваемых данных, а также простоту интеграции с внешними источниками, например, новостной лентой или котировками.
Поддержка протокола SSL на мобильных телефонах
Спецификация J2ME предусматривает полную поддержку алгоритмов шифрования и работу по защищенному соединению. Однако, как известно, протокол SSL требует наличия у клиентской стороны сертификата, выданного удостоверяющим центром (trusted authority) для аутентификации сервера. На сервере использовался сертификат, выданный компанией Thawte — одним из крупнейших удостоверяющих центров. К сожалению, в процессе разработки выяснилось одна неприятная особенность, связанная с телефоном Samsung E200, выбранного в качестве одного из базовых аппаратов. Согласно документации, данная модель содержит все необходимые сертификаты. Однако при детальном изучении вопроса выяснилось, что хотя эти сертификаты действительно присутствуют в телефоне, пользоваться ими может только встроенный в аппарат браузер. Остальные приложения не имеют к ним доступа, а также не могут устанавливать собственные сертификаты для работы по защищенному соединению.
Более того, получить информацию о том, какие аппараты, производимые компанией Samsung, содержат необходимые нам сертификаты, также не удалось. Согласно информации представителей компании на официальном сайте разработчиков, документации на этот счет в принципе не существует.
Для решения этой проблемы было опробовано несколько способов, в частности был опробован вариант использования внешней библиотеки для поддержки шифрования, однако в этом случае мы уперлись в ограничение по объему для приложений, устанавливаемых в данный аппарат.
В результате, было принято решение отказаться от поддержки телефона Samsung E200 и заменить его на аппарат Samsung SGH-D820, который по имеющейся у нас информации, позволял внешним приложениям работать с установленными в нем сертификатами.
Про документацию и поддержку сообщества разработчиков
С телефонами Nokia и Sony Ericsson проблемы, описанной в предыдущем абзаце, не было. Отдельно хочется сказать добрые слова в адрес компании Nokia, которая не только предоставляет саму подробную документацию на свои аппараты, но и всячески поддерживает сообщество разработчиков. Так, например, Nokia — единственный производитель, который предоставляет программу-эмулятор для PC, реализация которой полностью соответствует телефонной реализации. Аналогичные программы остальных производителей — не более чем «разработка для галочки», использовать их для работы — невозможно. Помимо этого, Nokia поддерживает форум для разработчиков, который содержит наибольшую базу знаний, в том числе и по телефонам других производителей.
Итого
В конце февраля состоялся официальный анонс Мобильного трейдера, с начала мая приложение эксплуатируется в боевом режиме.
Мобильный трейдер наращивает популярность
Инвестиционная компания «ФИНАМ» подвела итоги развития системы «Мобильный трейдер» в июне. Платформа для торговли акциями при помощи сотового телефона продолжила наращивать популярность – среднее количество ее пользователей в будние дни составило почти 1,5 тыс. человек. Наиболее активно используемым инвесторами телефоном оказался Nokia 6300. Эту модель применяют 31,5% пользователей системы «Мобильный трейдер».
В целом, система «Мобильный трейдер» сохранила высокие темпы развития. По итогам месяца она была скачана более 12 тыс. раз, что в 2,4 раза больше показателей мая. Среднее число инвесторов, использующих торговую систему, выросло почти в три раза – по будням, когда идут биржевые торги, этот показатель в среднем составлял около 1,5 тыс. человек. В выходные, когда «Мобильный трейдер» применяется, в основном, для просмотра финансовых новостей, данный показатель оказался заметно меньше – 100-150 человек в день. По прогнозам «ФИНАМа», высокая динамика «Мобильного трейдера» во втором полугодии сохранится. В ближайшие месяцы она будет стимулироваться выходом новой версии системы, которая позволяет работать с короткими позициями, а осенью – общим ростом активности после завершения сезона отпусков.
Объем торгов через систему «Мобильный трейдер» в ноябре превысил 2 млрд. рублей
ИК «ФИНАМ» подвела итоги работы торговой системы «Мобильный трейдер» в ноябре. В прошлом месяце объем биржевых сделок, которые клиенты инвестиционной компании совершили при помощи своих сотовых телефонов, составил 2,063 млрд. рублей. Это абсолютный рекорд для платформы «Мобильный трейдер». Так, с 1 июня по 31 октября 2009 года совокупный оборот торгов через данную систему составил 6,566 млрд. рублей.
За последние месяцы интерес к «Мобильному трейдеру» сохранялся на стабильно высоком уровне. Так, если летом производилось примерно 30 тысяч подключений к системе в месяц, то в ноябре соответствующий показатель достиг 53 тысяч, а в декабре ожидается его рост до 60 тыс. подключений. При этом пользователями «Мобильного трейдера» являются не только клиенты инвестиционной компании «ФИНАМ». На них приходится всего 54% подключений, в то время как оставшиеся 46% занимают неклиенты. Хотя они и не могут совершать операции с акциями через «Мобильный трейдер», он активно используется как информационное приложение, бесплатно предоставляющее разнообразные финансовые данные, а также для участия в учебных торгах.