lib_taxes / hledger-flow: cost-basis work-around for bitcoin.tax #96
Reference in New Issue
Block a user
Delete Branch "refs/pull/96/head"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description
Issue #51 describes at least a few undocumented bitcoin.tax issues:
Bicoin.tax gives unexpected cost-basis results when
Feeis givenwith
Total(whenTotalis given in place ofPrice). Theexpectation is that bitcoin.tax will perform the cost-basis
calculation on
TotalwhenFeeis also given.However, bitcoin.tax will give expected cost-basis results if
Priceis given in place ofTotal(withFeealso given) or ifTotalis given after local cost-basis adjustments are made (butwithout
Feegiven).The rationale for why docker-finance doesn't use
Price:docker-finance has all of the
Totals; soPriceisn'tnecessary.
Local price information isn't available for most trades (and
shouldn't be necessary since all
Totals are available).Additionally, when
Feeis non-fiat (crypto), it now must be markedas a SPEND in order to be disposed (and to produce an accurate
closing report).
Finally, if
FeeCurrencydoes not match eitherSymbolorCurrency(e.g., BTC-ETH w/ BNB fee), it's unknown if cost-basismust be calculated locally as well (if
Totalis given). Localcalculations cannot be done because
Feeprice information is(almost certainly) not available for this type of trade.
Until upstream can assert that attaching the
Feewill subsequentlyadjust the cost-basis of
Totaland dispose of theFeein theprocess (while also allowing
Totalto be used in place ofPrice),the
Fee(andFeeCurrency) column(s) must not be populated and valuesinstead moved to SPEND (as described above).
Upstream is aware of these issues (since May) and they're in the process
of resolution. In the meantime, docker-finance work-arounds should
suffice for all trades that have a fiat
Feeand/or aFee/FeeCurrencythat matches one side of the trading pair.Agreement