We have seen a lot of financial infrastructure with @binance @CoinDCX @AaveAave and @Uniswap. Big Shot is an ERC20 shorting protocol integrating with both @AaveAave and @Uniswap pools to create a leveraged short position for the user.
A short position in finance is a position is the market where the user taking the position makes money if the value of the asset goes down. This let's the user make money out of his convictions about the market, if right. These short positions is a essential part of the market making process in the traditional financial markets. In stock markets and other asset market places a short position can be taken by the user, after providing sufficient collateral, to cover the losses if the asset value increased. Internally the exchange manages the position as if, the user borrows the asset from another user, who has this asset and sells it the market. While promising to buy it back from the market and return it to the same user at a later stage. This way the user makes money if the asset value dropped and lost money if the asset value went up. Centralized exchanges like Binance and CoinDCX must be managing short positions by matching it with long positions of similar magnitude. My idea here is to create a decentralized shorting protocol using Uniswap for currency exchange and Aave for lending. The idea is to borrow the crypto currency from Aave and sell it Uniswap. At a later stage we buy the same asset from Uniswap and pay it back to Aave. We enable the user to take leverage by a clever use of Flash transactions. We do a flash swap with Uniswap to get the collateral required to borrow the asset form Aave and pay back the flash swap with the currency loaned from Aave. This will create a short position in the currency we borrow. Note here the user needs to pay some portion of the collateral as Aave loans are over collateralized. Overcollateralization will not let only the flash swap from Uniswap to cover the entire collateral requirement. The collateral required to initiate a short position on different crypto currencies will be different as parameters like Loan to Value ratio is different for different crypto currencies in Aave.
We used @Aave for lending and @Uniswap for exchange to create a leveraged short position for the user. We deployed the protocol to both @Polygon and @Optimism main nets. Leverage is achieved by means of Flash Swap and Credit delegation. We used a react js front end with Rainbow Kit and Wagmi to integrate with the blockchain.