After reading
https://groups.google.com/g/beancount/c/Qvbcq-Sk5NY/m/WGkLFIb7AgAJ
more carefully I found a partial solution: Providing the cost currency in 
the lot reducing transaction, FIFO booking works:

option "booking_method" "FIFO"
option "operating_currency" "EUR"
option "inferred_tolerance_default" "*:0.001"
option "inferred_tolerance_default" "EUR:0.001"
option "inferred_tolerance_default" "BTC:0.00000001"


2020-12-01 open Equity:Opening-Account
2020-12-01 open Assets:Cash:Coinbase-Pro
2020-12-01 open Assets:Cash:Binance
2020-12-01 open Assets:Crypto:BTC:Coinbase-Pro
2020-12-01 open Assets:Crypto:BTC:Binance
2020-12-01 open Expenses:Commission:Coinbase-Pro:EUR
2020-12-01 open Income:Day-trading:EUR


2020-12-17 * "Coinbase" "Opening"
  Assets:Cash:Coinbase-Pro                    5000 EUR
  Equity:Opening-Account                     -5000 EUR

2020-12-17 * "Coinbase" "Trade EUR => BTC"
  Assets:Cash:Coinbase-Pro                   -2500 EUR
  Assets:Crypto:BTC:Coinbase-Pro        0.13833333 BTC {18,000 EUR, 
2020-12-17} @ 18,000 EUR
  Expenses:Commission:Coinbase-Pro:EUR          10 EUR

    
2020-12-18 * "Coinbase" "Trade EUR => BTC"
  Assets:Cash:Coinbase-Pro                   -2500 EUR
  Assets:Crypto:BTC:Coinbase-Pro             0.125 BTC {20,000 EUR, 
2020-12-18} @ 20,000 EUR
  Expenses:Commission:Coinbase-Pro:EUR           0 EUR


2020-12-19 * "Binance" "Transfer BTC Coinbase-Pro => Binance"
  Assets:Crypto:BTC:Binance                    0.2 BTC {}
                                                  ; THAT ↓ MAKES THE 
DIFFERENCE
  Assets:Crypto:BTC:Coinbase-Pro              -0.2 BTC {EUR}
                                                  ; THAT ↑ MAKES THE 
DIFFERENCE

2020-12-20 * "Binance" "Trade BTC => USDT"
  Assets:Crypto:BTC:Binance                   -0.2 BTC {} @ 19500 EUR
  Assets:Cash:Binance                         3900 EUR
  Income:Day-trading:EUR

But, unfortunately, there's a drawback: beancount creats only one lot in 
Assets:Crypto:BTC:Binance—instead 
of copying the the old ones.
Here's what I mean:

$ bean-doctor context Krypto.bean 33
Hash:6987d379aededd533a9f0f9a50712dcd
Location: Krypto.bean:33

------------ Balances before transaction

  Assets:Crypto:BTC:Binance                                                
        

  Assets:Crypto:BTC:Coinbase-Pro             0.13833333 BTC {18000 EUR, 
2020-12-17}
  Assets:Crypto:BTC:Coinbase-Pro                  0.125 BTC {20000 EUR, 
2020-12-18}


------------ Transaction

2020-12-19 * "Binance" "Transfer BTC Coinbase-Pro => Binance"
  Assets:Crypto:BTC:Binance        0.2 BTC {18617 EUR, 2020-12-19}  ;  
3723.33334000 EUR
  Assets:Crypto:BTC:Coinbase-Pro  -0.1 BTC {18000 EUR, 2020-12-17}  ; 
-2489.99994000 EUR
  Assets:Crypto:BTC:Coinbase-Pro  -0.1 BTC {20000 EUR, 2020-12-18}  ; 
-1233.33340000 EUR


Tolerances: BTC=1E-8, EUR=0.001

------------ Balances after transaction

* Assets:Crypto:BTC:Binance                 0.2 BTC {18616.6667000 EUR, 
2020-12-19}

* Assets:Crypto:BTC:Coinbase-Pro             0.06333333 BTC {20000 EUR, 
2020-12-18}

The new lot in Assets:Crypto:BTC:Binance is: 0.2 BTC {18616.6667000 EUR, 
2020-12-19}.
What I'd like it to be:

Assets:Crypto:BTC:Binance             0.13833333 BTC {18000 EUR, 2020-12-17}
Assets:Crypto:BTC:Binance                  0.125 BTC {20000 EUR, 2020-12-18}

So, basically a complete copy of the previous lots.

Why is that important? The average cost that beancount calculates is 
sufficient to calculate profit and loss. BUT: The original lot dates are 
important because I can sell coins that I held for longer than a year 
without paying taxes. So, is it possible to prevent the creation of a new 
summarized lot?


Regards


Peter schrieb am Dienstag, 22. Dezember 2020 um 22:27:08 UTC+1:

> Is there a way to automatically transfer lots from one account to another 
> using FIFO and keeping the prices paid?
>
> […] see https://groups.google.com/g/beancount/c/dS67N-vMZ88/m/FGu0vLWYAgAJ 
>

-- 
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/4035dc94-008c-4793-bd27-fd273de68406n%40googlegroups.com.

Reply via email to