Форум устарел! Поддержка тут: https://t.me/osengine_official_support
Актуальные гайды здесь: https://smart-lab.ru/company/os_engine/blog/1024149.php
Собственно сабж
Это прога алгоритмического машинного обучения на базе библиотеки 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
Программа достаточна универсальна и работает с любым терминалом имеющим возможность использовать сокеты (запросы на 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
В какой робот встроить ML? кидайте предложения
А мы её можем подключать вообще к OsEngine публично? Какая лицензия у них?
У нас Апач2, надо убедиться что никого это не обидит.
Если всё норм, то нужно нового робота сделать. Так и назвать безхитростно: BotOnAI
Цитата: Алексей Ван
Цитата: karuzzo
В какой робот встроить ML? кидайте предложения
А мы её можем подключать вообще к OsEngine публично? Какая лицензия у них?
У нас Апач2, надо убедиться что никого это не обидит.
Если всё норм, то нужно нового робота сделать. Так и назвать безхитростно: BotOnAI
У них лицензия MIT это бесплатная лицензия для коммерческого и не коммерческого распространения аналогичная апач2 но более свободная, например производное ПО может иметь то же название, а может отличаться (включая логотип)
Про робота нет проблем, ты быстро его сделаешь. А я бы помог ребятам которые хотят разобраться. Над каким роботом поиздеваться или предикт зигзага поискать, помнится там достойные результаты на форварде сбера были.
Огонь, спасибо, если могу чем-то поучаствовать - я готова поконтрибутить, если есть роадмэп и фичи в плане - могу поделать.
Цитата: tashik
Огонь, спасибо, если могу чем-то поучаствовать - я готова поконтрибутить, если есть роадмэп и фичи в плане - могу поделать.
Здорово конечно, думаю CV может еще реализую) но в плане другая прога на машинном обучении с подкреплением. Ядром будет CNTK оберткой EasyCNTK. В общем без пайтона опять через C# API , есть еще прога глубокого ML может скину на днях, но у этой результаты лучше.
Раз у темы появился читатель пора выбрать и реализовать стратегию на этой проге под OsEngine, над каким ботом или стратегией поупражняемся?
Добрый день .
Не могу скачать архив.
Пишет что архив пустой после скачивания .
Антевир может удалять ваш архим после скачивания?
У кого то были такие проблемы ?
Скачал с сайта архив он с файлами, про антивирус не знаю вам виднее, но на мой взгляд там нет вирусов.
Цитата: karuzzo
Скачал с сайта архив он с файлами, про антивирус не знаю вам виднее, но на мой взгляд там нет вирусов.
Привет.
На другом компе скачал.
Кто то пробывал ее прикрутить к роботу?
Цитата: tivik001
Цитата: karuzzo
Скачал с сайта архив он с файлами, про антивирус не знаю вам виднее, но на мой взгляд там нет вирусов.
Привет.
На другом компе скачал.
Кто то пробывал ее прикрутить к роботу?
Я пробовал)) да ты не стесняйся, выбирай любого робота я прикручу и скину код сюда чтоб на этом примере могли и другие прикрутить.
Добрый вечер!
Описание будет как его Machine Learning прикрутить и как с ним работать.
Описание во втором посте, но чтоб понять как работает нужен пример кода, и я готов его написать но все стесняются сказать на каком роботе поэксперементировать
Цитата: karuzzo
Описание во втором посте, но чтоб понять как работает нужен пример кода, и я готов его написать но все стесняются сказать на каком роботе поэксперементировать
Привет.
Можно любой трендовый c stop loss и take profit -том .
Или по анализу стакана я думаю интересно б было увидеть такую торговлю.
Цитата: tivik001
Цитата: karuzzo
Описание во втором посте, но чтоб понять как работает нужен пример кода, и я готов его написать но все стесняются сказать на каком роботе поэксперементировать
Привет.
Можно любой трендовый c stop loss и take profit -том .
Или по анализу стакана я думаю интересно б было увидеть такую торговлю.
Выбери какой нить из стандартных или пришли свой, а то кто нить другой первей тебя назовет советник.
Вот видео и пример реализации задачи мультиклассификации на стандартном роботе PinBarTrade а так же файлы робота и обновление проги.
Исходники модернизированной совы
Машинном обучение тема интересная и требует дальнейших исследований. Если у вас есть желание разработать применение МЛ для вашего советника, используя более эффективное прогнозирование движения цены и прогнозирование вероятностей, я могу сделать это для вашего любимого секретного советника на платной основе.
По любым вопросам меня можно найти в чате телеграм https://t.me/osengine_ru @osengine_ru
Цитата: tivik001
Цитата: karuzzo
Принято
Если б было видео было вобще шикарно.
Я тоже за видео с хорошим звуком.
Цитата: VAL
Цитата: tivik001
Цитата: karuzzo
Принято
Если б было видео было вобще шикарно.
Я тоже за видео с хорошим звуком.
Час метнусь кабанчиком тебе актеров озвучки на фрилансе искать
Не могу найти ссылку на телеграм OsEngine .
Если есть скиньте .
ААА
Увидел. Сорри.
ООО «ВАН ТЕХНОЛОГИИ»т: +7 953 769 56 45
* Торговля на финансовых рынках связана с риском, который лежит на Вас.
* Ничто из написанного на сайте o-s-a.net не является рекомендацией.
* Если Вы этого не понимаете, не читайте этот сайт, ничего не покупайте.