Блог им. kramin

Автоматизация от Левши.

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

Ожидаю, что кул-хакеры обвинят меня в раздолбайстве и плохом стиле, но задача решена — робот успешно торгует. А штука получилась вот такая.
Робот делает скриншот окошка Метастока, и потом парсит получившийся jpeg на предмет наличия на нем сигналов эксперта. Конечно, при этом, приходится получать текущие котировки из терминала для постановки заявок, и вообще все что связано с контролем позиции никто не отменял.

Так что, если вы тоже столкнетесь с такой проблемой, как использование сигналов от экспертов с закрытым кодом — можете воспользовать моим рецептом.
 
Возможно есть более изящное решение через какое-нибудь API Метастока (можно ли там экспортировать сигналы от закрытых экспертов?), но подход который я использовал, позволяет решить задачу очень быстро и эффективно, а главное повторно использовать его для широкого класса систем.

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

Пишите в скайп: artem_kramin
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
36 | ★6
15 комментариев
Так многие роботов для покера делают, все работает отлично :)
avatar
Evgeny, вы будете смеяться, но мне эта мысль в голову пришла именно со стороны покера. Я где-то год назад делал покер-бота именно на основе такого принципа (вот даже на смарт-лабе писал про это smart-lab.ru/blog/11333.php), и поэтому подумал, что готовые наработки можно тут использовать.
но в трейдинге слышу про такое первый раз, круто, зачёт
avatar
Артем с твоим стаканом замучился в квик хрен поставишь на винду 7 поставил другой стакан…
Михаил Ростов Папа, удачной торговли )
Артем Крамин, спасибо чудо — Левша… а за стакан спасибо… потому что бесплатный…
Михаил Ростов Папа, на начальном этапе вообще не принципально нужен. Можно просто настроить хоткеи купить по рынку/продать по рынку и этого будет достаточно.
Михаил Ростов Папа, аналагична, хотя стакан понравился, ибо компактный и функциональный.
avatar
Логично предполжить, более надежное и быстрое решение — доступ к контролам метастока через нативные вызовы с использованием Managed Windows API — mwinapi.sourceforge.net/.
Sergey Masyura, вот-вот я же и говорю, что есть более надежные методы )
sam063rus, честно говоря я не верю в возможность точного описания торговой системы на основе ее сигналов. Иначе все стратегии победителей ЛЧИ давным-давно были бы вскрыты.
sam063rus,
1. ida — дизассемблер, выдает ассемблерный код, на с++ похож мало, но переходы хорошо визуализирует. Ничего сама по себе не ломает, ломают умелые руки :)
2. Думаю дизассемблирование и реверс-инженеринг ограничены лицензией метастока и являются нарушением законодательства.
3. По выходным сигналам невозможно точно востановить исходный алгоритм, затея бестолковая.

Читайте на SMART-LAB:
Фото
Обновление терминала БКС: улучшена форма заявки и дополнен виджет котировок
Новое в веб-терминале БКС: улучшена форма заявки и дополнен виджет котировок    В свежем обновлении улучшили работу с заявками и...
Фото
📊 Ресейл Инвест: статистика и развитие платформы
Платформа «Ресейл Инвест» продолжает активно развиваться и набирать обороты внутри экосистемы «МГКЛ». С начала 2026 года на платформе...
Фото
Витрина облигаций
Рубль на максимумах: время фиксировать доходность в валюте? ↗️ Национальная валюта укрепилась до уровня 10,8 рублей за юань, вновь...
Фото
Хэдхантер. Отчет МСФО за Q1 2026г. Всё будет непросто…но…есть надежда.
Вышли финансовые результаты по МСФО за Q1 2026г. от компании Хэдхантер: 👉Выручка — 9,49 млрд руб. (-1,5% г/г) 👉Операционные расходы —...

теги блога Артем Крамин

....все тэги



UPDONW
Новый дизайн