Использование Машинного Обучения в торговых системах. Реализация.

    • 18 января 2021, 22:58
    • |
    • 3Qu
  • Еще
В топике Использование Машинного Обучения в торговых системах. Простейшее применение описаны принципы построение логики ТС с применением Машинного Обучения (МО). Вкратце опишем пути реализации.
Это уже посложней — нам понадобятся знания  Lua, С++ и Python.
Я предпочитаю ничего не делать сам, особенно, если для написания программы требуется изучение и реализация сложных алгоритмов. Зачем это делать, если можно использовать уже готовое. В современном программировании это один из основных принципов объектно-ориентированного программирования — берешь готовый объект и используешь. Если есть уже готовые библиотеки с нужными программами, то их и используем — сокращает время реализации, не надо беспокоиться об отладке, и много других плюсов. Извините, ленив и нелюбопытен — есть масса других интересных вещей, на которые можно потратить свое время.
Для начала пишем на C++ простенькую DLL для связи с Lua — шаблон проекта такой DLL вы можете найти в моих топиках. Нужный Вам код вам придется писать самим.

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

Использование Машинного Обучения в торговых системах. Простейшее применение.

    • 18 января 2021, 14:54
    • |
    • 3Qu
  • Еще
Допустим, делаете вы торговую аж на 5 или больше индикаторах. Их как-то надо обернуть логикой принятия решений, потом как-то настроить, подобрать параметры в логике — работа большая, требующая много времени. Но вы сами эту систему разработали, и уже в основном знаете, что конкретно должна искать ваша логика. А раз так, то вы уже примерно знаете, где конкретно ваша логика должна выдавать свои сигналы.
В подобных случаях мы можем существенно облегчить себе работу, поручив построение логики методам Машинного Обучения (МО).
Входы мы знаем, выходы нам тоже примерно известны — строим обучающую последовательность для выбранного метода МО. Затем нормируем нашу обучающую последовательность к входам/выходам метода МО. Обучаем. Проверяем. Получаем готовую логику для нашей торговой системы.
Отмечу, что в данном конкретном случае нас не должны особо заботить переобучение и прочие проблемы МО — мы делаем вполне однозначную систему.
В нашем случае мы всего-навсего используем МО как обучаемую логику.

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

Завязывайте с этим ТА.

    • 17 января 2021, 00:49
    • |
    • 3Qu
  • Еще
Оч короткий топик.
Откажитесь от технического анализа, вы, как не надуваете щеки, все равно в нем ничего не понимаете. ТА, эта такая тема — ни о чем, называется. Бросьте это бесполезное занятие.
Я вообще не понимаю, как человек с хоть каким-то минимальным образованием может принять на веру весь этот набор околонаучного бреда. Ну, даже в книгах того же Швагера или Ниддерхоффера написано, что это все не более эффективно чем бросание монетки.
Лучше узнайте, какие есть методы обработки данных, разберитесь в них, и овладейте этими методами. Пользы будет гораздо больше.
Кстати, сколько я видел статей об обработке временных рядов, в том числе и рыночных данных, а этими вопросами многие занимались. Так вот, никаких даже упоминаний о ТА я там ни разу не встречал. Никто серьезно ТА не воспринимает. В реальном анализе и прогнозировании он вообще не нужен.
Впрочем, как хотите. Это только мое частное мнение и предложение. Следовать не обязательно. Давно известно, что научить чему-то, или переубедить невозможно, если человек сам этого не хочет и не видит в этом необходимости. А таких и переубеждать уже практически не нужно.)

Совершенствуем Exponential Moving Average (EMA). 2

    • 16 января 2021, 21:01
    • |
    • 3Qu
  • Еще
