Многие слышали про шахматную программу AlphaZero, которая научилась играть в шахматы, зная правила и играя сама с собой миллионы раз. Идея такой песочницы для роботов не новая. В простейшем виде это реализуется фитнес функцией, когда каждый робот получает оценку по какому-то критерию, например по профиту за период. Потом победители идут на второй круг, а побежденные выбывают. Для оценки по фитнес функции роботов не надо гонять против друг друга и сделать её не сложно. А вот чтобы стравливать роботов и выбирать сильнейших, тут надо придумывать песочницу.
С программисткой точки зрения задача интересная, но непонятная. Надо придумать как двигать цену, так чтобы она реагировала на роботов и чтобы результат эволюцией роботов в такой среде был бы полезен для работы в реальном рынке. Да, можно гонять роботов на истории, это готовая песочница. Максимально похожая на рынок. Но она никак не учитывает воздействия самого робота на этот рынок.
Гоняя роботов на истории, мы по сути выращиваем огромных травоядных динозавров. Им плохо живётся в реальной жизни, то холод, то засуха, то Трамп не в тему твитнет. Гоняя роботов против друг друга в динамической песочнице с обратной связью, можно вырастить хищников, а то и приматов, идея манит.
Какие пути я вижу? Начать со случайного блуждания, меняя вероятности выпадения событий в зависимости от числа поз в рынке. Результаты эволюцией роботов тестировать опять же на истории.
Может у кого есть статьи, книги, свои мысли на эту тему? Задача с практической точки зрения возможно и не самая полезная, интересная скорее с программисткой точки зрения — создание динамического мирка и приближение его к реальному.
«воздействия самого робота на этот рынок»
если среднесрок и сумма не сотни лямов то думаю воздействием можно пренебречь
песочница — это такая большЕ академическая задачка для интереса. из которой потом наверняка может выйти что-то полезное. например станешь больше понимать тех самых маркет-мейкеров. а в идеале даже найдёшь одну две их или своих слабости.
или поймёшь, почему цена так часто разворачивается на стопе, без разницы, будь то стоп человека или стоп робота.
Для того, чтобы сделать крутую генерилку данных, нужна модель рынка, а чтобы её построить, просто мало данных. Даже если взять минутки за 10 лет, это примерно как оценивать параметры популяции по выборке размера 1 процент от неё ) То есть остальные 99% ты так не нагенеришь, получится что-то совершенно непохожее, со всеми вытекающими.
В альфазеро данные генерятся тривиально, и то задача очень сложная на них обучиться, и в инженерном плане (нужен датацентр), и в научном.
Тут же уже на этапе генерации данных колоссальные проблемы.
Тут тоже в оконцовке самообучаемые роботы начнут зеркалить алгоритмы друг друга и каждый останется при своих… эффективный рынок…
Роботу жрать не надо, он профит может вечно ждать..
-----
На рынке терпеливый и расчетливый забирает деньги у азартных и эмоциональных, а таких большинство… Толпа гонит цену: то слишком высоко, то слишком низко..
Вот за счет перекосов и будет заработок…
Да и откуда берутся гепы и повышенная вола? Это ж чисто психологическая реакция толпы на новость, отчет, или азарт…
возникает лотерея:
угадай систему
а мне интересно на каких принципах сделать движок.
ну то есть вот есть робот, он там почему-то купить решил.
куда после этого движок должен двигать цену? вероятно, что если робот был один, то цена должна двигаться против него.
можно пойти чуть дальше и сказать что рынок, среда, это мега-агент, который двигает цену в выгодную для него сторону. и каждый робот-агент покупает-продаёт актив либо у другого робота агента, либо у мега-агента-рынка-ЦК.
тогда если 1 робот захочет купить, ему продаст ЦК-мега-агент, потом станет снижать цену, но тут придут ещё 10 роботов и захотят ещё дешевле купить, ЦК-мега-агенту придётся цену повышать. или, может быть, наоборот резко обрушить. но если до первого робота в шортах сидело 20 ещё более других роботов, то ЦК выгоднее цену поднять.
как-то так и вроде даже не слишком сложно.
А это в сущности то же самое что делает боксер или мечник
Шахматы не случайно в категории спорта. Спорт это искусство воина изначально
Это ныне он деградировал до британского спорта.
там даже есть пример кода.
забавные там выводы в конклюжене, что вобщем-то общение — это ключ.
и ещё интересное хотя и не очень понятное
Вот почему многие гуру говорят, что идея ООП провалилась? Во многом потому, что не в коня корм. Программисты носят гордые имена «архитекторов», а на деле постоянно путаются с разбиением на категории, не могут выстроить правильную иерархию.
Основа выделения общих сущностей в выявлении общих свойств по единому контексту.
Если вы говорите о разбиении по признаку поглощения пищи, у вас общий контект пища.
если вы разбиваете по признаку развития, у вас общий контекст развитие.
Это 2 разных категории, нельзя сказать логически «или травоядный или хищник или примат», это блеать как эйнштейн с его временно-гвоздевым континуумом:)
Вот потому и не любят множественное наследование. Оно естественным образом отражает природу, от чего бегут как от чумы в «математику»:)
Посмотрите мои топики «основы» там популярно все расписано и сгенерировано в экселе.
К примеру, у нас есть крыса на металическом полу. Мы включаем звуковой сигнал, а затем пускаем по полу электрический ток. После нескольих разрядов крыса скорей всего начнет прыгать еще до того как разряд подается на пол, по звуку(то есть, наработан условный рефлекс). Мы это можем определить как то, что мы обучили крысу бояться звукового сигнала? Вы такой принцип имели в виду?
Ладно, проехали:)
Знаете чем математик отличается от инженера? Разница в том, что математик это калькулятор отображающий, а инженер — это тот кто реализует этот калькулятор, он делает математиков отображающих с помошью молотка, пассатиж и других внешних устройств:)
Формула доярки насадить доильные агрегаты на сиски коров — вот это ваша подстановка в формулу. Она знает как это сделать.
Задача инженера в том, чтобы продумать реализовать сам доильный аппарат.
Если инженер говорит что-то вроде «подставить в формулу» или «насадить колпачки на вымя», значит это, мягко говоря, инженер с математикой головного мозга
Я что-то не понял чем одно от другого отличается? Если роботы нацелены на какое то конкретное общее действие они и так соревнуются, вам остается только подсчет запилить
Другое дело вопрос стимула и обучаемости
спасибо
я настолько возвысился удалился от науки, что мне реально тяжело понять определение вероятности, из учебника. или определение энтропии из википедии. что это вообще такое на словах? ок, на словах это типа порядок вещей, порядок — типа как мы видим как они должны быть. но как это нормально пояснить — непонятно. все эти изначальные определения похожи на мухлёжку, типа да ладно, это итак всё ясно едем дальше. а как дальше ехать если не ясно в самом начале вообще.
потом, когда ты принимаешь это как данность, становится проще конечно. но всегда есть ощущение, что тебя обманули в самом начале. хотя потом вроде всё честно.
с филосовской точки зрения, вот нам говорят что система стремится к увеличению энтропии. замкнутая, ок. при этом, очевидно, что человек стремиться окружающую среду упорядочить, подвергнуть уменьшению энтропии.
а природа вокруг якобы против.
так ли это? ведь у муравьёв — свой порядок. у пчёл — свой порядок. у всех, свой порядок и свои законы. все живут на самом деле, пытаясь упорядочить мир вокруг себя. просто люди в большей степени.
а все вместе — мы же и есть природа. и есть система.
получается явное противоречие — система стремится к повышению энтропии, при этом составляющие части — к уменьшению энтропии.
тут явно что-то не так.
либо а) торчат ушки креацианизма. и я очень допускаю что так и есть
б) неверен или ок, не полон сам второй закон термодинамики, а может и ещё глубже — абсолютно профанское само понятие энтропии.
нагуглил на хабре статью по энтропии, читать всё пока не стал — позже. но там связывают физическую и информационную (что тоже по идее не верно),
что чем меньше нам известно о системе — тем больше энтропия.
ок, ну тогда как в замкнутой системе с течением времени нам может быть всё меньше известно о системе? тут явно какая-то ошибка.
Лично я так представляю себе «кукла» в глобальном смысле слова.
На бирже я покупаю/породаю не у биржи и не у брокера, это не форекс-кухня.
На срочке всегда есть 2 контрагента в сделке (обычно с промежуточными звеньями, но в конечном счёте нас двое).
полученные акции продал, открыв шорт.
в терминах рынка, никто не приходит на рынок без денег.
или у вас никогда не было счёта у брокера?
нет денег — нет счёта. нет торговли.
о какой нулевой позиции речь? назовите эту позицию с деньгами — плюс.
но на ней нет контрактов. и значит она не влияет на цену. она — ноль.
вот что я обсуждал
причем тут ваша или чья-то позиция?
среда не нейтральна. В нее уже изначально заложили или акции или контракты, а вы их покупаете, а уж потом продаете.
а значит у системы интерес в вас есть изначально, а не когда вы делаете шаг.
И это очень важно, это основа. Потому что именно это двигает цену — ОГРАНИЧЕННОЕ КОЛИЧЕСТВО ИЗНАЧАЛЬНОГО ТОВАРА. Всякие байки про спрос \предложение. Если товара хватит на всех, то цена не сдвинется ни на шаг.
А вы мне тут про шашечки...
Я понял, что вы ничерта не понимаете сами еще. А уже язвить изволите.
обоснование: ограниченность исходных данных, построение живой но обобщающей модели. не всеобъемлющей, а достаточной для целей создания более приспособленных к реальности роботов. чем те, которые создаются подгонкой по истории.
грубо говоря, каждый создаёт роботов любыми доступными путями. многими путями. захотелось попробовать ещё один. может он что-то даст.
если hft — то тестирование на истории не нужно
Не могут смирится с возможностью поражения и пытаются соломки подстелить везде, куда ступают. Гарантия им нужна. Без нее ни шагу.
Гарантировано мы все умрем, остальное вилами по воде.
Все просто. Пытайтесь и будь, что будет.
Провалы могут вести к победам, а победы к провалам.
Надо просто иметь смелость действовать, а не страховаться.