-
-
Notifications
You must be signed in to change notification settings - Fork 111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Token migration/rebranding/redenomination #320
Comments
I posted a question about this on the Discord server too, https://discordapp.com/channels/581493570112847872/581493570112847876/1169587813130444810 copy and pasting messages here to expand on the above. One thing you could do is write a script to simply rename the tokens in all of the pre-swap transactions to be the same as the new name, and then remove the transactions for spending the old tokens and receiving the new ones. If the denomination has changed then you'd also need to do change the values though. That would be preferable to having a disposal for the swap Tom78: thanks for the suggestion, I suppose that is an option. _However I also had NU and KEEP which both were merged into "T" and the distribution makes things a little more complex! so in this case, I'd have to find all NU trades, change the token name to "T" and multiply the quantity by 3.26 |
+1 |
The Swap transaction type allows you to rebrand/redenominate a token. The cost basis is transfered from the sell asset to the buy asset, this is NOT a taxable event. See #320.
I've just added a feature branch for the new
This new transaction type allows you to rebrand/redenominate a token. The cost basis is transfered from the sell asset to the buy asset, this is NOT a taxable event. Please give it a test. I've also updated the Binance parser, to use |
Thanks for this. From my initial brief testing. For a stock split or reverse split this seems to work well. The only issue is when the swap and subsequent trade happens on the same day, the calculation is then wrong. However in real life this will almost never happen as the split will happen before or after the trading day. For crypto tokens not sure. Example, gain marked as 90 when it is actually 0
|
Hi @njwedwards, thanks for this, I forgot about how the same day pooling/matching would impact the swap. It's also going to be a problem for B&B matched trades too, as these are matched before the section104 pooling, which is where the cost basis is transferred for the swap. I think I'll have to go back to the drawing board, I'm not even sure it's possible to find a solution, be interested to know your thoughts?
|
I see what you mean. I am not sure how you get around this. The B&B matching is likely to come up quite a lot and cause problems. I can't see a way without in effect doing in code what you would have to do manually currently, which is to update past transactions with the new ratio. |
I wonder how sites like Koinly and CryptoTaxCalculator do it? Or maybe it doesn't work for UK. Aha! just found this... https://help.cryptotaxcalculator.io/en/articles/6188320-swap-category
Might have to raise this with HMRC as they state here: https://www.gov.uk/hmrc-internal-manuals/cryptoassets-manual/crypto22110
This is not possible due to the same day/bnb rules. |
Had a bit of a thought, don't know if this is workable. Create a new step before or after import. Of course this could all just be done manually (as I have been doing) or with a separate script, but here it just means that the current master data does not need to be changed and everything in the master file is as it was at the time (apart from new Reclassify entries) and can be audited easily. In the master Excel spreadsheet, one could even have a separate sheet, that is for just this. Here are some examples of shares ratio/name changes from recent years: TATE 6:7 |
I think the solution you describe is similar to how the CGTCalculator handles it, see Example5. Although they have the limitation that you can only use it once per stock/asset. This is probably the best option, allowing the user to rename an asset, and to redenominate an asset in its entirely. |
Was not aware they had that but makes sense as I don't see any other way they could do it. Anyway as an example, TSLA which has had 2 recent splits (and added rename as example):
Don't see an issue here with the refactoring or renaming, when going over old entries each time there is a new Reclassify. Of course there is still the issue of modifying or splitting the cost basis of a holding, as in the following example, so perhaps the Swap functionality will still be suitable here and in other instances:
I don't know if the above Swaps could be done with a ratio instead of the actual amount. Anyway, I am getting out of my depth. Will leave it with you to have a good think about and decide the best way forward. Thanks |
I have several occurrences of token migration/rebranding/redenomination in my Binance account history.
Here are a some screenshots showing examples of this - my original Binance Statement data and the results after it is parsed by the conv tool.
As you can see, they are both shown as "Distribution" with positive (new token issued) or negative "change" (old token removed).
Bitty Tax parses the positve as "Airdrop" and the negative as "Spend" but there isn't actually a disposal taking place.
It would be good if this situation was catered for.
The text was updated successfully, but these errors were encountered: