bitprices is a command-line tool that generates transaction reports with the USD (fiat) value on the date of each transaction. As well as FIFO/LIFO disposal reports. A web frontend is available.
I appreciate any testing, feedback, suggestions you can provide.
GitHub:
https://github.com/dan-da/bitpricesWeb Frontend:
https://mybitprices.info/I initially wrote this utility to find historic prices so that I could provide these to an accountant. And it grew a bit from there.
Let's see a couple examples, shall we?
Price History Report./bitprices.php --addresses=1M8s2S5bgAzSSzVTeL7zruvMPLvzSkEAuv -g
+------------+------------+------------------+-----------+-------------+----------------+---------------+
| Date | Addr Short | BTC Amount | USD Price | USD Amount | USD Amount Now | USD Gain |
+------------+------------+------------------+-----------+-------------+----------------+---------------+
| 2011-11-16 | 1M8..Auv | 500000.00000000 | 2.46 | 1230000.00 | 188355000.00 | 187125000.00 |
| 2011-11-16 | 1M8..Auv | -500000.00000000 | 2.46 | -1230000.00 | -188355000.00 | -187125000.00 |
| 2013-11-26 | 1M8..Auv | 0.00011000 | 913.95 | 0.10 | 0.04 | -0.06 |
| 2013-11-26 | 1M8..Auv | -0.00011000 | 913.95 | -0.10 | -0.04 | 0.06 |
| 2014-11-21 | 1M8..Auv | 0.00010000 | 351.95 | 0.04 | 0.04 | 0.00 |
| 2014-12-09 | 1M8..Auv | 0.00889387 | 353.67 | 3.15 | 3.35 | 0.20 |
| 2015-06-05 | 1M8..Auv | 0.44520000 | 226.01 | 100.62 | 167.71 | 67.09 |
| 2015-06-07 | 1M8..Auv | 0.44917576 | 226.02 | 101.52 | 169.21 | 67.69 |
| 2015-10-17 | 1M8..Auv | 0.00010000 | 270.17 | 0.03 | 0.04 | 0.01 |
| 2015-11-05 | 1M8..Auv | 0.00010000 | 400.78 | 0.04 | 0.04 | 0.00 |
| Totals: | | 0.90356963 | | 205.40 | 340.39 | 134.99 |
+------------+------------+------------------+-----------+-------------+----------------+---------------+
Many more columns and also column templates are available for this report. Or specify your own columns in your own order.
note: This address was chosen for the example because it is a well known address listed on theopenledger.com as having the largest transaction ever.
Disposal ReportThis is a disposal report for the same address as above. Default cost method (FIFO) is used.
./bitprices.php --addresses=1M8s2S5bgAzSSzVTeL7zruvMPLvzSkEAuv --report-type=schedule_d -g
+--------------------------+---------------+--------------------+------------+------------+-----------+-----------------+
| Description | Date Acquired | Date Sold/Disposed | Proceeds | Cost Basis | Gain/Loss | Short/Long-term |
+--------------------------+---------------+--------------------+------------+------------+-----------+-----------------+
| 500000.00000000 Bitcoins | 2011-11-16 | 2011-11-16 | 1230000.00 | 1230000.00 | 0.00 | Short |
| 0.00011000 Bitcoins | 2013-11-26 | 2013-11-26 | 0.10 | 0.10 | 0.00 | Short |
| | | Net Summary Long: | 0.00 | 0.00 | 0.00 | |
| | | Net Summary Short: | 1230000.10 | 1230000.10 | 0.00 | |
+--------------------------+---------------+--------------------+------------+------------+-----------+-----------------+
Daily exchange rates are obtained from bitcoinaverage.com. All fiat currencies supported by bitcoinaverage.com may be reported, not only USD.
Historic transaction data for each address is obtained from a blockchain API service provider, which can be either a third party service or something you run locally.
plenty more info at above links...
Disclaimer:Use at your own risk.
The author makes no claims or guarantees of correctness. This software has not been reviewed or certified by a CPA.
The schedule D report is provided for informational purposes only and may not be accurate or applicable to your situation. You should NOT present these results to tax authorities. Instead, consult with a tax professional.