rp2
Privacy-focused, free, open-source cryptocurrency tax calculator for multiple countries: it handles multiple coins/exchanges and computes long/short-term capital gains, cost bases, in/out lot relationships/fractioning, and account balances. It supports FIFO, LIFO, HIFO and it outputs in form 8949 format. It has a programmable plugin architecture
파일 탐색기
최종 버전 다운로드 (.zip)- codeql-analysis.yml
- documentation_check.yml
- static_analysis.yml
- unix_unit_tests.yml
- windows_unit_tests.yml
- crypto_example.ini
- test_bad_data.ini
- test_data.ini
- test_data4.ini
- test_data_multi_method.ini
- test_large_input.ini
- input_spreadsheet.png
- open_positions_asset.png
- open_positions_asset_exchange.png
- open_positions_input.png
- rp2_full_report_output_in_out.png
- rp2_full_report_output_summary.png
- rp2_full_report_output_tax.png
- rp2_header.png
- tax_report_us_output_capital_gains.png
- tax_report_us_output_interest.png
- developer_faq.md
- input_files.md
- output_files.md
- supported_countries.md
- user_faq.md
- crypto_example_es_es_fifo_rp2_full_report.ods
- test_data2_es_es_fifo_rp2_full_report.ods
- test_data3_es_es_fifo_rp2_full_report.ods
- test_data4_es_es_fifo_rp2_full_report.ods
- test_data_es_es_fifo_rp2_full_report.ods
- test_many_year_data_es_es_fifo_rp2_full_report.ods
- crypto_example_generic_fifo_rp2_full_report.ods
- crypto_example_generic_hifo_rp2_full_report.ods
- crypto_example_generic_lifo_rp2_full_report.ods
- crypto_example_generic_lofo_rp2_full_report.ods
- test_data2_generic_fifo_rp2_full_report.ods
- test_data2_generic_hifo_rp2_full_report.ods
- test_data2_generic_lifo_rp2_full_report.ods
- test_data2_generic_lofo_rp2_full_report.ods
- test_data3_generic_2019-12-01_2020-04-01_fifo_rp2_full_report.ods
- test_data3_generic_2019-12-01_2020-04-01_hifo_rp2_full_report.ods
- test_data3_generic_2019-12-01_2020-04-01_lifo_rp2_full_report.ods
- test_data3_generic_2019-12-01_2020-04-01_lofo_rp2_full_report.ods
- test_data3_generic_fifo_rp2_full_report.ods
- test_data3_generic_hifo_rp2_full_report.ods
- test_data3_generic_lifo_rp2_full_report.ods
- test_data3_generic_lofo_rp2_full_report.ods
- test_data4_generic_fifo_rp2_full_report.ods
- test_data4_generic_hifo_rp2_full_report.ods
- test_data4_generic_lifo_rp2_full_report.ods
- test_data4_generic_lofo_rp2_full_report.ods
- test_data_generic_fifo_rp2_full_report.ods
- test_data_generic_hifo_rp2_full_report.ods
- test_data_generic_lifo_rp2_full_report.ods
- test_data_generic_lofo_rp2_full_report.ods
- test_data_multi_method_generic_mixed_rp2_full_report.ods
- test_hifo2_generic_fifo_rp2_full_report.ods
- test_hifo2_generic_hifo_rp2_full_report.ods
- test_hifo2_generic_lifo_rp2_full_report.ods
- test_hifo2_generic_lofo_rp2_full_report.ods
- test_hifo_generic_fifo_rp2_full_report.ods
- test_hifo_generic_hifo_rp2_full_report.ods
- test_hifo_generic_lifo_rp2_full_report.ods
- test_hifo_generic_lofo_rp2_full_report.ods
- test_many_year_data_generic_0_2016-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_0_2017-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_0_2018-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_0_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_0_2020-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_2017-01-01_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_2017-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_generic_2018-01-01_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_2018-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_generic_2019-01-01_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_generic_2019-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_generic_2020-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_generic_2021-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_generic_fifo_rp2_full_report.ods
- test_many_year_data_generic_hifo_rp2_full_report.ods
- test_many_year_data_generic_lifo_rp2_full_report.ods
- test_many_year_data_generic_lofo_rp2_full_report.ods
- crypto_example_ie_en_IE_fifo_rp2_full_report.ods
- crypto_example_ie_en_IE_fifo_tax_report_ie.ods
- test_data2_ie_en_IE_fifo_rp2_full_report.ods
- test_data2_ie_en_IE_fifo_tax_report_ie.ods
- test_data3_ie_en_IE_fifo_rp2_full_report.ods
- test_data3_ie_en_IE_fifo_tax_report_ie.ods
- test_data4_ie_en_IE_fifo_rp2_full_report.ods
- test_data4_ie_en_IE_fifo_tax_report_ie.ods
- test_data_ie_en_IE_fifo_rp2_full_report.ods
- test_data_ie_en_IE_fifo_tax_report_ie.ods
- test_many_year_data_ie_en_IE_fifo_rp2_full_report.ods
- test_many_year_data_ie_en_IE_fifo_tax_report_ie.ods
- crypto_example_jp_en_fifo_open_positions.ods
- crypto_example_jp_en_fifo_rp2_full_report.ods
- crypto_example_jp_en_fifo_tax_report_jp.ods
- test_data2_jp_en_fifo_open_positions.ods
- test_data2_jp_en_fifo_rp2_full_report.ods
- test_data2_jp_en_fifo_tax_report_jp.ods
- test_data3_jp_en_fifo_open_positions.ods
- test_data3_jp_en_fifo_rp2_full_report.ods
- test_data3_jp_en_fifo_tax_report_jp.ods
- test_data4_jp_en_fifo_open_positions.ods
- test_data4_jp_en_fifo_rp2_full_report.ods
- test_data4_jp_en_fifo_tax_report_jp.ods
- test_data_jp_en_fifo_open_positions.ods
- test_data_jp_en_fifo_rp2_full_report.ods
- test_data_jp_en_fifo_tax_report_jp.ods
- test_data_jp_kl_fifo_open_positions.ods
- test_data_jp_kl_fifo_rp2_full_report.ods
- test_many_year_data_jp_en_fifo_open_positions.ods
- test_many_year_data_jp_en_fifo_rp2_full_report.ods
- test_many_year_data_jp_en_fifo_tax_report_jp.ods
- crypto_example_fifo_rp2_full_report.ods
- crypto_example_fifo_tax_report_us.ods
- crypto_example_hifo_rp2_full_report.ods
- crypto_example_hifo_tax_report_us.ods
- crypto_example_lifo_rp2_full_report.ods
- crypto_example_lifo_tax_report_us.ods
- crypto_example_lofo_rp2_full_report.ods
- crypto_example_lofo_tax_report_us.ods
- test_data2_fifo_rp2_full_report.ods
- test_data2_fifo_tax_report_us.ods
- test_data2_hifo_rp2_full_report.ods
- test_data2_hifo_tax_report_us.ods
- test_data2_lifo_rp2_full_report.ods
- test_data2_lifo_tax_report_us.ods
- test_data2_lofo_rp2_full_report.ods
- test_data2_lofo_tax_report_us.ods
- test_data3_2019-12-01_2020-04-01_fifo_rp2_full_report.ods
- test_data3_2019-12-01_2020-04-01_fifo_tax_report_us.ods
- test_data3_2019-12-01_2020-04-01_hifo_rp2_full_report.ods
- test_data3_2019-12-01_2020-04-01_hifo_tax_report_us.ods
- test_data3_2019-12-01_2020-04-01_lifo_rp2_full_report.ods
- test_data3_2019-12-01_2020-04-01_lifo_tax_report_us.ods
- test_data3_2019-12-01_2020-04-01_lofo_rp2_full_report.ods
- test_data3_2019-12-01_2020-04-01_lofo_tax_report_us.ods
- test_data3_fifo_rp2_full_report.ods
- test_data3_fifo_tax_report_us.ods
- test_data3_hifo_rp2_full_report.ods
- test_data3_hifo_tax_report_us.ods
- test_data3_lifo_rp2_full_report.ods
- test_data3_lifo_tax_report_us.ods
- test_data3_lofo_rp2_full_report.ods
- test_data3_lofo_tax_report_us.ods
- test_data4_fifo_rp2_full_report.ods
- test_data4_fifo_tax_report_us.ods
- test_data4_hifo_rp2_full_report.ods
- test_data4_hifo_tax_report_us.ods
- test_data4_lifo_rp2_full_report.ods
- test_data4_lifo_tax_report_us.ods
- test_data4_lofo_rp2_full_report.ods
- test_data4_lofo_tax_report_us.ods
- test_data_fifo_rp2_full_report.ods
- test_data_fifo_tax_report_us.ods
- test_data_hifo_rp2_full_report.ods
- test_data_hifo_tax_report_us.ods
- test_data_lifo_rp2_full_report.ods
- test_data_lifo_tax_report_us.ods
- test_data_lofo_rp2_full_report.ods
- test_data_lofo_tax_report_us.ods
- test_data_multi_method_mixed_rp2_full_report.ods
- test_data_multi_method_mixed_tax_report_us.ods
- test_hifo2_fifo_rp2_full_report.ods
- test_hifo2_fifo_tax_report_us.ods
- test_hifo2_hifo_rp2_full_report.ods
- test_hifo2_hifo_tax_report_us.ods
- test_hifo2_lifo_rp2_full_report.ods
- test_hifo2_lifo_tax_report_us.ods
- test_hifo2_lofo_rp2_full_report.ods
- test_hifo2_lofo_tax_report_us.ods
- test_hifo_fifo_rp2_full_report.ods
- test_hifo_fifo_tax_report_us.ods
- test_hifo_hifo_rp2_full_report.ods
- test_hifo_hifo_tax_report_us.ods
- test_hifo_lifo_rp2_full_report.ods
- test_hifo_lifo_tax_report_us.ods
- test_hifo_lofo_rp2_full_report.ods
- test_hifo_lofo_tax_report_us.ods
- test_large_input_fifo_rp2_full_report.ods
- test_large_input_fifo_tax_report_us.ods
- test_large_input_hifo_rp2_full_report.ods
- test_large_input_hifo_tax_report_us.ods
- test_large_input_lifo_rp2_full_report.ods
- test_large_input_lifo_tax_report_us.ods
- test_large_input_lofo_rp2_full_report.ods
- test_large_input_lofo_tax_report_us.ods
- test_many_year_data_0_2016-12-31_fifo_rp2_full_report.ods
- test_many_year_data_0_2016-12-31_fifo_tax_report_us.ods
- test_many_year_data_0_2017-12-31_fifo_rp2_full_report.ods
- test_many_year_data_0_2017-12-31_fifo_tax_report_us.ods
- test_many_year_data_0_2018-12-31_fifo_rp2_full_report.ods
- test_many_year_data_0_2018-12-31_fifo_tax_report_us.ods
- test_many_year_data_0_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_0_2019-12-31_fifo_tax_report_us.ods
- test_many_year_data_0_2020-12-31_fifo_rp2_full_report.ods
- test_many_year_data_0_2020-12-31_fifo_tax_report_us.ods
- test_many_year_data_2017-01-01_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_2017-01-01_2019-12-31_fifo_tax_report_us.ods
- test_many_year_data_2017-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_2017-01-01_infinity_fifo_tax_report_us.ods
- test_many_year_data_2018-01-01_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_2018-01-01_2019-12-31_fifo_tax_report_us.ods
- test_many_year_data_2018-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_2018-01-01_infinity_fifo_tax_report_us.ods
- test_many_year_data_2019-01-01_2019-12-31_fifo_rp2_full_report.ods
- test_many_year_data_2019-01-01_2019-12-31_fifo_tax_report_us.ods
- test_many_year_data_2019-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_2019-01-01_infinity_fifo_tax_report_us.ods
- test_many_year_data_2020-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_2020-01-01_infinity_fifo_tax_report_us.ods
- test_many_year_data_2021-01-01_infinity_fifo_rp2_full_report.ods
- test_many_year_data_2021-01-01_infinity_fifo_tax_report_us.ods
- test_many_year_data_fifo_rp2_full_report.ods
- test_many_year_data_fifo_tax_report_us.ods
- test_many_year_data_hifo_rp2_full_report.ods
- test_many_year_data_hifo_tax_report_us.ods
- test_many_year_data_lifo_rp2_full_report.ods
- test_many_year_data_lifo_tax_report_us.ods
- test_many_year_data_lofo_rp2_full_report.ods
- test_many_year_data_lofo_tax_report_us.ods
- crypto_example.ods
- test_bad_data.ods
- test_data.ods
- test_data2.ods
- test_data3.ods
- test_data4.ods
- test_data_multi_method.ods
- test_hifo.ods
- test_hifo2.ods
- test_many_year_data.ods
- messages.mo
- messages.po
- messages.mo
- messages.po
- messages.mo
- messages.po
- messages.mo
- messages.po
- messages.mo
- messages.po
- messages.pot
- __init__.py
- fifo.py
- hifo.py
- lifo.py
- lofo.py
- __init__.py
- es.py
- generic.py
- ie.py
- jp.py
- us.py
- template_open_positions_es.ods
- template_rp2_full_report_es.ods
- template_open_positions_en.ods
- template_rp2_full_report_en.ods
- template_open_positions_en_IE.ods
- template_rp2_full_report_en_IE.ods
- template_tax_report_ie_en_IE.ods
- template_open_positions_en.ods
- template_open_positions_kl.ods
- template_rp2_full_report_en.ods
- template_rp2_full_report_kl.ods
- template_tax_report_jp_en.ods
- template_tax_report_jp_kl.ods
- template_open_positions_en.ods
- template_rp2_full_report_en.ods
- template_tax_report_us_en.ods
- __init__.py
- __init__.py
- __init__.py
- tax_report_ie.py
- __init__.py
- tax_report_jp.py
- __init__.py
- tax_report_us.py
- __init__.py
- abstract_ods_generator.py
- open_positions.py
- rp2_full_report.py
- __init__.py
- __init__.py
- abstract_accounting_method.py
- abstract_country.py
- abstract_entry.py
- abstract_entry_set.py
- abstract_report_generator.py
- abstract_transaction.py
- accounting_engine.py
- balance.py
- computed_data.py
- configuration.py
- configuration_schema.py
- entry_types.py
- gain_loss.py
- gain_loss_set.py
- in_transaction.py
- input_data.py
- intra_transaction.py
- localization.py
- logger.py
- ods_parser.py
- out_transaction.py
- py.typed
- rp2_configuration_translator.py
- rp2_decimal.py
- rp2_error.py
- rp2_main.py
- tax_engine.py
- transaction_set.py
- babel.core.pyi
- babel.pyi
- ezodf.pyi
- abstract_test_ods_output_diff.py
- ods_diff.py
- rp2_test_output.py
- test_accounting_method.py
- test_balance.py
- test_configuration.py
- test_gain_loss.py
- test_gain_loss_set.py
- test_in_transaction.py
- test_input_parser.py
- test_intra_transaction.py
- test_large_input.py
- test_localized_output.py
- test_ods_output_diff.py
- test_ods_output_diff_es.py
- test_ods_output_diff_generic.py
- test_ods_output_diff_ie.py
- test_ods_output_diff_jp.py
- test_out_transaction.py
- test_rp2_decimal.py
- test_tax_engine.py
- test_transaction_set.py
- .bumpversion.cfg
- .editorconfig
- .gitattributes
- .gitignore
- .isort.cfg
- .pre-commit-config.yaml
- .pylintrc
- CHANGELOG.md
- CONTRIBUTING.md
- LICENSE
- lychee.toml
- Makefile
- MANIFEST.in
- mypy.ini
- pyproject.toml
- README.dev.md
- README.md
- setup.cfg
- setup.py
# 설치 가이드
git clone https://github.com/eprbell/rp2
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd rp2
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. 공식 설치 스크립트
쉬움 추천sudo apt-get install python3 python3-pip
APT 패키지 저장소에서 바로 설치합니다 (Debian/Ubuntu 계열).
pip install rp2
PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.
brew install python3
Homebrew로 이미 빌드된 패키지를 바로 설치합니다. 소스 빌드가 필요 없습니다.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
3. Python
쉬움sudo apt-get install python3 python3-pip
APT 패키지 저장소에서 바로 설치합니다 (Debian/Ubuntu 계열).
pip install rp2
PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
4. Make
보통- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Make Linux/macOS는 보통 기본 설치되어 있습니다. Windows는 별도 설치(예: MSYS2, WSL)가 필요합니다.
make
생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.
