Skip to content

[Format Request] DEGIRO #10

@leppa

Description

@leppa

Format Name

DEGIRO

Export Instructions

  1. Sign in to DEGIRO account.
  2. Go to the Inbox in the left panel.
  3. Select the Transactions tab.
  4. Set the date range and uncheck the "Aggregate order" option.
  5. Click the Arrow down icon (Export tooltip) and save the file

Format Description

This format has a lot of quirks. Some that I could recall:

  1. Transactions are split across multiple rows (let's call them order groups): separate rows for the main transaction itself, its fees, and currency exchange (if applicable) (let's call them sub-transactions).

    • Main sub-transaction contains actual transaction (buy, sell, etc.). It's valued in the foreign currency (if applicable). There may be more than one in one order group (e.g., when multiple partial fills happened).
    • Fee sub-transaction is always in the account currency. There may be more than one fee sub-transaction in one order group. Order groups in foreign currency will always have at least two fees: one for the currency exchange and one for the main sub-transaction itself.
    • Currency exchange sub-transactions are always in two rows: one for the account currency and and one for the foreign currency. Only the foreign currency row has an exchange rate. There may be more than one currency exchange pair in one order group.

    This means that we will have to look-ahead and assemble all CSV rows into one transaction group.

  2. Order Id may not be set for all transactions. This will complicate handling quirk 1.

  3. Timestamps have one minute precision. If more than one order was executed within one minute, sub-transactions from those orders may be intermingled with each other. There also needs to be a one minute tolerance window, as I've occasionally seen sub-transactions from one order group spread across two consecutive minutes. This will complicate handling quirk 1.

  4. There are no symbols, only ISINs. However, some option transactions have ticker of the underlying security in the ISIN field.

    For exports with lots of instruments, this plugin may need a data provider that can automatically look up symbols from some database or third-party API.

  5. Some transaction information (like type, amount, unit price) has to be extracted from the transaction description.

  6. Numbers use comma as a decimal separator (e.g., 10,3).

  7. There are two empty column names (one after the Change column and one after the Balance column):

    Date,Time,Value date,Product,ISIN,Description,FX,Change,,Balance,,Order Id

    Column with the name contains currency, while the noname one contains corresponding amount.

  8. Values in the Description and Order Id columns may sometimes be split across two rows in a weird way:

    26-08-2015,15:31,26-08-2015,SOME COMPANY,US1234567890,Währungswechsel (Ausbuchung),,EUR,"12,34",EUR,"5678,90",b2584dff-58a7-4c2a-
    ,,,,,,,,,,,a020-b0909fd1028d
    19-06-2016,14:40,17-06-2016,NOA3 C7.05 17JUN16,NOA3,VERFALL OPTION (AUS DEM GELD): Verkauf 1 zu je 0,,EUR,"0,00",EUR,"1234,56",
    ,,,,,EUR (FI0009000681),,,,,,

    This will require look-ahead and merging of rows.

Sample CSV Data

Date,Time,Value date,Product,ISIN,Description,FX,Change,,Balance,,Order Id

Row examples TBD.

Documentation or Resources

No response

Format Variations

This format is language-specific and my account is in German language, so this is the one that will be supported out of the gate. Samples in other languages will be needed to add support for those.

Contribution

Yes, I can contribute code

Additional Context

Note: This issue is mainly for tracking and visibility purposes, so it may not be filled up-to-standard. I know the format and its quirks and plan to create a plugin for it. The plugin will be thoroughly documented in the plugin user guide.

Terms

  • I have read and agree to follow the project's Code of Conduct
  • I have read and agree to follow the project's Contribution Guidelines
  • I have checked existing format requests and confirmed that this format has not already been requested
  • I have provided all requested information and agree to answer any follow-up questions

Metadata

Metadata

Assignees

Labels

enhancementIssue or pull request related to a new featureformat pluginIssue or pull request related to a format plugin

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions