silentium
silentium личный блог
13 мая 2016, 12:07

Не нравятся нейронные сети? Вы просто не умеете их готовить. Рецепт.

                                                               
Не нравятся нейронные сети? Вы просто не умеете их готовить. Рецепт. 
                                                                                                                                                                Silentium est aurum

                                                                Молчи, пока ты не в состоянии сказать нечто такое, что полезнее твоего молчания.                                                                                                                                                                                         (кто-то умный сказал)

Что берем? Да все, что есть в нашем трейдерском запасе. Прежде всего, рыночные данные из тиковых файлов по выбранному инструменту. Добавляем всякие вкусности – объемы, ATR-ы, МА-шки, уровни, индикаторы разные… В общем то, на что смотрим в своей реальной ручной торговле (при условии, что торговая система имеется). Желательно, конечно, добавить какие-нибудь свои «секретные» ингредиенты. Не забываем, что качество продуктов влияет на вкус блюда. Все, что выбрали для входов НС, нужно хорошенько очистить и отмыть от своих субъективных представлений о рыночных зависимостях – исходные продукты должны быть чистыми!

Далее – нормализуем данные, которые будем подавать на входы НС (приводим к значениям от -1 до 1). Тут все понятно — ингредиенты в хорошем блюде должны быть однородны. Так что шинкуем, господа!

Итак, входы готовы. Начинаем формировать у сети правильное представление о результате – учим сеть правильным ответам – «покупать» или «продавать». Тут совсем понятно – ПРАВИЛЬНО – это когда ПРИБЫЛЬНО. Конечно, вручную сделки в количестве 10-20 тысяч штук сформировать невозможно. Используем чудо-машину на основе генетического алгоритма. Эта техника создаст множество нейронных сетей на наших данных. В процессе обучения сети сами разложат содержимое входов по формам. Сети сами решат, что более важно, а что менее для нашего блюда. Им просто не нужны те закономерности, которые выделяем мы — они найдут свои.

Генетический алгоритм выберет лучших из лучших и будет «смешивать» и «скрещивать» их, проверяя результаты работы каждой новой сети методом скользящего контроля (кросс-валидация), пока параметры будут улучшаться.

Когда процесс завершен, кажется, что наше блюдо готово. Но не торопитесь кушать сами и предлагать другим – надо про(дегустировать)тестировать наше блюдо на независимых исторических данных. Мы для этого используем наш тестер, где роботы тестируются на  тиковых данных и можно проанализировать основные показатели работы – прибыль, просадку, фактор восстановления, матожидание сделки и дня и прочее…
Не нравятся нейронные сети? Вы просто не умеете их готовить. Рецепт.

По этим параметрам можно сделать вывод о съедобности полученного продукта.

Поскольку мы с вами знаем, что тесты – это далеко не реальность, мы добавили возможность запустить робота в режиме эмуляции торгов. Сверив сделки в режиме эмуляции со сделками в тестере за период – приходим к выводу, что все работает корректно. И все. Запускаем реальные торги. Едим с аппетитом и предлагаем всем!

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

Мы – реалисты. Рано или поздно, наше блюдо перестанет быть свежим и вкусным. Поэтому мы следим за основными показателями, чтобы своевременно исключить его из нашего меню… И продолжаем готовить новые. Об этом, если будет интересно – в следующих топиках.

 

