Форум устарел! Поддержка тут: https://t.me/osengine_official_support

Актуальные гайды здесь: https://smart-lab.ru/company/os_engine/blog/1024149.php

Machine Learning

Собственно сабж

Статус темы:
Закрыта.
  1. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Это прога алгоритмического машинного обучения на базе библиотеки ML.NET.

    Немного об ML: Назначение машинного обучения это прогнозирование ответа на одну из задач машинного обучения, основываясь на полученный опыт. Бывает овер 100500 задач машинного обучения применимых к финансовым рынкам, такие как прогнозирование спайков, определение визуальных паттернов таких как крабы бабочки и другой зоопарк (машинное зрение), полнофункциональное управление всеми функциями терминала тоесть полная иммитация деятельности с терминалом человека, где выходные векторы это управление функционалом (обучение с подкреплением), диплернинг и тд. В этой проге этого всего нет, хотя она и может применять модели диплернинга и машинного зрения, но не может их обучать, а теперь о задачах и методах которые полностью реализуются по средствам проги.

    Бинарная классификация - результат ответ на вопрос в булевом формате, тоесть вы подаете на вход состояние рынка а прога отвечает произойдет ли какое то событие. Например вы передаете в прогу значения с нескольких индикаторов и объемы, а прога говорит что цена дойдет до желаемого уровня тэйкпрофита.

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

    Регрессионная задача - результат ответ на вопрос в формате числа двойной точности, тоесть вы подаете на вход состояние рынка а прога отвечает конкретное значение цены через какой то промежуток времени. Например вы передаете в прогу значения с нескольких индикаторов и объемы, а прога говорит что хай цены будет равнен 1.1234 на следующей свече.

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

     

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

    UPD(01.01.2020): Обновил интерфейс слегка. В целом все тоже самое осталось, только кол-во моделей теперь не ограничено, а так же можно менять сокет.

    UPD(22.01.2020) Прикрепил файлы тестовой совы PinBar и видео для объяснения принципов. Ссылка на тестовый робот с ML. Видео

    Тестовые данные:

    Криптобиржа Binance

    Валюта BTCTUSD

    Таймфрейм м5

    Период тестирования 01.01.2019 - 22.01.2020

    Без применения ML 

     

     

    С применением ML 

     

    Товарищи трейдеры, если вам нравится проект не забывайте донатить ;) а так же вы можете платно заказать внедрение ML в ваш секретный советник. Платное внедрение предполагает применение нескольких моделей обучения одновременно, в том числе прогнозирование направления движения рынка.

     

    PayPal: [email protected]

    BTC: 11m69G9XsaxhhGL7RczWP3RXrrEmpBkDF

    Скачать publish.zip 29 Мб
    karuzzo
    05.12.2019 01:46
    #1
  2. Алексей Ван Команда форума

    Регистрация:
    02.02.13
    Сообщения:
    1176
    Был на сайте:
    13.02.25

    Очень круто! 

    Алексей Ван
    05.12.2019 16:45
    #2
  3. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Программа достаточна универсальна и работает с любым терминалом имеющим возможность использовать сокеты (запросы на IP:Port) и даже презираемый мною метатрейдер с ней работает.

    Мы же будем учиться работать с программой на базе терминала OsEngine так как работа с сокетами в среде .NET это 20 – 30 строк кода, нам по сути нужно только правильно вызвать несколько методов, заботливо предописанных для нас кодерами микрософта.

     

    Графический интерфейс:

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

    Вторая часть панель управления через которую нам доступны клавиши (они кликабельны) для указания пути:

     

    Model Path – в ходе обучения программа создает на основе ваших данных модели, которые сохраняет в указанную вами папку, а так же при старте проверяет есть ли в указанной папке модели с которыми она может работать и в случае их обнаружения подгружает их для использования. Эту папку необходимо указывать всегда в первую очередь независимо от того хотите вы обучить новую модель или желаете использовать готовую модель.

     

    Binary 1..4 – эти клавиши используются для указания тренировочных данных для бинарной классификации. Четыре их по тому что в одном роботе может быть использовано несколько задач машинного обучения одного и того же типа, и для каждой из таких задач нужна своя обучающая выборка. Приведу пример с прогнозированием следующей свечи: В свече есть 4 точки (хай лоу слоуз опен) для того чтоб спрогнозировать ее полностью мы должны обучить четыре отдельные модели со своими выборками и все эти модели будут решать регрессионные задачи.

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

     

    MultiClass 1..4 и Regression 1..4 – по аналогии с бинарной классификацией.

     

    Slip Parts – это гиперпараметр который задает соотношение разбития вашего файла с обучающей выборкой на тестовою тренировочную и валидационную выборки.

     

    Train Time – время поезда это гиперпарамерт который задает время тренировки каждой из моделей в секундах, чтоб примерно понимать сколько продлиться тренировка нужно это число умножить на количество тренируемых моделей, получите время тренировки в секундах.

     

    Use Shuffle Data – это гирерпараметр определяющий будет ли рандомно перемешан ваш файл с данными перед разбитием на тренировочную валидационную и тестовую выборки. Этот параметр маленький в уголке спрятался, но это самый важный гипер-пупер параметр этой проги если и с галочкой и без галочки удается натренировать модель выше 70% - вы миллионер я вас поздравляю, можете увольняться с работы, я серьезно!

     

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

     

    Split – разбивает указанные вами файлы в Binary Multi и Regression на необходимые выборки

     

    Train – поезд запускает процесс обучения

    Test – пробует несколько вхождений из тестовой выборки на сходимость реального и прогнозируемого ответов и выводит на инфо панель результат (возможно не работает я не помню так как не юзаю этот функционал)

     

    Clear All Pathsочищает поля ввода

     

    Save All Params – сохраняет параметры (большинство параметров и так сохраняются в момент ввода, не помню для чего я ее прикрутил, но на всякий случай тыкайте, я лично тыкаю перед запуском тренировки хоть и не помню для чего, тут так принято)

     

    Start Server – стартует процесс прослушки сокета и возвращает ответ. Cам сокет это

    IP 127.0.0.1 Port 8020

     

    Формат обучающих данных:

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

    Файл должен быть формата .csv и иметь вот такую структуру:

     

     

    Разделитель целой и дробной части точка или запятая, ну или то что у вас выставлено в настройках окружения. Разделитель колонок точка с запятой “;”, разделитель строк – любой символ табуляции. Первая строка это заголовок, он должен быть сформирован всегда одним и тем же способом, первая ячейка первой строки должна называться “Result” а все последующие ячейки первой строки называются “Val_n” где n = (порядковый номер ячейки - 1) количество яцеек может варьироваться от 2 до 3000 штук, в зависимости от выбранного вами количества подаваемых данных.  Каждая СТРОКА это снимок состояния рынка в котором первая ячейка это заведомо известный ответ на задачу машинного обучения, на основе этих снимков рынка и готовых верных ответов прога учится, и уже в боевом режиме отправлять придется только снимок, а свой прогноз прога вернет в качестве ответа.

    Формат принимаемых и возвращаемых данных:

    Принимаемые данные аналогичны любой из строк за исключением отсутствия первого значения с ответом и наличия в конце значения для какой именно модели это адресовано. Пример:

    “0.65;128;654.445;binary1” – это снимок адресован первой ,бинарной модели, вернет True или False

    “0.65;128;654.445;multi3” – это снимок адресован третьей мультиклассификационной модели, вернет 0 или 1 или 2 или 3 и тд.

    “0.65;128;654.445;reg4” – это снимок адресован четвертой регрессионной модели, вернет число к точкой например 245.5 или 0.045

     

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

    karuzzo
    05.12.2019 19:44
    #3
  4. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    В какой робот встроить ML? кидайте предложения

    karuzzo
    06.12.2019 13:43
    #4
  5. Алексей Ван Команда форума

    Регистрация:
    02.02.13
    Сообщения:
    1176
    Был на сайте:
    13.02.25
    Цитата: karuzzo

    В какой робот встроить ML? кидайте предложения

    А мы её можем подключать вообще к OsEngine публично? Какая лицензия у них?

    У нас Апач2, надо убедиться что никого это не обидит. 

    Если всё норм, то нужно нового робота сделать. Так и назвать безхитростно: BotOnAI

    Алексей Ван
    08.12.2019 07:46
    #5
  6. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23
    Цитата: Алексей Ван
    Цитата: karuzzo

    В какой робот встроить ML? кидайте предложения

    А мы её можем подключать вообще к OsEngine публично? Какая лицензия у них?

    У нас Апач2, надо убедиться что никого это не обидит. 

    Если всё норм, то нужно нового робота сделать. Так и назвать безхитростно: BotOnAI

    У них лицензия MIT это бесплатная лицензия для коммерческого и не коммерческого распространения аналогичная апач2 но более свободная, например производное ПО может иметь то же название, а может отличаться (включая логотип)

    Про робота нет проблем, ты быстро его сделаешь. А я бы помог ребятам которые хотят разобраться. Над каким роботом поиздеваться или предикт зигзага поискать, помнится там достойные результаты на форварде сбера были.

    karuzzo
    08.12.2019 13:20
    #6
  7. tashik

    Регистрация:
    08.09.18
    Сообщения:
    4
    Был на сайте:
    27.07.22

    Огонь, спасибо, если могу чем-то поучаствовать - я готова поконтрибутить, если есть роадмэп и фичи в плане - могу поделать.

    tashik
    11.01.2020 14:54
    #7
  8. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23
    Цитата: tashik

    Огонь, спасибо, если могу чем-то поучаствовать - я готова поконтрибутить, если есть роадмэп и фичи в плане - могу поделать.

    Здорово конечно, думаю CV может еще реализую) но в плане другая прога на машинном обучении с подкреплением. Ядром будет CNTK оберткой EasyCNTK. В общем без пайтона опять через C# API , есть еще прога глубокого ML может скину на днях, но у этой результаты лучше.

    karuzzo
    12.01.2020 23:52
    #8
  9. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Раз у темы появился читатель пора выбрать и реализовать стратегию на этой проге под OsEngine, над каким ботом или стратегией поупражняемся?

    karuzzo
    12.01.2020 23:58
    #9
  10. tivik001

    Регистрация:
    29.12.18
    Сообщения:
    7
    Был на сайте:
    04.12.21

    Добрый день .
    Не могу скачать архив.
    Пишет что архив пустой после скачивания .
    Антевир может удалять ваш архим после скачивания?
    У кого то были такие проблемы ?

    tivik001
    14.01.2020 22:45
    #10
  11. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Скачал с сайта архив он с файлами, про антивирус не знаю вам виднее, но на мой взгляд там нет вирусов.

    karuzzo
    15.01.2020 05:13
    #11
  12. tivik001

    Регистрация:
    29.12.18
    Сообщения:
    7
    Был на сайте:
    04.12.21
    Цитата: karuzzo

    Скачал с сайта архив он с файлами, про антивирус не знаю вам виднее, но на мой взгляд там нет вирусов.

    Привет.
    На другом компе скачал.
    Кто то пробывал ее прикрутить к роботу?

    tivik001
    15.01.2020 13:31
    #12
  13. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23
    Цитата: tivik001
    Цитата: karuzzo

    Скачал с сайта архив он с файлами, про антивирус не знаю вам виднее, но на мой взгляд там нет вирусов.

    Привет.
    На другом компе скачал.
    Кто то пробывал ее прикрутить к роботу?

    Я пробовал)) да ты не стесняйся, выбирай любого робота я прикручу и скину код сюда чтоб на этом примере могли и другие прикрутить.

    karuzzo
    15.01.2020 14:55
    #13
  14. VAL

    Регистрация:
    31.12.16
    Сообщения:
    11
    Был на сайте:
    11.11.24

    Добрый вечер!

    Описание будет как его Machine Learning прикрутить и как с ним работать. 

    VAL
    16.01.2020 19:06
    #14
  15. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Описание во втором посте, но чтоб понять как работает нужен пример кода, и я готов его написать но все стесняются сказать на каком роботе поэксперементировать

    karuzzo
    16.01.2020 21:14
    #15
  16. tivik001

    Регистрация:
    29.12.18
    Сообщения:
    7
    Был на сайте:
    04.12.21
    Цитата: karuzzo

    Описание во втором посте, но чтоб понять как работает нужен пример кода, и я готов его написать но все стесняются сказать на каком роботе поэксперементировать

    Привет.
    Можно любой трендовый  c stop loss и take profit -том .
    Или по анализу стакана я думаю интересно б было увидеть такую торговлю.

    tivik001
    17.01.2020 03:17
    #16
  17. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23
    Цитата: tivik001
    Цитата: karuzzo

    Описание во втором посте, но чтоб понять как работает нужен пример кода, и я готов его написать но все стесняются сказать на каком роботе поэксперементировать

    Привет.
    Можно любой трендовый  c stop loss и take profit -том .
    Или по анализу стакана я думаю интересно б было увидеть такую торговлю.

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

    karuzzo
    17.01.2020 09:43
    #17
  18. VAL

    Регистрация:
    31.12.16
    Сообщения:
    11
    Был на сайте:
    11.11.24

    Если можно поэксперементировать в роботе PinBarTrade (Trend)

    VAL
    17.01.2020 13:40
    #18
  19. VS400

    Регистрация:
    26.10.19
    Сообщения:
    3
    Был на сайте:
    04.02.20

    Приветствую,

    Боллинжер если можно, было бы прекрасно на нем, + трендовый  

    VS400
    17.01.2020 17:59
    #19
  20. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Принято

    karuzzo
    18.01.2020 15:40
    #20
  21. tivik001

    Регистрация:
    29.12.18
    Сообщения:
    7
    Был на сайте:
    04.12.21
    Цитата: karuzzo

    Принято

    Если б было видео было вобще шикарно.

    tivik001
    18.01.2020 20:54
    #21
  22. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Вот видео и пример реализации задачи мультиклассификации на стандартном роботе PinBarTrade а так же файлы робота и обновление проги.

    Видео на гугле

    Новая версия ML

    Исходники модернизированной совы

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

    По любым вопросам меня можно найти в чате телеграм https://t.me/osengine_ru @osengine_ru

    karuzzo
    19.01.2020 10:23
    #22
  23. VAL

    Регистрация:
    31.12.16
    Сообщения:
    11
    Был на сайте:
    11.11.24
    Цитата: tivik001
    Цитата: karuzzo

    Принято

    Если б было видео было вобще шикарно.

    Я тоже за видео с хорошим звуком.

    VAL
    19.01.2020 12:48
    #23
  24. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23
    Цитата: VAL
    Цитата: tivik001
    Цитата: karuzzo

    Принято

    Если б было видео было вобще шикарно.

    Я тоже за видео с хорошим звуком.

    Час метнусь кабанчиком тебе актеров озвучки на фрилансе искать

    karuzzo
    20.01.2020 09:43
    #24
  25. VAL

    Регистрация:
    31.12.16
    Сообщения:
    11
    Был на сайте:
    11.11.24

    Спасибо!

    VAL
    20.01.2020 11:22
    #25
  26. tivik001

    Регистрация:
    29.12.18
    Сообщения:
    7
    Был на сайте:
    04.12.21

    СПАСИБО ЗА ВИДЕО И ПРОДЕЛАНУЮ РАБОТУ.

    tivik001
    20.01.2020 13:58
    #26
  27. karuzzo

    Регистрация:
    16.08.19
    Сообщения:
    99
    Был на сайте:
    05.01.23

    Пожалуйста :)

    karuzzo
    20.01.2020 16:19
    #27
  28. VS400

    Регистрация:
    26.10.19
    Сообщения:
    3
    Был на сайте:
    04.02.20

    Спасибо! , будем тестить)

    VS400
    20.01.2020 18:54
    #28
  29. sirius_x

    Регистрация:
    20.03.19
    Сообщения:
    2
    Был на сайте:
    02.02.23

    Очень интересно !!

    Спасибо !

    sirius_x
    21.01.2020 06:56
    #29
  30. tivik001

    Регистрация:
    29.12.18
    Сообщения:
    7
    Был на сайте:
    04.12.21

    Не могу найти ссылку на телеграм  OsEngine .
    Если есть скиньте .

    ААА
    Увидел. Сорри.

    tivik001
    21.01.2020 17:32
    #30
← Предыдущая Следующая → 1 2
Показаны 1-30 из 37
Статус темы:
Закрыта..