# Хеджирование

> Для наиболее правильного процесса хеджирования софт разделен на несколько роутов (подготовка и открытие ставок), поэтому для выполнения таковых ставок обязательно их необходимо подготовить, при этом процесс подгтовки софт исскуственно замедлит независимо от кол-ва кошельков в **threads**, для минимизации неправильных рассчетов.\
> \
> При подготовки софт попробует объединить все кошельки в разные группы в базе данных (**\_outputs/db/polymarket**) в зависимости от настроек. \
> База данных для хеджирования при этом будет единная (не закрепленна за конкретным роутом в отличии от другиз баз данных) для всего процесса.\
> \
> Кошельки в группах будут разделены на две части, которые ставят на Yes и которые ставят на No, при этом в случае, если кол-во кошельков в группе нечетное, та ставка, где процент ставки больше, на обратную сторону же (где процент меньше) эмаунты могут быть меньше, чем переданные в **minAndMaxAmount**.
>
> Для минимизации проблем необходимо помнить, что минимальная ставка - **1$**, поэтому не стоит ставить слишком маленькие эмаунты для ставок с большой разницей между Yes/No (так как если кошелек A захочет поставить на NO 2$ при шансе 99, то естественно кошелек B не сможет поставить больше 1$), та и в целом для меньших потерь, стоит выбирать ставки с меньшей разницей. А так-же не стоит использовать кошельки с балансом меньшим, чем максимальный желаемый эмаунт (либо ограничивать такие кошельки через **minTokenBalance**). Софт предусматривает такие сценарии и будет выдавать ошибки на этапе подготовки, но всегда лучше перестраховаться, так как софт такого рода делаем впервые. Как и с прогоном объемов, тут так-же стоит выбирать события с как можно большим объемом.
>
> Данные о подготовленных кошельках будут сохраненны в **\_outputs/csv/checkers/polymarket-bids-prepare.csv**\
> \
> При выполнении открытия позиций на каждом кошельке будут выполнены проверки наличия желаемого сохраненного ивента, балансов кошельков в группе (за исключением уже выполненных кошельков), отклонение в сторонах ставок (лучше не затягивать между подготовкой ставок и их открытием или же запускать не все кошельки, а по пачкам), а также другие параметры, в ходе которых вся группа ставок может быть помечена как **ruined.**
>
> Данные о прогрессе ставок будут сохраненны в **\_outputs/csv/checkers/polymarket-bids-progress.csv**
