Updated README.
This commit is contained in:
parent
e28fc5b3be
commit
cdfec84df4
26
README.md
26
README.md
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
### Accounting library for cryptocurrency transaction activity.
|
### Accounting library for cryptocurrency transaction activity.
|
||||||
|
|
||||||
###### (The package produces a binary that makes use of the library)
|
###### (The package produces a binary and accompanying library)
|
||||||
|
|
||||||
This software calculates income, expenses, realized gains, and realized losses from cryptocurrency activity
|
This software calculates income, expenses, realized gains, and realized losses (and holding period)
|
||||||
and denominates the results in the user's home currency.
|
from cryptocurrency activity and denominates the results in the user's home currency.
|
||||||
The default home currency is USD, but any currency can be substituted.
|
The default home currency is USD, but any currency can be substituted.
|
||||||
This tool is probably most useful for filling out a tax return or making tax planning decisions.
|
This tool is probably most useful for filling out a tax return or making tax planning decisions.
|
||||||
|
|
||||||
|
@ -14,25 +14,29 @@ This tool is probably most useful for filling out a tax return or making tax pla
|
||||||
Given a [CSV input file](https://github.com/scoobybejesus/cryptools/blob/master/InputFile_CSV.md)
|
Given a [CSV input file](https://github.com/scoobybejesus/cryptools/blob/master/InputFile_CSV.md)
|
||||||
containing the user's entire cryptocurrency transaction history, the software will:
|
containing the user's entire cryptocurrency transaction history, the software will:
|
||||||
|
|
||||||
* record every cryptocurrency acquisition and track it until it is disposed
|
* record every cryptocurrency acquisition and track* it until it is disposed
|
||||||
* assign cost basis to every acquisition as of the date of purchase/exchange/receipt
|
* assign cost basis to every acquisition as of the date of purchase/exchange/receipt
|
||||||
* track the original acquisition date and cost basis (making adjustements for like-kind exchange treatment, if elected)
|
* track the original acquisition date and cost basis (making adjustements for like-kind exchange treatment, if elected)
|
||||||
* compute gain or loss from the sale/exchange/disposal (including whether short-term or long-term)
|
* compute gain or loss from the sale/exchange/disposal (including whether short-term or long-term)
|
||||||
* record income for incoming transactions and expenses for outgoing transactions
|
* record income for incoming transactions and expenses for outgoing transactions
|
||||||
* print/export the results as CSV and TXT files
|
* print/export the results as CSV and TXT files
|
||||||
|
|
||||||
|
*The tracking isn't pooled by `ticker`. Rather, it's tracked at the wallet level.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
* Two methods each of LIFO or FIFO (with intentions to add more)
|
* Two methods each of LIFO or FIFO (compatible w/ the concept of "specific identification")
|
||||||
|
|
||||||
* Ability to perform like-kind exchange treatment
|
* Ability to perform like-kind exchange treatment
|
||||||
|
|
||||||
* Compatible with any home currency
|
* Compatible with any (single) home currency
|
||||||
|
|
||||||
* Will export all bookkeeping journal entries (w/ `-a` or `-j`)
|
* Will export all bookkeeping journal entries (w/ `-a` or `-j`)
|
||||||
|
|
||||||
|
* Print menu (via `-p`) for individually choosing the desired reports
|
||||||
|
|
||||||
### Constraints
|
### Constraints
|
||||||
|
|
||||||
* *All* cryptocurrency-related activity for the user generally must be included in the
|
* *All* cryptocurrency-related activity for the user generally must be included in the
|
||||||
|
@ -40,7 +44,7 @@ containing the user's entire cryptocurrency transaction history, the software wi
|
||||||
|
|
||||||
* There can only be either one or two accounts used in a given transaction
|
* There can only be either one or two accounts used in a given transaction
|
||||||
(i.e., if a Counterparty token or Ethereum token transaction must be recorded,
|
(i.e., if a Counterparty token or Ethereum token transaction must be recorded,
|
||||||
the XCP or ETH transaction fee must be reflected in a separate transaction row).
|
the BTC or ETH transaction fee must be reflected in a separate transaction row).
|
||||||
|
|
||||||
* Manual adjustments may need to be made to the output files in cases, for example,
|
* Manual adjustments may need to be made to the output files in cases, for example,
|
||||||
when appreciated cryptocurrency was used to make a tax-deductible charitable contribution.
|
when appreciated cryptocurrency was used to make a tax-deductible charitable contribution.
|
||||||
|
@ -67,10 +71,9 @@ or jump directly to the [examples.md](https://github.com/scoobybejesus/cryptools
|
||||||
|
|
||||||
## Development state
|
## Development state
|
||||||
|
|
||||||
As of summer 2019, the code does not *require* additional features in order for it to serve the project's founder.
|
As of summer 2019, the code does not require additional features in order for it to serve the project's founder.
|
||||||
At the same time, there are plenty of bells and whistles, creature comforts, etc. that are desired and may be added.
|
At the same time, there are plenty of bells and whistles, creature comforts, etc. that are desired and may be added.
|
||||||
Additionally, the code could use factoring or general re-working in several areas.
|
Additionally, the code could use factoring or general re-working in several areas.
|
||||||
In fact, it may be nice to use the business logic as a library instead of running a full binary.
|
|
||||||
|
|
||||||
The software has been tested on Mac, Linux, and FreeBSD.
|
The software has been tested on Mac, Linux, and FreeBSD.
|
||||||
Additional testers/users are encouraged and welcome.
|
Additional testers/users are encouraged and welcome.
|
||||||
|
@ -79,7 +82,8 @@ Additional testers/users are encouraged and welcome.
|
||||||
|
|
||||||
* Contributors welcome. New authors should add themselves to the `AUTHORS` file.
|
* Contributors welcome. New authors should add themselves to the `AUTHORS` file.
|
||||||
|
|
||||||
* Roadmap and todos: we're working through items in [Issues](https://github.com/scoobybejesus/cryptools/issues); feel free to tackle or add issues.
|
* Roadmap and todos: we're slowly working through items in [Issues](https://github.com/scoobybejesus/cryptools/issues);
|
||||||
|
feel free to tackle or add issues.
|
||||||
|
|
||||||
## A few words from the founder
|
## A few words from the founder
|
||||||
|
|
||||||
|
@ -91,7 +95,7 @@ I eventually created this project as a reaction to the inadequate tooling I foun
|
||||||
Sure, other products have more bells and whistles, but at least I know this produces correct results
|
Sure, other products have more bells and whistles, but at least I know this produces correct results
|
||||||
(i.e., this software specifically identifies and track all acquired assets, whereas online solutions seems to pool them together).
|
(i.e., this software specifically identifies and track all acquired assets, whereas online solutions seems to pool them together).
|
||||||
|
|
||||||
I am not a formally trained programmer, however I have come to enjoy it very much and learn more whenever I can.
|
I am not a formally trained programmer, however I have come to enjoy it very much and I learn more whenever I can.
|
||||||
I originally tried to learn C++ by myself, and that was frustrating.
|
I originally tried to learn C++ by myself, and that was frustrating.
|
||||||
My first real progress was with Python, but I still didn't manage to fully develop a working program.
|
My first real progress was with Python, but I still didn't manage to fully develop a working program.
|
||||||
Luckily, I managed to stumble across a mentor who helped me write 80% of an MVP in strongly-typed Swift.
|
Luckily, I managed to stumble across a mentor who helped me write 80% of an MVP in strongly-typed Swift.
|
||||||
|
|
Loading…
Reference in New Issue