cdump / investments

Analysis of Interactive Brokers reports for tax reporting in Russia
MIT License
110 stars 20 forks source link
interactive-brokers investment tax-report taxes

Investments

Библиотека для анализа брокерских отчетов + утилиты для подготовки налоговой отчетности

Tests status

Установка/обновление

$ pip3 install investments --upgrade --user

или с помощью poetry

Утилита ibtax

Расчет прибыли Interactive Brokers для уплаты налогов для резидентов РФ

Пример отчета: ibtax report example

Запуск

$ python3 -m investments.ibtax --activity-reports-dir /path/to/activity/dir --confirmation-reports-dir /path/to/confirmation/dir

Отчеты activity & confirmation должны:

Просмотр неокруглённых цифр в расчётах

$ python3 -m investments.ibtax --verbose --activity-reports-dir /path/to/activity/dir --confirmation-reports-dir /path/to/confirmation/dir

Экспорт отчёта в pdf файл

$ python3 -m investments.ibtax --save-to /path/to/ibtax-report.pdf --activity-reports-dir /path/to/activity/dir --confirmation-reports-dir /path/to/confirmation/dir

Утилита ibdds

Утилита для подготовки отчёта о движении денежных средств по счетам у брокера Interactive Brokers (USA) для резидентов РФ

Пример отчета: ibdds report example

Запуск

$ python3 -m investments.ibdds --activity-report-filepath /path/to/activity/report.csv

Отчет activity должен:

Подготовка отчетов Interactive Brokers

Для работы нужно выгрузить из личного кабинета два типа отчетов: Activity statement (сделки, дивиденды, информация по инструментам и т.п.) и Trade Confirmation (settlement date, необходимая для правильной конвертации сумм по курсу ЦБ)

Отчёты должны быть названы так, чтобы сортировались естественным образом по годам начиная от старого к новому. Такого можно достичь называя файлик номером года (например 2019.csv).

Activity statement

Для загрузки нужно перейти в Reports / Tax Docs > Default Statements > Activity

Выбрать Format: CSV и скачать данные за все доступное время (Perioid: Annual для прошлых лет + Period: Year to Date для текущего года)

Обязательно выгрузите отчеты за все время существования вашего счета!

Activity Statement

Trade Confirmation

Для загрузки нужно перейти в Reports / Tax Docs > Flex Queries > Trade Confirmation Flex Query и создать новый тип отчетов, выбрав в Sections > Trade Confirmation все пункты в группе Executions, остальные настройки - как на скриншоте:

Trade Confirmation Flex Query

После этого в Reports / Tax Docs > Custom Statements выгрузите отчеты за все время существования вашего счета, используя Custom date range периодами по 1 году (больше IB поставить не дает):

Trade Confirmation Statement

Разворачивание проекта для внесения изменений

$ git clone https://github.com/cdump/investments

$ cd investments

$ poetry install
$ poetry run ibtax
usage: ibtax [-h] --activity-reports-dir ACTIVITY_REPORTS_DIR --confirmation-reports-dir CONFIRMATION_REPORTS_DIR [--cache-dir CACHE_DIR] [--years YEARS] [--verbose]
ibtax: error: the following arguments are required: --activity-reports-dir, --confirmation-reports-dir

$ vim investments/ibtax/ibtax.py # edit main file for example

$ poetry run ibtax # run updated version