Техническое задание
Работа наверное на Python, если есть другие предложения то с радостью выслушаю.
Есть портфель из какого-то числа активов. Нужно написать код, который будет актоматически делать ребалансировку. Например имеем портфель с 10 активами и нужно отбалансировать активы X, Y и Z которые мы отслеживаем как индекс.
Сделать группу в которую мы будем заносить те тикеры которые в индексе. И указывать параметр (P) сколько ценность в BTC должен быть каждый из них. Binance показывает и количество купленной отдельной валюты и какую эта валюта имеет стоимость в BTC.
Индекс равновзвешенный, один параметр для всех активов. Допустим стоимость X – 10 BTC, Y – 15 BTC, Z – 8 BTC. Мы указываем, что P = 11 BTC.
При исполнения кода, активы подгоняются под P, какие то продаются, какие то покупаются до нужного числа. Может быть сначала продавать те которые выше 11 BTC и потом из общего количества BTC на счете добирать в те, где не хватает до 11.
Заявки будут выставлять по типу айсберг. API Binance позволяет так делать. То есть выставляется малая часть по определенной цене и как только исполняется, выставляется снова эта часть по этой цене, и так пока не исполнится.
При осуществлении ордера, необходимо фиксировать цену в долларах для того, чтобы можно было посчитать среднюю цену по активу. Как только весь актив закуплен, необходимо высчитать средневзвешенную цену по всему портфелю для того, чтобы завести эти данные в программу которая отслеживает наш портфель в режиме реального времени.
Так же нужен код чтобы купить какой то актив на Binance. Мы указыаем тикер, цену в BTC и объем в BTC. Айсбергом так же покупается и потом выводится цена покупки с количеством.