Skip to content

v2.0.8

Choose a tag to compare

@GeneBO98 GeneBO98 released this 07 Oct 21:15

Database Schema (Migration 069)

  • Added original_currency VARCHAR(3) column (default 'USD')
  • Added exchange_rate DECIMAL(20, 10) column (default 1.0)
  • Added original value columns for entry price, exit price, P&L, commission, and fees in source currency

Backend - Finnhub API

  • Added getForexRate() method to fetch historical exchange rates
  • 24-hour caching for forex rates
  • Supports any currency pair with automatic fallback

Backend - Currency Converter Utility

  • convertToUSD() - Converts single monetary values
  • convertTradeToUSD() - Converts entire trade objects with all monetary fields
  • userHasProAccess() - Validates Pro tier requirement

Backend - CSV Parser

  • Added detectCurrencyColumn() for case-insensitive currency field detection
  • Pro tier enforcement with "CURRENCY_REQUIRES_PRO:" error prefix
  • Stores currency context for broker-specific parsers

Backend - Trade Controller

  • Currency conversion logic runs after CSV parsing
  • Maps each trade to its currency from original CSV records
  • Converts all trades before database insertion
  • Works with all broker formats

Backend - Trade Model

  • Updated Trade.create() to accept and store currency fields
  • Saves both original currency values and USD conversions

Full Changelog: v2.0.7...v2.0.8