Постов с тегом "Торговые роботы": 6304

Торговые роботы


торговый робот - это автоматизированная торговая система, принимающая решения и отдающая приказы на выполнение рыночных заявок на основе программного алгоритма.

В этом разделе вы найдете самые актуальные записи по теме торговые роботы.

Ранние мысли о втором конкурсе

Доброй ночи, коллеги!

По прежнему сохраняется желание проверить текущие скиллы community на предмет умений в оптимизации / curve fitting.

Первый конкурс не вызвал ровным счетом никакого интереса, поэтому предлагаю поднять ставки.
Думаю, приз в 100 тыс. руб. может вызвать больший интерес. А может быть, и нет.

Стартовые условия почти такие же:
Есть массив минутных баров EURUSD длины, к примеру, 14400 баров (2 недели) в формате OHLC (open, high, low, close) и сколь угодно длинная предыстория для обучения (до 250,000 баров в целом. Думаю, будет более, чем достаточно))))
Требуется подобрать оптимальный линейный индикатор (линейная комбинация предыдущих приращений цен close), который покажет максимум эквити.

На этот раз мы будем работать лимитными ордерам. Подробнее:
1. По итогам бара (и предыдущих баров) считаем индикатор и формируем лимитный ордер на покупку/продажу по цене close
2. Точнее, если индикатор показал значение >=0, то встаем в покупку, если <0, встаем в продажу
3. Индикатор рассчитывается только на основании массива close (это нефатальное упрощение, в противном случае ответ усложится)

( Читать дальше )

Нужны ли тиковые данные для тестирования торговой стратегии?

Из общих соображений максимальной реалистичности тестирования ответ должен быть положительный. Но есть несколько «но».
Первое. Я не знаю примеров торговых стратегий на тиках. Только на свечах-барах — от минуток до дневок. Поэтому, сгрузив с qscalp.ru тики фьючерса на индекс РТС, я конвертировал их в секундные бары. И получил потрясающую доходность на простейшем алгоритме. Лонг по Close каждой чёрной свечи и шорт по Close каждой белой свечи. Увы, этот выигрыш виден только при нулевой комиссии. С комиссией выигрыш превращается в проигрыш.
Так что реагировать на движение цены не то что на тиках, но на секундах — пустой номер.

Второе. Если кто-то  для большей реалистичности захочет тестировать торговую стратегию не по ценам сделок, но по ценам очереди заявок, он может сгрузить эти тиковые данные с qscalp.ru
Но для ликвидных бумаг вроде фьючерса на индекс РТС это будет ловлей блох, т.к. спред очереди заявок таких бумаг равен шагу цены. Т.е. учесть этот спред можно, задав величину проскальзывания сделки.

( Читать дальше )

сравнение yahooparser и yfinance для получения текущей цены в python

 


В предыдущей статье я написал способ где я создал класс, который будет обрабатывать мои запросы для обновления текущего значения некоторых параметров тикера для того, чтобы обрабатывать их в скрипте. 

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

Я заморочился вопросом о том как мне получить цену текущего момента по ЦБ и использовать её в python скрипте. 
Мой первый способ я описал ТУТ   с этого всё и поехало. 

В комментах к предыдущему посту мне предложили, а не проще ли было использовать github.com/ranaroussi/yfinance ? 

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

( Читать дальше )

Забираем данные по ценным бумагам с finance.yahoo.com Python класс в подарок.

 

Забираем данные по ценным бумагам с finance.yahoo.com
Простой способ на Python.

Продолжаю рассматривать способы получения данных по бумагам в свой скрипт. Из предыдущего поста где я рассказывал как можно просто буквально распарсить поисковую выдачу в гугле и вытащить текущие показатели цены я узнал по комментариям уважаемых резидентов смартлаба, что этот способ не будет хорошим решением, в силу особенности использования html тэгов и атрибутов таких как id класса. В конечном итогеid поменяется и скрипт работать не будет. Лучше посмотреть в сторону чего то более долгоиграющего. 


На этот раз я хочу сделать свой скрипт более универсальным. Он должен забирать данные по скормленному ему списку или словарю вот такого вида: 

ticker_list = {'gazp': 'GAZP.ME',
               'sber': 'SBER.ME',
               'tatn': 'TATN.ME',
               'moex': 'MOEX.ME',
               'rosn': 'ROSN.ME',
               'lkoh': 'LKOH.ME',
               'yndx': 'YNDX.ME',
               'nlmk': 'NLMK.ME',
               'alrs': 'ALRS.ME',
               'rual': 'RUAL.ME',
               'magn': 'MAGN.ME'}


( Читать дальше )

Продолжит ли рост ставка на полувагоны?

Ставка на полувагоны интересна в рамках поиска идей в такой компании как Globaltrans. С начала лета вместе с ростом ставок котировки акций уже выросли на 18%. В соответствии с этим встает вопрос, продолжит ли рост ставка и как долго этот рост будет продолжаться.

На данный момент на рост ставки влияют три фактора:
▫️Авария на Транссибирской магистрали
▫️Отложенные перевозки стройматериалов с зимы на весну
▫️Конъюнктура на угольном рынке