В топике Совершенствуем Exponential Moving Average (EMA) мы показали использование линейной и нелинейной обратных связей в применении к ЕМА. Как правильно отметили в части комментариев, в случае линейной обратной связи ЕМА просто превращается в другую ЕМА с меньшим периодом, и толку от такой ЕМА немного. И тем не менее, даже в этом случае, обратная связь демонстрирует то, что и должна была демонстрировать — цель достигнута и ошибка слежения за ценой уменьшилась.
Нелинейная же связь даже в случае с ЕМА работает нормально, и по факту адаптивно в зависимости от ошибки меняет период сглаживания. При больших значениях ошибки период сглаживания уменьшается относительно заданного Тс, при малых ошибках период сглаживания практически равен предустановленному Тс.
В общем, нам надо решить вопрос только с линейной обратной связи, и выбрать для этого в качестве исходного индикатора что-то посложнее ЕМА. Скажем фильтр низких частот (ФНЧ) 2-го порядка. Выражение для него будет иметь вид.

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

Совершенствуем Exponential Moving Average (EMA).

    • 16 января 2021, 00:04
    • |
    • 3Qu
  • Еще
На днях написал топик с описанием своей старой стратегии - Ретростратегия ретро ТС., снятой с эксплуатации в далеком 2014 г, которая, как оказалось, даже в упрощенном виде может работать и сегодня. Не собирался ее использовать, но в ходе обсуждений решил потратить на нее пару вечеров, восстановить по памяти до последней ее версии, и посмотреть, не стоит ли отложить текущие дела, и быстренько вывести ее на рынок.
В ходе восстановления пришлось также дорабатывать фильтры ФНЧ, простейшим из которых является ЕМА. Я дорабатывал свои фильтры, а вам покажу, что можно сделать с ЕМА, чтобы ее усовершенствовать и улучшить.
В комментариях к топику о ретростратегии упомянули некоего Jurik (jurikres.com) и его JMA. Думал, что он уже забыт, но, жив — курилка. То, что мы получим будет не хуже его индикаторов и подобрав периоды сглаживания можете сами в этом убедиться. Вообще, все поделки Jurikа — это где-то на уровне лабораторных работ студентов 4-го курса института по курсу ТАУиР. Наши сегодняшние тоже сложностью не отличаются, но может даже лучше, хотя бы потому, что не являются черными ящиками, и вы знаете как это устроено.

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

О книгах Вернера Гейзенберга. "Часть и целое". "Физика и философия".

    • 13 января 2021, 17:02
    • |
    • 3Qu
  • Еще
Из большого списка книги выбраны в значительной степени произвольно. Можно было бы написать и о книгах Макса Борна, книгах Ричарда Фейнмана, Норберта Винера и многих других книгах.
Эти книги В.Гейзенберга, скорее, популярные книги.
«Часть и целое» — книгу можно назвать творческой автобиографией. Это и о жизни, и описание самого процесса развитии идей квантовой механики от ее зарождения до начала 50-х годов.
«Физика и философия» — здесь уже из самого названия ясно о чем книга. Книга мировоззренческая, и тоже написана понятным языком.
Казалось бы, к рынку книги не имеют отношения. Однако, читая их вы следите за ходом и эволюцией развития идей, переходу от ошибочных взглядов к соответствующим действительности, вместе с автором размышляете о взаимосвязях и закономерностях природных явлений, нуждающихся в философском обобщении. И, не исключено, что учитесь мыслить другими, более сложными категориями, чем те, которые предлагают нам книги о рынке.
Возможно, что в ходе чтения у вас появятся и аналогии с рыночными процессами и другой взгляд и другое понимание рыночных процессов. Часто новые идеи приходят именно из сопоставления процессов с аналогичными совсем в других областях, никак не связанных с изучаемым вами предметом.

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

Ретростратегия ретро ТС.

    • 11 января 2021, 23:49
    • |
    • 3Qu
  • Еще
Сегодня решил проверить работоспособность своей старой стратегии, проработавшей с большими изменениями с 2008г, и снятой с эксплуатации в 2014 г.
Вначале стратегия была сделана на Excel с ручным исполнение сделок, затем глубоко модифицирована, и стала уже Excel-VBA, затем еще раз модифицирована и была перенесена на C#. Ну, а самая последняя версия на C# в 2014 г успешно прошла месячный прогон на виртуальных сделках, но вывод ее на реал был признан нецелесообразным из за известных событий, и пару лет я рынком вообще не занимался. Ну, а по возвращении на рынок появились новые мысли, и я занялся совсем другими стратегиями.
Сегодня я решил проверить, а работает ли подобная стратегия сейчас. В Python это заняло примерно час, благо заготовок и индикаторов уже написано много и скомпоновать их дело нехитрое, и ничего специально придумывать не надо. Тест стратегии безо всяких ее настроек сразу оказался прибыльным на двух 3-х месячных интервалах фьючерсов Сбера и Газпрома. Критики могут не писать, что интервал тестирования недостаточен. Я знаю ваше мнение, однако, считаю иначе. Недостаточен? — сами делайте и сами тестируйте.

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

Есть ли Грааль?

    • 10 января 2021, 19:04
    • |
    • 3Qu
  • Еще
Грааль — это очень относительное понятие. Все понимают Грааль абсолютно по разному. Для одних это Грааль, для других же — тфу на такой Грааль.
Будем понимать под Граалем просто прибыльную торговую систему.
Думаю, что Граали, хорошие и разные, имеют место быть в реальности. Однако, люди имеющие Граали в основном предпочитают не светить их на публике, и достоверных сведений о существовании Граалей у нас нет. Однако, есть косвенные данные.
Расскажу одну историю.
Летом 2008 г у меня был отпуск, и я решил наряду с интердеем поторговать интрадей. Кстати, ни о каких ТА я тогда слыхом не слыхивал, и не подозревал о существовании такового.
Естественно, из этого интрадея что-то ничего путного не получалось.
На форуме присутствовал известный тогда интрадейщик (не будем называть имён), и я спросил у него как это торговать вообще? Он мне вкратце, в нескольких комментариях, рассказал.
Вот у него точно был Грааль, и, что главное, этот Грааль был легко переносим. Оказалось все просто. Уже через пару дней я стал устойчиво прибыльно торговать.

Как работает Machine Learning.

    • 01 января 2021, 22:30
    • |
    • 3Qu
  • Еще
Различных методов Machine Learning очень много, но все они работают примерно одинаково. Это и нейросети, и леса-деревья, и Байесовские классификаторы, и многое другое. Найти и прочитать как ходят-как сдают, как обучают и проверяют правильность обучения — не проблема.
Но пользователи часто забывают одно правило: мусор на входе — мусор на выходе. Для обучения недостаточно сделать обучающую последовательность с правильными ответами — результатом будут хорошие результаты на обучающей последовательности, и никакие на реальных данных.
Таким образом, мы должны четко себе представлять, чему именно мы учим, и это вовсе не правильные ответы, а правильные ответы на правильные вопросы. Если не хотите получать дурацкие ответы — не задавайте дурацкие вопросы.

Т.е., для обучения МЛ нам нужно сформулировать адекватные вопросы и ответы на них. Только в этом случае метод МЛ реально обучится и будет реально работать не только на обучающейся последовательности.
Вопрос ещё в том, что обычно мы не знаем и правильных вопросов.
Но это дело поправимое  Мы формируем какую либо гипотезу, например — три солдата показывают нам то-то и то-то. Мы как-то ищем этих трёх солдат на истории, там же находим ответы на них, обучаем на этом метод МЛ, проверяем на независимом отрезке истории, и выясняем — действительно ли эти 3 солдаты так важны для нашей торговли, или ну их на фиг.
Понятно, что и при обучении и на реале нам надо задавать МЛ только значимые вопросы, а именно, показывать МЛ не все данные подряд, а только наших трёх солдат.
Ну, а если солдаты воевать не желают, проверяем значимость вороны на шесте.) И так, пока действительно не найдем что-то стоящее.

Задачка - купить по Bid, продать по Asc.

    • 01 января 2021, 19:05
    • |
    • 3Qu
  • Еще
Торгуются дальние фьючерсы. Спред м.б. от 20 до 50 п.
Надо в автомате купить по Bid и позднее, м.б. много позднее, продать по Asc.
Вручную это сделать особых проблем не представляет, но вот на автомате — чешу репу, и ничего простого придумать не в состоянии. Получаются сплошные анализы и перестановки заявок в районе Asc и Bid.
Не получается вразумительная логика, чего-то в ней не хватает.
Есть ли какие мысли по этому поводу?  Особо ни на что не рассчитываю.

теги блога 3Qu

....все тэги



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