236 Комментариев
  • "Silentium est aurum!" - молчание золото. Это любимая поговорка гопников 90-х. А в ранг крылатого выражения ввела инквизиция.
    • Самокритичный трейдер, специалист по гопникам (-:
      • Иван Петров
        13 мая 2016, 15:19
        Александр Смольский, В натуре....
        А я вот что то не помню чтобы в 90-е гопники на латыни разговаривали)))
          • Иван Петров
            13 мая 2016, 16:06
            silentium, Судя по профилю Вы из 80-х
            Без обид))))
          • Алексей Никитин
            13 мая 2016, 19:55
            silentium, С входными  данными все  понятно, тут все  очень и  очень просто, собрал данные,  нормализовал подал,  готово!
            А что с самой  сетью,  топологий  тьма, ну  жа  это  не  беда.
            Главная  проблема  это  то чему  ее  учить.  Вот  про обучение  если можно подробнее
              • Алексей Никитин
                13 мая 2016, 20:28
                silentium, Спасибо, попробую к  своему  TWIME прикрутить что нибудь нейросетевое -)))
  • Эмуляция торгов и реальные торги — не одно и тоже хотя бы потому, что структура и параметры случайного процесса цен закрытия, например, в эмуляции жёстко задана, и нейронная сеть под неё хорошо подстраивается. А в реальном рынке это далеко не так. Если хотите нормальную проверку делать — делайте форвард-тестинг.
      • silentium, тогда говорите, что используете форвард-тестинг, т.к. эмуляция торгов подразумевает именно генерацию данных.
          • silentium, блин, ну я и говорю, что у Вас всё честнее — вы именно форвард-тестинг используете, хотя называете это эмуляцией.)))
            • SergeyJu
              13 мая 2016, 13:03
              Бобровский Дмитрий, я так понимаю, что они используют и то, и другое. Мы, кстати, тоже. 
              Параллельная с реальной торговлей торговля «бумажная» — нормальный инструмент контроля. 
  • SergeyJu
    13 мая 2016, 12:17
    Насчет «замесить кашу» не стану спорить, можно и так.
    Но почему именно нейронные сети должны её разгребать, да еще без участия человеческих нейронов, непонятно.
    Тема, мягко говоря, почти не раскрыта.
      • SergeyJu
        13 мая 2016, 12:28
        silentium, аудитории смартика это точно не надо. Но несколько прОцентов интересующихся тут есть. Хорошо, что есть рубрика алготрейдинг, можно отслеживать за общим потоком мути стоящие сообщения.
      • Quant-Invest
        13 мая 2016, 12:29
        silentium, Аудитория желает разоблачения!
        В каких программах, как это делать — все по шагам...
        Короче, инстаграмм неинтересен, а интересен рецепт конкретный чтобы самому покушать :)
          • Quant-Invest
            13 мая 2016, 14:37
            silentium, если статья по теме — она туда автоматом попадает.
            За этим следят специально обученные автоматы, как я понял :)
            Сотрудничать — всегда готовы.
          • Quant-Invest
            13 мая 2016, 15:03
            silentium, 

            Вот так выглядит у меня ваш сайт.
            Вы туда что, пару нейронных сетей прикрутили? :)
        • sortarray sortarray
          13 мая 2016, 14:05
          Quant-Invest, Это вообще, феномен какой-то, примета времени, как это объяснить, я хз. Человек пишет простыню текста, которую академик за*тся разгребать, при этом в программировании полный ноль, спрашивается, зачем это все этому человеку? В данном случае, тут конечно надо сделать скидку на то что это женщина, может просто нужно внимание + пиар сайта-лохотрона, но это уже стало массовым явлением, раковая опухоль. Спрашивается, чего добиваются _все_эти_люди_?:)

          Собственно, страшно не то, что это все появляется, страшно то, что это хавают:)
        • Иван Петров
          13 мая 2016, 15:21
          Quant-Invest, Поставьте нейрошелл и кушайте))).
          Даже техподдержка будет.

          Даже аддоны уже готовые и тд и тп)))
          • Quant-Invest
            13 мая 2016, 16:03
            Иван Петров, так дорого же…
              • Quant-Invest
                13 мая 2016, 16:29
                silentium, да в жизни вообще все просто — для тех кто умеет...
                А кто не умеет, тот и молотком по пальцу, и НС по депозиту :)
                  • Quant-Invest
                    13 мая 2016, 16:43
                    silentium, а если скажу «да» — Вы поверите?
            • Иван Петров
              13 мая 2016, 16:07
              Quant-Invest, Бесплатно, есть куча материала и ломаных версий -народ русскоязычный старался, пять лет над сетями кропел)))
              • Quant-Invest
                13 мая 2016, 16:33
                Иван Петров, У меня последний робот в реале рубит полпроцента в день в валюте, без всякихНС. И таких наработок еще недоделанных до фига. Боюсь, руки не дойдут до НС, тем более что пока не видел чтобы они больше доходность показывали на значимом промежутке.
                • Иван Петров
                  13 мая 2016, 16:45
                  Quant-Invest, Нейросети опасны тем что не понятно чему они научились и как они торгуют.

                  Зато безуслвоно у них всегда хорошие тесты в прошлом)))
                  • Quant-Invest
                    13 мая 2016, 16:55
                    silentium, почему не поверить? Поверю. Сам по этим же причинам перешел к роботостроению. Не царское это дело, в монитор пялиться :)
                    Но тут возникает вопрос — почем вы продаете своих роботов и зачем?
          • Dio
            13 мая 2016, 16:26
            Иван Петров, Есть еще нейроскальп))
            • Иван Петров
              13 мая 2016, 16:49
              Dio, А разве он не был похоронен?
              • Dio
                13 мая 2016, 17:58
                Иван Петров, кем? у меня до сих пор где-то лежит, с тех самых пор, когда был достаточно серьезно погружен в нейронные сети. Эту программу покупал в одной московской конторе (кажется, Тора ее название было) в начале нулевых…
                • Иван Петров
                  13 мая 2016, 18:00
                  Dio, Вроде как год или два тому назад читал что ее перестали поддерживать (саму прогу)
                  • Dio
                    13 мая 2016, 18:02
                    Иван Петров, понятно.. 
      • sortarray sortarray
        13 мая 2016, 12:44
        silentium, на самом деле надо, только не это. Сколько я не читаю подобной чепухи, везде наблюдается одна и та же тенденция. Люди с ходу начинают лезть в дебри, чтобы никто не понял, что он сам ничего не понимает.

        Каюсь, я сколько раз не начинал читать про нейронные сети, всегда бросал. Неочевиден профит, непонятны самые основы, разбираться лень. 

        Вот Вы, например, спец по нейросетям, можете внятно сформулировать основное свойство этой парадигмы? Чем нейросетевой подход отличается от других подходов? Для каких задач он подходит?
        • Андрей К
          13 мая 2016, 12:49
          sortarray sortarray, я тоже в самообучение никак вникнуть не могу. Даже не знаю с какой стороны подойти.
      • SMA
        13 мая 2016, 14:29
        silentium, конечно надо!!! вы на  каких программах это все делаете?
          • Dio
            13 мая 2016, 16:27
            silentium, а что за программа EVA?
      • Dio
        13 мая 2016, 16:23
        silentium, Поддерживаю продолжение банкета!!! Вспомнил универ и диплом)) +++!!!
    • SergeyJu, Да они раскроют.)) Предоставят кривую эквити. К сожалению, всё, что видел по торговле нейронными сетями, показывало пологое снижение эквити…
        • silentium, тогда поздравляю с граалем. Не, серьёзно, молодцы. Единственное, что смущает — соотношение профитных и убыточных сделок. А в целом — норм.
          • SergeyJu
            13 мая 2016, 12:29
            Бобровский Дмитрий, прикольно, я такой показатель ВООБЩЕ не рассчитываю уже много лет. За ненадобностью. 
              • SergeyJu
                13 мая 2016, 12:37
                silentium, контроль рисков — это, безусловно, важнейшее дело. А что такое ФВ?
                  • Алексей Андросов
                    13 мая 2016, 13:24
                    silentium, какое минимальное значение фв для вас приемлемо?
                      • Алексей Андросов
                        13 мая 2016, 13:45
                        silentium, у меня мтс по портфелю показывает 19 за 4 года. НО это при торговле одним контрактом. Привязываю размер позы к депо и все ломается. Скажите мне че нить, я начинающий, не шарю))

                        • noHurry
                          13 мая 2016, 15:36
                          Алексей Андросов, уменьшить размер позы. 
                      • SergeyJu
                        13 мая 2016, 15:08
                        silentium, я верно понимаю, что за год Вы ожидаете заработать сумму в 15-20 раз больше максимальной просадки?
                        Имхо, это нереально круто. 
                  • SergeyJu
                    13 мая 2016, 13:27
                    silentium, а что такое тогда текущая прибыль?
                    Прибыль за период — понимаю, текущая просадка — понимаю. Сам считаю её от ранее достигнутого абсолютного максимума эквити. 
                    CVar — понимаю. 
                    А все эти метастоковские штучки, проде процента прибыльных сделок и ФВ — не использую. 
                      • SergeyJu
                        13 мая 2016, 13:48
                        silentium, если у меня система со средним доходом, условно, 30% годовых исследуется на протяжении 10, условно, лет, я не понимаю, как использовать озвученный Вами показатель. 
                        Обычно я просто делю среднегодовой доход на какую-то меру риска. Хоть бы и ДД, но это не лучший вариант.
                          • SergeyJu
                            13 мая 2016, 14:53
                            silentium, я использую в расчете не календарные дни, а торговые. И потом, если торгуется портфель систем, расчет риска должен быть совместный, а не поотдельности. Или Вы даете каждой систем стартовый капитал и потом уже не перераспределяете, заработал — увеличил экспозицию риска, потерял — ушел в отстойник.
                    • Quant-Invest
                      13 мая 2016, 14:43
                      SergeyJu,
                      текущая просадка — понимаю. Сам считаю её от ранее достигнутого абсолютного максимума эквити.
                      Если это выразить не в процентах, а как отношение, получится Фактор Восстановления :)
                      Добро пожаловать на темную сторону :)
                      • SergeyJu
                        13 мая 2016, 14:46
                        Quant-Invest, без формулы — не понимаю.
              • Иван Петров
                13 мая 2016, 15:24
                silentium, Странно… сеть тренируют на макс прибыль, а на минимальную просадку тренеровка не эффективна.

                Никакие МА-шки в сеть и близко не берутся, а вот те индикаторы что представляют данные -1 +1 как раз берутся.


                  • SergeyJu
                    13 мая 2016, 16:20
                    silentium, то есть у Вас многофакторная оптимизация?
                    Интересно, Вы её сводите к однофакторной весами, или отсекаете по каждому критерию худшее, или какой-то третий вариант.
                      • SergeyJu
                        13 мая 2016, 17:17
                        silentium, anngroup — это Вы?

            • silentium, а никто и не говорит, что Грааль — это результат.))) Это скорее процесс.)))
            • SergeyJu
              13 мая 2016, 12:34
              silentium, вот это верно. 
              А Вы представляете компанию или не оформленную юридически группу единомышленников?
                • sheffield
                  13 мая 2016, 15:59
                  silentium, под такие стратегии в индустрии денег не дают, но на свои вполне можно, желаю удачи! было бы интересно ознакомиться подробнее…
  • Как человек угробивший 4-е года на грааль на базе НС говорю вам бросайте это занятие, ибо на обычных скользяшках системы работают не хуже, а пока будете года 3-и изучать, то еще и лучше.
      • Иван Петров
        13 мая 2016, 15:28
        silentium, Биткойн или рипл вот передовая технология.

        И там без всяких сетей-заработок.

        Что касается сетей, Варды все правильно говорят, работает только в очень ограниченных областях финансовых рынков
    • SergeyJu
      13 мая 2016, 12:51
      Молодой поэт Таджикский, Вы не можете поручиться в том, кто-то другой не преуспеет в том, в чем вас постигла неудача.
      Но по поводу НС мое мнение совпадает с Вашим. Это не наш метод. 
      • SergeyJu, Неудача меня не постигла, просто пока реально поймешь, что как подавать, отсекать, обучать, переобучать, менять конфигурацию… то сам уже будешь лучше любой сетки видеть рынок..., а учитывая «проклятие размерности» и попадание в «нужную» область обучения которая отличает уровень шума от уровня полезного сигнала-это бесконечный компромисс от которого можно сойти с ума! Эффективность НС только на уровне HFT можно оправдать, остальное всё Сизифов труд.Сам долгие годы защищал НС и пришел к неутешительным выводам, что вместо того чтобы научиться понимать рынок пытался всё решить с помощью мощного матинструмента, который за меня будет всё решать, а я как гениальный пацанчик в Голливудских фильмах буду потягивать коктейль на пляже-не выходит ни фига! Трейдинг -это не только математика, это компромисс между чутьем, математикой и психологией.
        • SergeyJu
          13 мая 2016, 13:34
          Молодой поэт Таджикский, именно так.
    • Иван Петров
      13 мая 2016, 15:26
      Молодой поэт Таджикский, Поддерживаю коллега, тем более что чел собирает сетку на индикаторах!!!

      На индикаторах сетку нормальную не соберешь
        • Иван Петров
          13 мая 2016, 15:59
          silentium, Ну ну… я уже запасся поп корном и с нетерпением жду развития этого сюжета))))

          А фраза-да
            • Иван Петров
              13 мая 2016, 16:57
              silentium, Да я отошел от нейросетей… но на самом деле материалла по ним и стратегий -тонны.

              Платишь 3 штуки зелени и у тебя будет и программа и поддержка и все все все
  • Андрей К
    13 мая 2016, 12:47
    Кстати, бывают такие алгоритмы, когда тест необходим только в реале и эмуляция не поможет, потому что именно сделки алгоритма могут поменять ход движения цены в реальных условиях.
    • SergeyJu
      13 мая 2016, 12:56
      Андрей К, в первую очередь это проблема ёмкости системы. 
  • sortarray sortarray
    13 мая 2016, 12:49
    Я, честно говоря, на вскидку даже не понимаю принципиального отличия нейросетей от ООП. У вас есть нейроны — это объекты с состоянием, есть некоторое состояние системы во времени, есть изменение этого состоояния, есть взаимодействие этих объектов. Чем не ООП? Может это вообще ограниченная версия ООП, и не более того?
    • SergeyJu
      13 мая 2016, 12:55
      sortarray sortarray, когда дилетант начинает рассуждать о том, в чем он не разбирается, ему не стыдно. Он просто не понимает меры своего незнания. 
      Зачем Вам эффект Даннинга-Крюгера в собственном исполнении?
      ru.wikipedia.org/wiki/%D0%AD%D1%84%D1%84%D0%B5%D0%BA%D1%82_%D0%94%D0%B0%D0%BD%D0%BD%D0%B8%D0%BD%D0%B3%D0%B0_%E2%80%94_%D0%9A%D1%80%D1%8E%D0%B3%D0%B5%D1%80%D0%B0

      • sortarray sortarray
        13 мая 2016, 12:57
        SergeyJu, ссылка на эффект данинга-крюгера — это то же самое, что роспись в собственной несостоятельности, дежурный отмаз.
        • SergeyJu
          13 мая 2016, 13:02
          sortarray sortarray, на выбор десятки учебников. Если недостаточно трудолюбивы, чтобы освоить хотя бы оглавление, неча выражать свои «мысли» по поводу их содержимого.
          • sortarray sortarray
            13 мая 2016, 13:05
            SergeyJu, Как жаль что я Вас об этом не спросил, что мне читать, а что нет. Пока я вижу только одно — то что не Вы не автор топика не могут ответить за слова. Возникает резонный вопрос, а есть ли они эти нейросети, как отдельное явление?
            • SergeyJu
              13 мая 2016, 13:30
              sortarray sortarray, возникает резонный вопрос, Вы вообще понимаете, что пишете, или во всех затронутых Вами темах демонстрируете эффект ДК, получая  дежурную «отмазку» от случайно прочитавших Вас профессионалов.
              • sortarray sortarray
                13 мая 2016, 13:33
                SergeyJu, Да, я понимаю, а Вы? По Вашим словам этого пока не заметно, Вы увиливаете от конкретики
                • SergeyJu
                  13 мая 2016, 13:37
                  sortarray sortarray, ссылка на САМЫЙ ПРОСТОЙ УЧЕБНИК ИЗ ТЕХ ЧТО Я ЧИТАЛ — что может быть конкретнее? 
                  Вы написали кучу дилетантских вопросов, которые говорят только об одном, работать не желаете, а флудить — всегда пожалуйста.
                  • sortarray sortarray
                    13 мая 2016, 13:40
                    SergeyJu, Все что угодно будет конкретней. Ваши мысли по поводу, если они есть. Любой школьник может найти в гугле какой-нибудь учебник по нейросетям, по соответствующему запросу, и кинуть на него ссылку, так обычно и делают мамкины аналитеги всех мастей, некомпетентное быдло,  это не есть конкретика.
                    • SergeyJu
                      13 мая 2016, 13:43
                      sortarray sortarray, я занимаюсь прикладной математикой не один десяток лет и учить невежд и неучей не подписывался. Это не только долгий и тяжелый труд, но, в первую очередь труд неблагодарный.
                      • sortarray sortarray
                        13 мая 2016, 13:45
                        SergeyJu, А математик корчит из себя программиста? С этого надо было и начинать. Отдыхай, лошара, и впредь не суйся туда, где большие дяди разговативают.
                    • sortarray sortarray
                      13 мая 2016, 13:48
                      silentium, Это дежурный отмаз. Вы не можете поддержать тему которую сами же инициировали. Тогда какова была реальная цель данного поста? Показать что Вы в чем то разбираетесь? Создать имидж?
                        • sortarray sortarray
                          13 мая 2016, 14:13
                          silentium, скажу Вам честно, мне не особенно интересен этот разговор. Я уже вижу, что Ваш реальный уровень в теме близок к нулю, и Вы действуете по принципу «чем заумней тем лучше». Вам бы лучше что нибудь про вязание и кулинарию постить:)
                            • sortarray sortarray
                              13 мая 2016, 14:33
                              silentium, Я сначала не заметил что Вы женщина, извините. Но то что Вы участвуете в лохотроне Вас не красит, однако.
                                • sortarray sortarray
                                  13 мая 2016, 14:48
                                  silentium, Я смотрю на вещи трезво. Вы пиарите какой то сомнительный ресурс всеми доступными, и не вполне чистоплотными средствами. Если ресурс нуждается в таком пиаре, значит он заинтересован либо в инвестициях, либо в ином притоке средств, при этом никаких вменяемых инструментров он, очевидно(хотя бы даже по этому посту) не имеет, вся ставка делается на «волшебные» сети. Выводы напрашиваются сами собой.

                                  А люди знающие «больше вашего Мастера» — это любой программист, кто написал что-нибудь сложней хелловорда, долго искать не надо, надо просто платить и организовывать цикл разработки. Очевидно, что «мастеру» вовсе не это надо.
                                    • sortarray sortarray
                                      13 мая 2016, 15:05
                                      silentium, я пришел изначально чтобы почерпнуть для себя что-то интересное. А хамства с моей стороны не было по отношению к вам, во всяком случае с того момента когда я узнал, что Вы женщина.
                        • Quant-Invest
                          13 мая 2016, 14:56
                          silentium, А сколько у вас слоев(не считая вход\выход) и какой тип НС? Какова сложность системы?
    • stitrace
      13 мая 2016, 12:57
      sortarray sortarray, вы просто на вскидку не понимаете что такое ООП, а что такое нейронная сеть. Ваш пост соседствует по смыслу с утверждением подобного рода: я на вскидку не понимаю разницы между конверным производством и автомобилем.
      • sortarray sortarray
        13 мая 2016, 13:00
        stitrace, на вскидку я могу с таким же успехом утверждать, что Вы не знаете что такое программирование. Ваша ассоциация с автомобилем если не дебильна, то упорота. Если Вам реально есть что сказать, то говорите по существу, в противном случае, лучше молчите.
      • sortarray sortarray
        13 мая 2016, 13:19
        silentium, в таком случае, это вообще какая то оторванная от реальности модель. В реальной нейросети нейроны различаются как раз по состоянию возбуждения. А количество связей, собственно, значения не имеет, какая разница, сколько связей, если речь о модели?
      • SergeyJu
        13 мая 2016, 13:38
        silentium, ну, веса — то есть. Они и составляют, по преимуществу «память» НС.
          • sortarray sortarray
            13 мая 2016, 13:51
            silentium, 
            Есть веса,

            Что такое веса?
            есть архитектура сети

            Архитектура своим наличием должна как то породить состояние, которого нет? LOL
            несерьезном топике.

            А, оказывается это было не серьезно, а Вы еще и женщина. Вопросов больше нет, предупреждать надо.
        • sortarray sortarray
          13 мая 2016, 13:44
          SergeyJu, 
          веса — то есть

          Что такое веса?
      • nbvehrfr
        13 мая 2016, 17:49
        silentium, в последних разработках (LSTM) нейроны имеют память, и количество связей в обычных DL nets уже исчисляется 10^9
  • sortarray sortarray
    13 мая 2016, 12:53
     Покажите код. Только не синтетику, не какое-то библиотечное говно, типа createNetwork(bla-bla-bla), а какой-то пример, который показывает изнутри, как это работает. Покажите, например, как мы можем выявлять произвольные закономерности чередования символов в строке.
  • Андрей К
    13 мая 2016, 12:59
    я правильно понимаю, что под ООП вы понимаете объектно ориентированное программирование?
    • sortarray sortarray
      13 мая 2016, 13:01
      Андрей К, Ух ты, а кто-то под этим понимает что-то другое? Само сабой:)
      • Андрей К
        13 мая 2016, 13:03
        sortarray sortarray, тогда не пойму как понимать ООП = нейросеть.
        • sortarray sortarray
          13 мая 2016, 13:06
          Андрей К, Ну я же выше описал. Нейрон объект, который имеет состояние, получает сообщения от других объектов. У меня тогда встречный вопрос: а в чем отличие:)?
          • Андрей К
            13 мая 2016, 13:08
            sortarray sortarray, а нейро объекты разве не пишутся на основе объектов опп и потом обучаются?
            ооп в данном случае лишь инструмент реализации и инструмент представления.
            • sortarray sortarray
              13 мая 2016, 13:10
              Андрей К, Я не знаю, я как раз и хочу это выяснить. Меня тоже интересует обучение, я хочу понять, как происходит это на низком уровне.

              Где вообще та грань между обучением и не обучением? Является ли, например, кеширование частным случаем?
              • Андрей К
                13 мая 2016, 13:14
                sortarray sortarray, мне чуть выше книгу порекомендовали. Полистайте, интересно.
                • sortarray sortarray
                  13 мая 2016, 13:29
                  Андрей К, В книгах обычно приходится разгребать кучу хлама, _их_очень_важную_терминологию_, и тп, а хотелось бы понять саму суть:)
            • SergeyJu
              13 мая 2016, 15:05
              Андрей К, чисто теоретически, можно и в кодах писать, и на «чистом» Си, в рамках Карниган-Ричи. Было время, так все и писали. ООП облегчает труд, но новой сущности в процесс программирования не привносит. 
              • sortarray sortarray
                13 мая 2016, 15:48
                SergeyJu, Наконец то Вы выдали немножко конкретики, и мы сразу же увидели Ваш реальный уровень, точней реальный уровень вашей безграмотности в вопросе. Вы реализуете абстракцию нейрона, это уже означает, что Вы порождаете новую сущность. Что значит не привносит? Нахрена тогда нужна эта модель вычислений, если она не предполагает под собой никакой реализации. Если Вы реализуете модель, значит Вы должны реализовать среду, которая, блеать, позволяет Вам проектировать в терминах этой модели, и, в то же время, забыть о деталях этой реализации.
            • sortarray sortarray
              13 мая 2016, 13:21
              silentium, Я не совсем понимаю. Реальный мозг имеет память. Памяти не может быть без состояния. Какая к чертям это тогда нейросеть? Почему _это_ так назвали?
            • sortarray sortarray
              13 мая 2016, 13:28
              silentium, И как в таком случае система вообще может обучаться, если она не может запомнить предыдущих случаев?
              • Андрей К
                13 мая 2016, 15:20
                sortarray sortarray, я так понимаю, задача построения сети, подразумевает под собой некое построение графов. На третьем курсе программистов обучают дискретной математике, там очень все схоже (исходя из того, что я успел полистать из книги)
                • sortarray sortarray
                  13 мая 2016, 15:31
                  Андрей К, ну так ведь нейронная сеть сама по себе представляет собой, как я подозреваю, граф, вершинами которого являются сами нейроны. И что из этого? Вы построили сеть, но ведь дальше то она должна как то обучаться? Обучение предполагает память. Например, при бектрекинге Вы должны запомнить, что результат предыдущего перебора провалился, нужно знать, что вы уже ходили по этой дороге, чтобы больше не возвращаться туда.
            • sortarray sortarray
              13 мая 2016, 13:32
              silentium, и вот вы, например, пишите
              Используем чудо-машину на основе генетического алгоритма. 

              генетические алгоритмы значит, часть реализации нейросети? В таком случае, опять же, как могут быть мутации без состояния, Вы не могли бы пояснить?
            • Prophetic
              13 мая 2016, 14:00
              silentium, у меня несколько вопросов, если позволите:
              1. Что анализируется в последней колонке на скриншоте (0 профит..., 5 профит..., 10 профит… и т.д.)?
              2. Вы пишите, что ничего не понимаете в ООП. При этом, на скриншоте явно самописная программа, которая с вероятностью процентов эдак 90 написана объектно-ориентированном языке. Какова ВАША роль в данном проекте НС?
              3. Как уже некоторые тут писали, хотелось бы увидеть что-то более конкретное, в плане реализации механизмов, вместо скриншота «черного ящика». Планируете чем-то подобным поделиться с читателями? Если «да», то когда и где?
                • Prophetic
                  13 мая 2016, 15:14
                  silentium, Для «лички» рейтинга маловато (почти не пишу, в основном читаю)
                  Вы так и не ответили на вопрос о Вашей роли в данном проекте. ;)
                  Но если желаете оставить это в секрете, я настаивать не буду.
                  Скажу сразу — у меня весьма скептическое отношение к НС (применительно к биржевой торговле). Когда-то пытался начать изучать, но до программирования даже простейших нейронов так и не дошел.
                  Что касается раскрытия темы, то вполне очевидно, что определенные «секреты» Вы раскрывать не будете и не должны.
                  Однако, увидеть некоторые «детали» реализации НС хотелось бы, в противном случае (в моем восприятии) текущий топик существенного интереса не будет представлять.
                  Да, наверное для этого придется привлечь кодеров, т.к. для интересующихся этой темой, но не имеющих достаточного опыта в практической реализации НС, основной интерес представляют варианты реализации отдельных механизмов работы НС, пусть и в упрощенных вариантах, просто для того, чтобы понять с чего начать и как конкретно реализовать отдельные этапы построения НС.
                  Например:
                  — на вход нейрона необходимо подать преобразованные данные о параметрах свечи => пример преобразования. Ведь наверняка кроме текущей реализации, которую Вы не хотите раскрывать, были и простейшие варианты, которые были отметены, но для других они могут оказаться полезными в качестве точки отсчета
                  — программный код реализации простейшего нейрона (не вашего конечно, а сильно упрощенного, но применимого к теме биржевой торговли)
                  — методы корректировки весов на связях между нейронами, в процессе обучения (хотя, допускаю, что без раскрытия «секретных» данных может и не получиться) и т.д. и т.п.

                  На самом деле все зависит от того, с какой целью был создан данный топик (все написанное далее ни в коем случае не воспринимать как оскорбление, т.к. это не является моим личным мнением о Вас):
                  — хотите похвастаться, что у Вас получается зарабатывать с помощью алгоритма на базе НС? ОК, похвастались. Мы за Вас рады и теперь благополучно можем забыть.
                  — хотите привлечь единомышленников в вашу команду? Хорошо, «затравку» бросили, теперь дело за конкретикой.
                  — Хотите чтобы тема НС (в интересующей нас области) не канула в лету, и развивалась? ОК, покажите другим что это не так сложно как кажется, когда читаешь только теорию, и не понимаешь как превратить это в практику.
                  — хотите чтобы другие поделились своими идеями? Я сильно сомневаюсь, что на данном ресурсе есть достаточно людей, которые разбираются в данной теме. Возможно, имеет смысл искать таких на других ресурсах, или вернуться к предыдущему пункту и дождаться появления обратной связи.

                  Лично для меня эта тема интересна пока только в качестве факультатива, для собственного развития и выработки свежих идей. изобретать велосипеды не очень люблю, а вот развить какую-нибудь идею до чего-то интересного — это вариант, но если начинать «с нуля», то это тот же велосипед…
  • Развлекался с программистами показывая им сливающего советника на тесте и зарабатывающего на торгах при не меняющихся настройках. Они бедняжки чуть ли не каждый символ кода со всех сторон пересматривали, пока не поняли что я понимаю что и на какой рынок надо ставить:)
  • Dim
    13 мая 2016, 13:24
    НАБОР БУКФ
  • Мр.Дакс
    13 мая 2016, 14:24
    У-у, как все запущено! Чудо-машина явно не
    по принцу Парето работает…
  • stitrace
    13 мая 2016, 14:41
    Я знаю как минимум один алгоритм HFT, который показывает весьма неплохие результаты (ну те самые тысячи процентов с 50к депозита в месяц) и работает на нейронных сетях на срочке, так что если, кого то заинтересовала тема с НС, то вот вам ещё один аргумент в пользу их использования.
      • stitrace
        13 мая 2016, 14:49
        silentium, я имею ввиду тысячи процентов с 50к, HFT это, тысячи сделок за сессию, проблемы с ликвидностью, бешеные комиссии и прочее. Но ребята там живут с него и весьма неплохо зарабатывают (по меркам обычных трудяг и 99% местного планктона, который ООП от НС не отличает). Правда это данные на момент начала 15-го года, не знаю как они сейчас.
        • Андрей К
          13 мая 2016, 15:23
          stitrace, да вроде нет бешенных комиссий. Да большие, но не бешенные =)
          • stitrace
            13 мая 2016, 15:28
            Андрей К, это вы как HFT уже привыкли, для среднестатистического посетителя смарталаба комиссия в 50 тысяч рублей за торговую сессию может казаться бешеной)
    • П М
      13 мая 2016, 16:52
      stitrace, как часто надо сети пересчитывать?

      • stitrace
        13 мая 2016, 17:39
        ПBМ, я к сожалению, понятия не имею, я весьма поверхностно был знаком с их системой.
  • iuiu
    13 мая 2016, 15:46
    Молчи, пока ты не в состоянии сказать нечто такое, что полезнее твоего молчания.                                                                       
    Хорошо сказано.
  • Иван Петров
    13 мая 2016, 16:02
    Все кто начал испоьзовать нейросети в 2006 году (был их бум среди трейдеров) не дожили и до 2010 года (не говоря уж о заработке)

    Просто тут эта тема так «хорошо пошла», потому что на рынке редко остаются «старожилы)»))
      • Иван Петров
        13 мая 2016, 16:19
        silentium, То есть будучи «в теме» с 2008 года, Вы как бы не в теме, за ту тему где и как эти сетки гонялись?
        … как то настораживает… то есть никакого дополнительного материала Вы не читали, за развитием сетей не смотрели?


          • Иван Петров
            13 мая 2016, 16:49
            silentium, В банках то как раз все правильно нейросетевики сидят.

            Нейросеть, как  хороший калькулятор, чтобы в уме не считать, но не более того…
          • SergeyJu
            13 мая 2016, 17:06
            silentium, в нормальный банках они если и сидят, то скорее всего на скоринге, кредитный риск считают для массового клиента. Навскидку, это более простая задача, но, я полагаю, более важная. 
            Что до квантов в инвестбанках… наврядли большинство из них занимается именно направленной торговлей на бирже. Там масса всяких других затей, начиная от фронтраннинга клиентов и заканчивая всякими форвардами и внебиржевыми опционами.
            Наконец, на НС свет клином не сошелся, есть и другие методы в области ИИ.

          • Иван Петров
            13 мая 2016, 16:47
            silentium, Короче от реального бизнеса к иллюзиям…
    • nbvehrfr
      13 мая 2016, 17:52
      Иван Петров, тема не для широких масс
      • Иван Петров
        13 мая 2016, 17:58
        nbvehrfr, Как раз таки -для широких.

        Она по сути своей не сложнее испольсования скользящих средних.

        Просто надо терминал поновее, там и техподдержка к нему прилагается
        • nbvehrfr
          13 мая 2016, 18:04
          Иван Петров, чтобы обучать с более менее нормальной скоростью нужно железа тысяч на 5-6k$, это для широких масс?
          • Иван Петров
            13 мая 2016, 18:57
            nbvehrfr, Это если Вы там все 10 нейронов включите и более… а этого совсем не нужно, Вы же на переоптимизацию нарветесь.

            • nbvehrfr
              13 мая 2016, 19:02
              Иван Петров, 10? несколько тысяч в каждом слое не хотите? плюс экстратор фич перед сеткой. чтобы не было оверфиттинга все используют дропаут, а с 10 вы ничего не увидите
  • gry
    13 мая 2016, 16:28
    Подписался, ждем теперь конкретики)
      • nbvehrfr
        13 мая 2016, 17:37
        silentium, 
        1. без регуляризации (сорри если неправильно перевел термин) будет обычный галимый оверфиттинг, добавьте дропаут 0.5 и L2 и посмотрите на результат.
        2. использовать обычную многослойку для таймсерис моветон, есть RNN, LSTM или самый свежак Grid LSTM
          • nbvehrfr
            13 мая 2016, 17:59
            silentium, btw, вы не смотрели в сторону reinforcement learning? допустим обучить сеть торговать внутри дня смоделировав действия трейдера интрадейщика
              • nbvehrfr
                13 мая 2016, 18:36
                silentium, Мастер?
                  • nbvehrfr
                    13 мая 2016, 18:43
                    silentium, PhD?
                      • nbvehrfr
                        13 мая 2016, 18:53
                        silentium, вопросом на вопрос :)
                        нет не нужен, но хотя бы masters in math для интуитивного понимания nn
          • nbvehrfr
            13 мая 2016, 18:01
            silentium, dropout хорошая техника, активно используемая в deep learning, чтобы сразу исключить подстройку — из сети случайным образом исключаются нейроны в каждом батче свои, так вы гарантируете что сеть устойчива к частичной потере внутренних связей и отражает более общие закономерности обучающей выборки  
          • nbvehrfr
            13 мая 2016, 18:35
            silentium, так если таймсерис не используете тогда просто даете моментальный снимок текущей ситуации по разных разрезах?
            не пробовали искать паттерны на чартах с помощью cnn?
  • XXM
    13 мая 2016, 17:24

    Добавляем всякие вкусности – объемы, ATR-ы, МА-шки, уровни, индикаторы разные…

    Объемы еще понятно, а все остальное — и так производные от цены. Но нигде не доказано, что нельзя, значит можно ;)
    В целом — интересно, «но денег не дам!» ©
    Причина проста — даже прогнозируемость «лонг-шорт» будет в районе 50:50. А про размер движений и говорить нечего, но скажу: ноль!
    Но это все — только мое скромное мнение.
    За пост + огромный плюс.
    ----------------
    Публикуйте несколько месяцев на каждый торговый день прогнозы «покупать» или «продавать», тут, на smart-lab.
    Результат будет, однозначно!
     

  • XXM
    13 мая 2016, 18:22
    Я вообще ПРОТИВ прогнозов всяческих.

    Слив засчитан ;)

    Ибо сказано:«Способности нейронной сети к прогнозированию напрямую следуют из её способности к обобщению и выделению скрытых зависимостей между входными и выходными данными. После обучения сеть способна предсказать будущее значение некой последовательности на основе нескольких предыдущих значений и (или) каких-то существующих в настоящий момент факторов. Следует отметить, что прогнозирование возможно только тогда, когда предыдущие изменения действительно в какой-то степени предопределяют будущие. Например, прогнозирование котировок акций на основе котировок за прошлую неделю может оказаться успешным (а может и не оказаться), тогда как прогнозирование результатов завтрашней лотереи на основе данных за последние 50 лет почти наверняка не даст никаких результатов.»

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

    Увы, это тоже как-то не совсем то. Их можно нарисовать.

    Но я не пойму, кому это интересно.

    Об этом надо было подумать раньше, до этого вашего поста.
    А сейчас, увы, поздно.
    Это интересно многим ;)

      • EY
        13 мая 2016, 18:57
        silentium, вы можете вести трансляцию ТСЛАБ, которая показывает результирующий график эквити. Сразу скажу, что в вашу систему не верю, мусор на входе = мусор на выходе, слишком много переменных. Выглядит как подгонка под историю, без проверок вне выборки. Еще и продаёте системы, сами не зарабатываете на рынке!
    • nbvehrfr
      13 мая 2016, 18:55
      XXM, можно построить сеть не прогностическую, а реактивную, которая будет реагировать на текущую ситуацию (с накоплением информации о прошлом в памяти) отдавая приказы на покупку/продажи либо оставаясь вне рынка
  • XXM
    13 мая 2016, 19:06
    Ясно, спасибо.
    Тоже когда-то баловался НС.
    Introduction to Neural Networks for C#, Jeff Heaton, и все такое прочее.
    Толку — ноль. Не годятся они для совершения сделок на финансовых рынках в общепринятом смысле. 

    Другое дело — HFT, в этом Молодой поэт Таджикский, думаю, прав — там идут процессы на квантовом уровне, и применение НС может быть оправдано. И, скорее всего, они там применяются уже давно. Но и тут результаты вряд ли сильно ушли от 51:49.

    В любом случае — желаю успехов!



    • Lafert
      13 мая 2016, 20:39
      XXM, конечно, понимаю, что это скорее мой промах, и выводов тут никаких сделать не выйдет, но пару лет назад я пытался машинным обучением предсказывать рынок на пару десятков секунд вперед на основе индикаторов, построенных на ордерлоге и стакане, и оно вроде даже что-то угадывало, но о хотя бы отбитии биржевой комиссии, конечно, речь не шла.

      К стати, вопрос к топикстартеру, у них есть какой-то опыт в анализе микроструктуры рынка с помощью нейросетей?
  • XXM
    13 мая 2016, 21:02
    Уже поздно. День у нее был непростой.
  • Кан Делябр
    13 мая 2016, 23:21
    В таком виде применять  НС — значит не понимать механизмы функционирования рынка. В общем —  артель «Напрасный труд».
  • НеГрустин
    14 мая 2016, 02:48
    Асилил все каменты!))))

    С нетерпением жду следующей статьи!
  • chizhan
    14 мая 2016, 07:19
    Автор, Вы молодец. Отличная статья!  Жаль, что алгоритмам и квантам на СЛ очень мало уделяется внимания(          
  • XXM
    14 мая 2016, 18:11

    Тему уже поднимали, например тут: http://smart-lab.ru/blog/288428.php
    Просили «писать только по делу», брали «в дело только опытных.»
    Никогда не оскудеет тема поиска чудо-аппарата (черного ящика), когда ему на вход подаются текущие котировки, а на выходе — готовое решение: лонг/шорт/курить_бамбук.
      • Valery Kh
        16 мая 2016, 22:47
        silentium, скажите, пожалуйста: пробовали ли Вы создавать нейросети при помощи инструмента WealthLabNeuro-Lab? Если да — возможно, он Вам не понравился, и поэтому Вы предпочли разработать свой собственный инструмент?
          • Valery Kh
            17 мая 2016, 00:33

            silentium, да, действительно — у Python есть свой NeuroLab: pythonhosted.org/neurolab/

            Там пишут, что его интерфейс похож на матлабовский NNT. Как насчет функционала — пока не знаю.

              • Valery Kh
                17 мая 2016, 18:06
                silentium, согласен с Вами. Свои индикаторы зачастую бывают лучше традиционных.
              • Valery Kh
                26 мая 2016, 12:25

                silentium, 

                Я вот подумал, что г-н sortarray, как ни странно, кое в чем был прав )) А именно: сети типа RNN/LSTM все-таки имеют состояние (память), и в этом смысле напоминают мне конечные детерминированные автоматы.

                Я помню, Вы говорили, что не используете time series, и в то же время у Вас есть идеи относительно CNN. Мне в плане сверточных сетей приходит в голову лишь нечто вроде анализа японских свечных паттернов (типа двух взлетевших черных ворон). Мне кажется, если рассматривать движение цены во времени, то больше подходит как раз концепция RNN, чем CNN. Интересно узнать Ваше мнение.

                И еще вопрос: если у Вас 364 входа и 1 скрытый слой из 74 нейронов (а выход, вероятно, 1?) – правильно ли я понимаю, что dropconnect Вы используете на полносвязной матрице 364*74?

                  • Valery Kh
                    26 мая 2016, 13:32
                    silentium, спасибо за ответ — Вам и Мастеру ))

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн