Skip to content

antoineprdhmm/pnlparse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PNLParse

Analyze trades and returns from broker files. Your data never leaves your machine.

Built with Tauri (Rust + Next.js).

Features

  • Import transaction CSV files from supported brokers
  • Track open and closed positions
  • Compute realized P&L, MOIC, XIRR, and peak capital at risk
  • All data stored locally in SQLite

Installation

Dev

Install Rust, then:

Install Tauri V2

cargo install tauri-cli --version "^2.0.0" --locked

Install front end dependencies

cd app && npm install

Launch Tauri

cargo tauri dev

Release

Download the latest release for your platform from the Releases page:

  • macOS (Apple Silicon): .dmg (aarch64)
  • macOS (Intel): .dmg (x86_64)
  • Windows: .msi or .exe
  • Linux: .AppImage or .deb

Supported Brokers

  • DEGIRO — French CSV
  • Saxo Bank — French CSV
  • Custom CSV — Import your transactions from anywhere

Adding a New Integration

Integrations are CSV parsers implemented in Rust under src-tauri/src/infrastructure/transactions_file_parsers/parsers/.

Each parser implements the TransactionFileParser trait and maps CSV rows to the Transaction domain type. To add a new broker:

  1. Create a new file in the parsers/ directory (e.g. mybroker.rs)
  2. Implement TransactionFileParser for your parser struct
  3. Register it in parsers/mod.rs and wire it up in the parser factory
  4. Add a corresponding Source variant in src-tauri/src/domain/source.rs

For the custom CSV format, see the column specification in parsers/custom.rs.

Feel free to open a pull request if you want to add support for a new broker.

Support

Open an issue on GitHub for bug reports, feature requests, or questions about adding a new integration.

License

MIT — see LICENSE.

About

Analyze trades and returns from broker files. Your data never leaves your machine.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages