add support for euro cryptocurrencies, ALGO and remove unknown crypto… (#480)
* add support for euro cryptocurrencies, ALGO and remove unknown cryptocurrencies from list * Update changelog Co-authored-by: Thomas <4159106+dtslvr@users.noreply.github.com>
This commit is contained in:
parent
bc58ee86ca
commit
80782f1098
@ -7,11 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Added support for cryptocurrency _Algorand_
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Locked the symbol input in the edit transaction dialog
|
- Locked the symbol input in the edit transaction dialog
|
||||||
- Filtered the account selector by account type (`SECURITIES`) in the create or edit transaction dialog
|
- Filtered the account selector by account type (`SECURITIES`) in the create or edit transaction dialog
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Fixed the search functionality for cryptocurrency symbols (do not show unsupported symbols)
|
||||||
|
|
||||||
## 1.78.0 - 20.11.2021
|
## 1.78.0 - 20.11.2021
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
"1INCH": "1inch",
|
"1INCH": "1inch",
|
||||||
|
"ALGO": "Algorand",
|
||||||
"AVAX": "Avalanche",
|
"AVAX": "Avalanche",
|
||||||
"MATIC": "Polygon",
|
"MATIC": "Polygon",
|
||||||
"SHIB": "Shiba Inu"
|
"SHIB": "Shiba Inu"
|
||||||
|
@ -197,16 +197,20 @@ export class YahooFinanceService implements DataProviderInterface {
|
|||||||
// filter out undefined symbols
|
// filter out undefined symbols
|
||||||
return quote.symbol;
|
return quote.symbol;
|
||||||
})
|
})
|
||||||
.filter(({ quoteType }) => {
|
.filter(({ quoteType, symbol }) => {
|
||||||
return (
|
return (
|
||||||
quoteType === 'CRYPTOCURRENCY' ||
|
(quoteType === 'CRYPTOCURRENCY' &&
|
||||||
|
this.cryptocurrencyService.isCrypto(
|
||||||
|
symbol.replace(new RegExp('-USD$'), 'USD').replace('1', '')
|
||||||
|
)) ||
|
||||||
quoteType === 'EQUITY' ||
|
quoteType === 'EQUITY' ||
|
||||||
quoteType === 'ETF'
|
quoteType === 'ETF'
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
.filter(({ quoteType, symbol }) => {
|
.filter(({ quoteType, symbol }) => {
|
||||||
if (quoteType === 'CRYPTOCURRENCY') {
|
if (quoteType === 'CRYPTOCURRENCY') {
|
||||||
// Only allow cryptocurrencies in USD
|
// Only allow cryptocurrencies in USD to avoid having redundancy in the database.
|
||||||
|
// Trades need to be converted manually before to USD (or a UI converter needs to be developed)
|
||||||
return symbol.includes('USD');
|
return symbol.includes('USD');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -254,14 +258,15 @@ export class YahooFinanceService implements DataProviderInterface {
|
|||||||
if (isCurrency(aSymbol.substring(0, aSymbol.length - 3))) {
|
if (isCurrency(aSymbol.substring(0, aSymbol.length - 3))) {
|
||||||
return `${aSymbol}=X`;
|
return `${aSymbol}=X`;
|
||||||
} else if (
|
} else if (
|
||||||
this.cryptocurrencyService.isCrypto(aSymbol) ||
|
this.cryptocurrencyService.isCrypto(
|
||||||
this.cryptocurrencyService.isCrypto(aSymbol.replace('1', ''))
|
aSymbol.replace(new RegExp('-USD$'), 'USD').replace('1', '')
|
||||||
|
)
|
||||||
) {
|
) {
|
||||||
// Add a dash before the last three characters
|
// Add a dash before the last three characters
|
||||||
// BTCUSD -> BTC-USD
|
// BTCUSD -> BTC-USD
|
||||||
// DOGEUSD -> DOGE-USD
|
// DOGEUSD -> DOGE-USD
|
||||||
// SOL1USD -> SOL1-USD
|
// SOL1USD -> SOL1-USD
|
||||||
return aSymbol.replace('USD', '-USD');
|
return aSymbol.replace(new RegExp('-?USD$'), '-USD');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user