Learn more about what happens if you Deposit into our decentralised Trading Bot or if you want to withdraw your funds.
Inside the Frontend.sol smart contract there exists one type of deposit: deposit(). Any deposits made will be included into the bot upon trade exit when the bot displays "Holding Cash."
To secure your cash in the bot and pay for the bot to run you must deposit TC. Deposited TC is used to hold your Operating Deposit – which itself is in proportion to the amount of cash deposited – and to pay the Weekly Upkeep fee.
Any TC not part of the Operating Deposit is subject to the Weekly Upkeep fee and earns Farm Rewards via the TCC token as a "thank you" for depositing TC into the Bot.
The Operating Deposit is automatically managed into and out of your reward-eligible TC pool. Let's say you deposit 690 TC and no cash. Your full 690 TC will earn Farm Rewards and 0 TC will be subtracted each week the Weekly Fee runs. "But that's no fun," you say sitting on the sidelines watching everyone else use the bot. You then deposit 40 USDC and no TC. Our bot will automatically move 4 TC from your TC on-deposit into the Operating Deposit and only subject the remaining 686 TC to the Weekly Fee and Farm Rewards. Should you later withdraw all your USDC from the bot, then the 4 TC will be released from the Operating Deposit and again start earning Farm Rewards.
The amount of TC in the red highlighted field will be deposited after confirming with Metamask.
The token you'll deposit as cash depends on which particular strategy you select. In the case of Alpha, cash will always be USDC. Simply type in the amount of cash you wish to deposit and click the teal Deposit button in the bottom-center of the page.The amount of cash in the red highlighted field will be deposited after confirming with Metamask.
There is a Minimum Cash Balance of 1 USDC for Alpha v2.
There is a Maximum Cash Deposited of 1000 USDC for Alpha v2.
There is a Maximum Cash Deposited of 1,5 Million USDC for each strategy in Alpha v2.
In a single Deposit transaction there is an amount of TC and an amount of cash submitted. Let's say you deposit 420 TC and 2 USDC. What is submitted to the Frontend.sol smart contract can be described as deposit(420, 2). Later, you wish to top up your TC with another 100. You type in the number to the TC field, type 0 in the USDC field, and click the Deposit button. This time you submitted the equivalent of deposit(100, 0). Both values on the webpage are always submitted to the bot.
Deposits are added when the bot is "Holding Cash" (as shown on the website frontend; in the screenshot above it says "Long" in the same field).
Deposits may be accepted at any time. All cash deposits must include TC as an accompanying Operating Deposit. If you have excess TC on-deposit, the Operating Deposit will automatically be subtracted from the Farm Rewards-eligible and Weekly Fee-subjected pool. There are only ever two pools of TC: The one securing your cash via the Operating Deposit, and the other one earning Farm Rewards and paying your Weekly Fee.
Inside the Frontend.sol smart contract exists four types of withdrawals:
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.
Just like with Deposits, there are two values submitted when pressing the "Withdraw" button: The amount of TC and the amount of cash you wish to withdraw. Should you input an amount that's nearly as much as you have, the website will submit the Full withdrawal type. 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. You'll only pay the Profit Share when the cash is removed from the bot, and only if you earned a profit.
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.
Maintain the Minimum Cash Balance
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.
Instant withdrawals are now active with Alpha v2.
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. You'll pay the standard Profit Share for profit from past trades, and a higher Immediate Withdrawal Penalty on any profit from the current trade. Similarly to the Pending withdraw types above, ensure any withdrawal you submit will maintain the minimum cash balance.
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.
Should the current trade not be in profit, you do not owe any additional profit-sharing beyond the standard rate on past trades. You can lower your penalty percentage by owning a higher NFT level.
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.