Авария:
Движение поездов по Транссибу было остановлено в обоих направлениях из-за обрушения моста между станциями Куэнга и Укурей в Забайкальском крае 23 июля. За неделю мост удалось восстановить и движение было возобновлено, однако, учитывая эффект заторов и отмен, на нормализацию железнодорожных перевозок может уйти более одного месяца.

Несмотря на то, что авария повлияла на рост ставки, все же начало роста было еще до нее, поэтому разбираемся далее

Стройматериалы:



( Читать дальше )

Ранние мысли о конкурсе

Доброй ночи, коллеги!

Есть идея проверить текущие скиллы community на предмет умений в оптимизации / curve fitting.

Первый конкурс предполагается очень простой, поэтому приз — 5,000 руб. Но и задача простая. Можно и поднять ставку, но пока не ясно, зачем?

Есть массив минутных баров EURUSD длины, к примеру, 14400 баров (2 недели) и сколь угодно длинная предыстория для обучения (до 250,000 баров в целом. Думаю, будет более, чем достаточно))))
Требуется подобрать оптимальный линейный индикатор, который покажет максимум эквити.

Эквити маркетная, считается по формуле dEq(t) = (x(t)-x(t-1))*sign(ind(t-1))
Здесь t — время, x — цена
Эквити в целом = сумма приращений эквити (dEq(t)))
Индикатор ind(t) — линейная комбинация приращений цен до момента t (в будущее не заглядываем)
Глубина этой комбинации особо не ограничивается (см. ниже)

Задача — показать максимум эквити на тестовом участке

От участника требуется массив коэффициентов индикатора в формате csv определенной длины (любой до 16000, дабы можно было легко делать верификацию в Excel) и его понимание финреза стратегии на тестовой выборке. В случае аномально большого количества заявок можно ввести символическую плату (100 руб.?) за проверку данных, чтобы отсекать разную лажу. Возможно, я договорюсь с исполнителем и о меньшей цене, благо надо всего лишь вставить массив данных в таблицу и сравнить результат с анонсом. В любом случае, я лично этой хней заниматься не буду.

( Читать дальше )

Торговый оборот в триллион USD и другие достижения библиотеки за пять лет.

    • 03 августа 2021, 13:14
    • |
    • fxsaber
  • Еще

Для MetaTrader 5 написана торговая библиотека MT4Orders.

Начиналось так.

// Список изменений:
// 03.08.2016:
//   Релиз - писался и проверялся только на оффлайн-тестере.

Сегодня библиотеке ровно пять лет. Продолжает развиваться. Перечислим ее достижения.

 

Результаты.

 

  • Открытый и свободно распространяемый исходный код.
  • Самая простая в освоении и использовании торговая библиотека (из публичных) для MetaTrader 5. Не требует своей документации.
  • Позволила без сложностей некоторым авторам написать статьи по практическому применению машинного обучения и прочих торговых методик.
  • Упростила переход от бэктест-версий роботов к боевым.
  • Наивысшая надежность из всех решений для хедж-счетов.
  • Высокая производительность для реальных торговых счетов и бэктестов.
  • Облегчила работу с торговой историей и контроль качества исполнения торговых ордеров: проскальзывания, реджекты.
  • Кроссплатформенная (семейство MetaTrader).
  • Полностью переведена на английский язык усилиями MetaQuotes.
  • Привлекла большое число программистов в соответствующий раздел MQL-Community (одно из самых крупных в мире трейдер-сообщество).


( Читать дальше )

Так ли нужны ли сложные модели рынка? (с) Eugene Logunov

    • 02 августа 2021, 23:57
    • |
    • 3Qu
  • Еще
Так как только избранные могут читать этот топик, а тема интересная, придется прокомментировать заголовок.
С одной стороны, простых моделей не существует в природе, иначе при современных алгоритмах обработки информации они находились бы каждым желающим на раз-два.
Изначально, анализ временных рядов и выявление в нем каких-либо «закономерностей» является оч непростой задачей — на эту тему тома написаны и оч известными в науке людьми. С другой стороны, излишнее усложнение моделей стохастических процессов ведет к неустойчивости таких моделей.
Получается, что с одной стороны, простых моделей не существует в природе, а, с другой стороны, сложные модели существенно неустойчивы, вплоть до полной неработоспособности.
Нужно выбирать где-то посередине, но здесь нам предстоит достаточно сложная работа по выбору системы, т.к. из предыдущего следует, что без дополнительных гипотез ничего явного нам обнаружить не удастся. А гипотезы могут и не оправдаться.)

Парсинг текущего значения цены акций Python.

 
Захотелось реализовать несколько идей для быстрого расчета по позициям акций и  для этого мне нужно было чтобы скрипт на python постоянно получал обновленное значение цены. Например раз в три секунды. Искал решение и нашел похожий пример с парсингом любой информации в интернете на python с применением блиотек requests и beautiful soup, (bs4)


На примере тикера GAZP продемонстрирую как можно спарсить текущий курс (например с гугла.)

 Кому лень читать всё что я тут написал можно скопипастить полный код в конце статьи :)


Парсинг текущего значения цены акций Python.



Для начала нужно установить нужные библиотеки, в консоли пишем : 
 

pip install requests bs4
 

Теперь перейдем к коду. 

Импортируем то, что установилось. Также нам понадобится библиотека time для задержки запросов по времени.

( Читать дальше )

....все тэги
UPDONW
Новый дизайн