Improve deepbook's trading flexibility by enabling specification of both input and output quantities in transactions

Improvement Idea: Enhancing Deepbook Flexibility with Both Input/Output Quantities

Problem: Currently, Deepbook transactions only allow users to specify the amount of the input asset, leading to an imbalanced transaction system. In its current state, users can swap from quote to base with an exact base quantity by placing a market order, but the system does not support swapping from base to quote with an exact quote quantity. This lack of flexibility limits the potential of our decentralized exchange by not fully supporting both fixed input and output quantities.

Description: The proposed solution involves upgrading the transaction system to support both fixed input and output quantities for all asset swaps. This means that users would be able to specify either the quantity of base or quote asset they want to receive in a transaction, providing greater flexibility and precision in trading. With this improvement, deepbook can better accommodate diverse trading strategies and enhance the overall user experience, aligning more closely with the functionality offered by common decentralized exchanges.

Please review this draft and let me know if there are any changes you would like to make or any additional information you’d like to include.