Learn about what happens during withdrawal from our decentralized Trading Bot.


Inside the Frontend.sol smart contract exists four types of withdrawals:
  • withdraw()
  • withdrawNow()
  • withdrawAll()
  • withdrawAllNow()
Any function may be called at any time with the exception of the withdrawNow() function which may only be called when the bot is in a trade. It will fail when the bot is "Holding Cash."
Each withdraw type is split into a pair of Pending and Instant methods. Each method contains a pair of functions to handle your specific request: Partial withdraw or Full withdraw.
  • withdraw() submits a Pending, Partial withdrawal.
  • withdrawNow() submits an Instant, Partial withdrawal.
  • withdrawAll() submits a Pending, Full withdrawal.
  • withdrawAllNow() submits an Instant, Full withdrawal.
Just like with Deposits, during Alpha 2.5 the only thing you need to worry about is the USDC, withdraw your USDC whenever you want.
Don't worry! The website automatically handles which function to select depending on your inputs and whether you press the "Withdraw" or "Withdraw Now" button.


The withdraw() and withdrawAll() functions both submit a pending withdrawal to the bot to be excuted when the bot is "Holding Cash," such as when the bot exits its current trade. If the bot is currently "Holding Cash" then these functions will be executed immediately. A pending withdrawal is the default type and will not ever incur the Immediate Withdrawal Penalty.
Trades affect your balance. If the Minimum Cash Balance is not maintained when any withdrawal is executed – such as when a trade underperforms – the withdrawal will be converted to a Full withdrawal. There is no penalty for this conversion. To prevent your partial withdrawal from being converted to a full withdrawal, ensure any withdrawals you submit will keep your cash balance a healthy amount above the minimum required. You're unlikely to have an issue if after a withdrawal you still have 150% the minimum.


The withdrawNow() and withdrawAllNow() functions both submit an instant withdrawal to the bot to be excuted when the bot is "Long" or "Short." If the withdrawAllNow() function is called while the bot is "Holding Cash," it will convert to withdrawAll(). An instantaneous withdrawal is not the default type and will incur penalties. These penalties are reduced depending on the NFT you own when the withdrawal is processed. Similarly to the Pending withdraw types above, ensure any withdrawal you submit will maintain the minimum cash balance.

Immediate Withdrawal Penalty

The current rate is 50.0% profit share. The penalty is only charged on the current trade's profits.
This penalty is in place to discourage the urge to submit an instant withdrawal when the bot begins to lose profit. The cryptocurrency market is exceptionally volatile compared to traditional markets and as such a trade may swing -X% into an alarming loss before closing +Y% in exuberant profit.
You can lower your penalty percentage by owning an NFT.
Upon executing a withdrawal, the bot will verify you have sufficient cash in the bot to cover the withdrawal while maintaining the Minimum Cash Balance. Should you have insufficient cash to maintain the minimum after the withdrawal, the bot will convert your Partial withdrawal to Full.