бостон, on 22 October 2012 - 15:34, сказал:
Теория футбольного матча
#1381 OFFLINE
Добавлено 22 October 2012 - 15:44
#1382 OFFLINE
Добавлено 22 October 2012 - 15:53
Это добавление к посту 1380
Bambuk, on 22 October 2012 - 15:44, сказал:
Отредактировано бостон, 22 October 2012 - 15:48.
#1383 OFFLINE
Добавлено 22 October 2012 - 16:29
как достигнуто единодушие рынка? Даже если игрок долго играет, ну подём сросим---на такой-то минуте гол начальные кефы такие-то пусть даже по нескольким рынкам.....---хрен два кто ответит какой там скачёк должен быть (пока не посчитает и то если в теме как это сделать) Вот эта-то бадяга и покоя недаёт.
#1384 OFFLINE
Добавлено 22 October 2012 - 16:53
Bambuk, on 22 October 2012 - 16:29, сказал:
как достигнуто единодушие рынка? Даже если игрок долго играет, ну подём сросим---на такой-то минуте гол начальные кефы такие-то пусть даже по нескольким рынкам.....---хрен два кто ответит какой там скачёк должен быть (пока не посчитает и то если в теме как это сделать) Вот эта-то бадяга и покоя недаёт.
#1385 OFFLINE
Добавлено 22 October 2012 - 16:53
Bambuk, on 22 October 2012 - 16:29, сказал:
как достигнуто единодушие рынка? Даже если игрок долго играет, ну подём сросим---на такой-то минуте гол начальные кефы такие-то пусть даже по нескольким рынкам.....---хрен два кто ответит какой там скачёк должен быть (пока не посчитает и то если в теме как это сделать) Вот эта-то бадяга и покоя недаёт.
#1386 OFFLINE
Добавлено 22 October 2012 - 17:04
romka2012, on 22 October 2012 - 16:53, сказал:
#1387 OFFLINE
Добавлено 22 October 2012 - 17:41
Bambuk, on 22 October 2012 - 17:04, сказал:
Bambuk,постараюсь ответить на твой вопрос,как я вижу.Биржа задает уровни кф,а игроки уже наполняют именно этот диапазон кф-ов.
#1388 OFFLINE
Добавлено 22 October 2012 - 18:22
И чем дальше в лес тем больше дров...Оказывается тут столько примочек, что колпак уже дымит как печная труба. Мне кажется поняв механизм управления движением можно много что поиметь с этого. Чую левоком попахивает (чего-то тут не так.....), а вчём соль---не врубаюсь.
#1389 OFFLINE
Добавлено 22 October 2012 - 18:39
Bambuk, on 22 October 2012 - 18:22, сказал:
И чем дальше в лес тем больше дров...Оказывается тут столько примочек, что колпак уже дымит как печная труба. Мне кажется поняв механизм управления движением можно много что поиметь с этого. Чую левоком попахивает (чего-то тут не так.....), а вчём соль---не врубаюсь.
Sector, а рассматривал ли ты арбитражные ситуации между различными тоталами - у них скорость изменения как правило различна, может здесь что-то есть? Единственно - правильно расчитать защитную ставку и на сколько возрастет коэфициент после гола для закрытия убытка по тоталу на 1 меньше.
Для всех: дырка 3 рулит - депо (палтос) увеличил в 10 раз, уже почти все вывел. Но я ее начал бояться - прибыль большая, особенно когда гол, но нервного здоровья уходит все это руками делать - вот уж действительно ТРЭШ!!!
#1390 OFFLINE
#1391 OFFLINE
Добавлено 22 October 2012 - 19:17
#1392 OFFLINE
Добавлено 22 October 2012 - 20:35
#1393 ONLINE
Добавлено 23 October 2012 - 09:24
#1394 OFFLINE
Добавлено 23 October 2012 - 10:04
Отредактировано kakiss88, 23 October 2012 - 10:05.
#1395 OFFLINE
Добавлено 23 October 2012 - 10:31
1.01 принимают на 88-89 минуте. К середине 89-й все узнают сколько времени ко 2 тайму добавил судья. В этот момент падение кэфа за текущий тотал примерно на минуту приостанавливается, и это нам совсем не на руку. Возможно следует активнее прорабатывать и пересчитывать вариант за 1.02. Возможно это даже выгоднее, если сумеем закрыть рынок по текущему тоталу до 90-й минуты.
#1396 OFFLINE
Добавлено 23 October 2012 - 14:51
Fernando, on 23 October 2012 - 10:31, сказал:
1.01 принимают на 88-89 минуте. К середине 89-й все узнают сколько времени ко 2 тайму добавил судья. В этот момент падение кэфа за текущий тотал примерно на минуту приостанавливается, и это нам совсем не на руку. Возможно следует активнее прорабатывать и пересчитывать вариант за 1.02. Возможно это даже выгоднее, если сумеем закрыть рынок по текущему тоталу до 90-й минуты.
#1397 OFFLINE
Добавлено 23 October 2012 - 15:07
Sector, on 23 October 2012 - 14:51, сказал:
Ну да, обычно рынок не закрывается до конца матча, начиная с 89-й минуты.
#1398 OFFLINE
Добавлено 24 October 2012 - 07:08
Свои старые листочки с расчетами я гдето безнадежно посеял, поэтому вывел и пересчитал все заново. И в ходе расчетов обнаружил одну ошибку. Поскольку злопыхатели уже начали злорадствовать, то сразу скажу – в большинстве обычных матчей на кэфы она влияет в области сотых долей процента и только в матчах с очень сильным фаворитом погрешность ощущается, а вот с точки зрения написания программ приводит к довольно печальным последствиям – начинают происходить довольно непонятные ошибки с логарифмами от отрицательных чисел. Этот пост будет полезен в первую очередь разработчикам ПО.
Итак, поехали.
Примем следующую аксиому – футбольный матч является ординарным стационарным потоком случайных событий-голов, интенсивность которого складывается из интенсивности голов, забитых каждой из команд по отдельности, и эти потоки независимы:
1.png 383байтов 21 Количество загрузок
Те, кому религия не позволяет принять данную аксиому, смело могут отправляться и дальше обогащать продавцов платных прогнозов, полностью проигнорировав ниженаписанное. По определению потока Пуассона, вероятность непоявления ни одного события (гола) за время t является экспонентой2.png 327байтов 18 Количество загрузок
Поскольку кэф N на счет 0-0, является обратной величиной вероятности незабития ни одного гола, а в модели длительность матча принимается равной 94 минутам, то3.png 458байтов 18 Количество загрузок
откуда логарифмированием получаем суммарную интенсивность потока голов4.png 507байтов 10 Количество загрузок
Согласно все той же теории, вероятность появления ровно n событий за время t составляет5.png 637байтов 12 Количество загрузок
тогда вычислим вероятность ничейного счета n-n:6.png 1.43K 14 Количество загрузок
Помня о том, что вероятность ничьи – сумма вероятностей всех ничейных счетов, вычислим кэф на ничью D:7.png 1.05K 11 Количество загрузок
откуда8.png 1.01K 10 Количество загрузок
Введем обозначение9.png 446байтов 14 Количество загрузок
тогда при заданном значении N, чтобы найти параметр G необходимо решить уравнение10.png 826байтов 22 Количество загрузок
Очевидно, что ряд слева – сходящийся, причем очень быстро, поэтому на практике достаточно вычислить сумму первых 5-10 его членов. Из полученного выражения видно, что это монотонно возрастающая функция, а поскольку интенсивности потоков всегда положительны, то G>0. Эти факты мы будем использовать при численном решении данного уравнения11.png 2.83K 19 Количество загрузок
Алгоритм его решения следующий. Кэф D известен с самого начала, т.к. исходными данными для расчета являются кэфы на победы команд W10 и W20.1. Выбирается кэф N.
2. Определяется область решения – в качестве нижней границы фиксируется ноль, в качестве верхней – единица. Далее верхняя граница постоянно увеличивается в 2 раза ( 1, 2, 4, 8…мартингейл, короче) до тех пор, пока в значение функции в ней не станет положительным. При каждой такой операции нижняя граница становится равной предыдущей верхней. В примере выше границами области решений будут 1..2.
3. Решение уравнения. Я использую метод половинного деления – находится значение функции в середине области решений, и если оно отрицательно, отбрасывается левая половина области, если положительно – правая. И так несколько раз, пока не достигнете нужной вам точности.
Теперь из уже выведенных выражений составим следую систему:
12.png 1.03K 18 Количество загрузок
эта система превосходно решается аналитически, и при фиксированном значении N мы всегда сможем точно вычислить интенсивности обоих потоков:13.png 901байтов 14 Количество загрузок
Система имеет 2 одинаковых решения, отличаются они только порядком следования корней – т.е. какая именно из команд является фаворитом, а какая аутсайдеров.Ну а теперь самое главное – в нашей задаче кэф N не является фиксированным!! Зафиксирован только кэф D. Как же быть? Как вычислить тот N, при котором интенсивности будут такими, что обеспечат заданные кэфы W10 и W20? Для этого давайте внимательно рассмотрим полученную систему и ее решение.
1. При N<D возникает абсурдная ситуация, при которой один из корней – отрицателен. Поскольку матч не может закончиться с отрицательным счетом, то нижняя граница N=D.
2. При N=D один из корней равен нулю, т.е. по сути на поле играет только одна команда.
3. При постепенном увеличении N соотношение сил постепенно выравнивается.
4. При некотором N=Nmax обе интенсивности становятся полностью равны, что соответствует игре равных команд.
5. Наконец, при N>Nmax система не имеет решений.
Ситуация N=Nmax возникает тогда, когда дискриминант ln2N-4G равен нулю, или ln2N=4G. Тогда для нахождения Nmax необходимо решить уравнение
14.png 1.28K 18 Количество загрузок
Эта функция монотонно убывающая, и уравнение решается численно полностью аналогично уравнению для параметра G, за исключением перемены знаков и нижней границы равной D, а не нулю.15.png 3K 14 Количество загрузок
Теперь мы точно определили пределы, в которых может находиться N. В показанном примере это 3,5..9,706. Далее происходит самый главный процесс – нахождение того самого N, при котором кэфы П1 и П2 равны W10 и W20 соответственно.Возьмем какой-нибудь один кэф – например больший, который так же для примера будет кэфом П1, он соответствует меньшей интенсивности
16.png 811байтов 12 Количество загрузок
Чтобы вычислить кэф на победу команды, необходимо просуммировать вероятности всех исходов, при которых хозяева забивают больше голов, чем гости17.png 835байтов 9 Количество загрузок
где18.png 616байтов 9 Количество загрузок - кэф на счет i-j,
19.png 920байтов 7 Количество загрузок - кэф на то, что хозяева забьют ровно n голов,
20.png 921байтов 7 Количество загрузок - кэф на то, что хозяева забьют ровно n голов.
Очень трудно представить себе матч, который может закончиться со счетом, например 18-14, поэтому на практике при суммировании можно ограничиться значениями i=j=10.
Далее начинаем уже известным нам методом половинного деления решать уравнение
21.png 451байтов 7 Количество загрузок
левая часть которого будем монотонно убывающей функцией. То есть сначала вычисляем кэф на П1 при22.png 523байтов 8 Количество загрузок
как это делается – описано выше (для этого надо вычислить параметр G и интенсивности), если он окажется больше W10, то отбрасывается левая половина интервала, если меньше – правая. Деление интервала продолжаются до тех пор, пока вы не достигнете нужной вам точности. Результатом всех этих многочисленных вычислений будут интенсивности, которые точно соответствуют исходно заданным кэфам П1 и П2. Зная их, можно легко вычислить любой кэф матча на любой его минуте, для этого в формуле23.png 623байтов 9 Количество загрузок
необходимо произвести подстановку24.png 390байтов 11 Количество загрузок - для полного матча,
25.png 374байтов 12 Количество загрузок - для первого тайма,
т.е. в значение t необходимо подставить количество минут, оставшихся до конца интересующего интервала.
Прямо отвечая на вопрос Алекса, очевидно, что кэф 0-0HT находится по формуле
26.png 503байтов 11 Количество загрузок
только вот чтобы посчитать его по такой простой формуле, необходимо сначала долго и мучительно высчитывать эти самые лямбды. Все остальные кэфы вы все можете вычислить сами, вся инфа для этого имеется тут, на первой странице, и по приведенным выше ссылкам. Кэфы рынков «следующий гол» находятся из системы27.png 1.04K 13 Количество загрузок
Первое уравнение следует из очевидного факта, что если интенсивность первого потока в n раз выше, чем второго, то вероятность того, что первое событие наступит в нем раньше, чем во втором, также в n раз выше. Решая систему, получим28.png 1.25K 10 Количество загрузок
Для помощи в написании и отладки программ я сделал маткадовский файл, по которому можно контролировать правильность расчетов при прогоне будущей программы.Также вышла в свет новая версия SoccerSim, с подправленными алгоритмами, благодаря чему были сняты все ограничения с кэфов и теперь можно считать любые матчи вплоть до игры Барселоны с аутсайдером 12 лиги чемпионата Папуа-Новой Гвинеи.
Теперь что касаемо самой модели, а именно ее корректировке по зависимости интенсивности от времени. Есть 2 предположения:
1. Два тайма движутся по каждый со своим экспонентам, в течение тайма интенсивности постоянны, а небольшая корректировка происходит в перерыве. В этом случае необходимо вычислить коэффициент корректировки (этот вариант предложил Sert)
2. Интенсивность линейно увеличивается во времени. В таком случае необходимо вычислить угловой коэффициент этой зависимости (этот вариант предложил Bambuk).
Когда мы узнаем истину – целиком и полностью будет зависеть только от вас, у меня нет никакой статистики (акцентирую внимание на этом слове, поскольку тут имеется ввиду реальная статистика – исследуется действительно имеющая место быть зависимость на фоне малых случайных шумов, а не бессмысленный набор полностью случайных данных, коим является «статистика» результатов футбольных матчей). Еще раз напомню что мне требуется – обычный текстовый файл, в котором в каждой строке будут через пробел написаны кэфы на 0-0 до матча, на 0-0 в перерыве и на 0-0HT. Никаких названий команд и даты игр не надо!!!! Единственное условие – сматчено должно быть более 200k$ на рынке «ставки». Если данных по сматченной сумме у вас нет – берите все подряд топове европейские чемпионаты. Когда наберется 1000 матчей я напишу парсер и МНК-анализатор и загоню в него этот файл.
Attached File(s)
Отредактировано Sector, 24 October 2012 - 07:18.
#1399 OFFLINE
Добавлено 24 October 2012 - 11:55
1) 0-0 результат и 0-0НТ за 1 минуту до матча или 2-3 мин (как раз в это время в ликвидных матчах от хорошо прыгает)
2) 0-0 в перерыве. после свистка 1 или 2-3 мин. Часто он немного корректируется за 15 минут.
#1400 OFFLINE
Добавлено 24 October 2012 - 12:05
сильная-сильная сильная-средняя сильная- слабая средняя-средняя.....ну и так далее перебирать.Хотя у меня есть другой механизм--более продвинутый), то в этих группах расклады по вероятностям забивания в интервалах разнятся очень сильно не только в силу различия потоков. Начальные кефы для некоторых групп могут быть одинаковые, а расклады очень разные по реальной статистике. Вот я и подумал--нельзя ли для снижения рисков по некоторым дырам использовать более подходящие группы. Суть идеи вот в чём---берём твою же модель
и забиваем в неё искомые потоки которые можно получить по статистическим данным для каждой пары. Тогда мат ожидания для Пуассоновского распр. будут формально ожидаемым числом голов для пары х-у. Нам фактически надо минимизировать отклонения от счетов состоявшихся игр. Далее имея совокупности потоков или ожиданий мы делим данные отводя для потока (или ожидания) какой нить интервалы [x1 x2]&[y1 y2] --отрезки по ожиданиям мы можем априорнр выбрать по каким-то соображениям(если интервал большой то и пары поделятся как я привёл в простом примере сильная- сильная ну итд, но мы можем и поменьше или побольше взять в зависимости от нужд) Тогда уже в этих группировках можно расклад смотреть--иначе туфта получится мне кажется. Как интенсивности по стат данным найти я знаю могу алгоритм скинуть куда нить чтоб его проверили ну и может изменили (данные получатся не особо точные но для того что б лигу на группы раскинуть вполне подойдёт). Тогда налагая модель на модель (а фактически реалово по голам в интервалах и осуществлялово на БФ) можно какие-то выводы более глобальные сделать, а так это опять гадание по звёздам получится. Я б конечно сам смог если б в программировании хорошо разбирался (бамбук полный), так для себя пишу иногда на ВБА, а так что б глобально--полный пень.... Ибо вот ещё что--чтоб эту бадягу разрулить очень много данных надо обработать, а их надо как-то заполучить--я например веб запросы на БФ делаю в екселе статистику вынимаю, но это гиморно--лиг 10-15 еще куда ни шло, а так надо что-то посерьёзней. (честно говоря алгоритм не хотелось бы на публику выносить---я тут в постах почитал как твою идею бессовестно пользуют..... единственная проблема это игры которые типа евро итд там со статистикой тоска... хотя наверно можно и на публику--один хрен не каждый разберётся.... Такой механизм думаю интересен будет всем---ибо те кто просто торгует не имеют ни малейшего понятия---какова вероятность какого либо события в таком-то интервале. то что биржа даёт--не соответствует реалову. Например для некоторых пар (их немного если одну лигу скажем рассматривать) кеф после скачка на ничью получается иногда шибко валуйным.) Исходя из выше изложенного--поправок скорее всего будет несколько в зависимости
от пренадлежности к группе, но тут есть одно НО---если матч развивается не по сценарию, то расклад поправок тоже надо менять. Нужны какие-то наборы сценариев. Я честно говоря
плохо представляю--как такой объём работы осилить (ко всему прочему--не вижу в своих мозгах посылов проводить её в открытом формате.)
P.S. Думаю иногда--взять забросить всё к ....бабушке. Закрываю глаза и представляю себя председателем кооператива по производству гробов запирающихся изнутри.....
Даже если рассматривать разные потоки по таймам проблемы всё равно возникнут---во первых надо будет формулы для всего матча переделать, а потом всё равно если строго даже туже биржу прописывать то мы должны по хорошему условные вероятности использовать. так как в состояние можно перейти по разным маршрутам. Я в своё время даже как альтернативу рассматривал цепи Маркова с разными матрицами переходов, но там на те же грабли наступаешь---нехватает данных. Тупиковая ситуация с какого места не подходи....
Для реализации выше изложенного нам надо всего навсего получать с БФ данные по турам и обрабатывать таймы и матч в целом по голам, а также графу--коментарии чтобы собрать
данные по времени забития голов (там собственно не особо гиморно кто шарит--два цикла делаеш вложенных и матрицы заполняешь, потом из них выборку делаешь по [x1 x2]&[y1 y2].)