Как бы я видел этот процесс:
1. Игрок нажимает кнопку "Хочу играть" -- в этот момент с него списывается в пользу казино ставка + комиссия и присваивается статус "Готов к игре".
2. Если от второго игрока деньги не пришли за некоторое разумное время, игра отменяется и заплатившему игроку предлагается найти другого партнёра или вернуть деньги (на выбор).
3. Когда у обоих игроков появился статус "Готов к игре" (деньги уже у казино), происходит собственно игра.
4. Проигравшему выдаётся сообщение о проигрыше, выигравшему -- перечисляется выигрыш за минусом комиссии.
Не могу увидеть в чём тут может быть сложность. Хотя конечно внутренняя валюта лучше. Какие-нибудь "К-баксы" с курсом 10 за 1 доллар. Вывод в крипте по курсу на момент вывода.
Делаем массив строк поиска, из него через map() делаем массив inp, из него опять через map() массив filter. Потом запускаем for... of по массиву строк поиска, одновременно наращивая переменную-счетчик и меняем значения value соответствующих элементов на значения из массива filter.
Может быть вообще можно заранее подготовить данные или хотя бы их часть? Особенно если разные люди работают с одними и теми же данными, то неплохо держать где-нибудь кэш и грузить данные из него в фоне пока юзер смотрит на график крупного масштаба, отрисованный, скажем, по сотне точек и думает где ему нужно увеличить.
В общем, если уточнить задачу, могут найтись разные решения.