Browse Source

Fix currency inconsistency (GBX vs. GBp)

pull/1869/head
Thomas 2 years ago
parent
commit
3f1b5271c7
  1. 34
      apps/api/src/services/data-provider/eod-historical-data/eod-historical-data.service.ts

34
apps/api/src/services/data-provider/eod-historical-data/eod-historical-data.service.ts

@ -40,7 +40,7 @@ export class EodHistoricalDataService implements DataProviderInterface {
return { return {
assetClass: searchResult?.assetClass, assetClass: searchResult?.assetClass,
assetSubClass: searchResult?.assetSubClass, assetSubClass: searchResult?.assetSubClass,
currency: searchResult?.currency, currency: this.convertCurrency(searchResult?.currency),
dataSource: this.getName(), dataSource: this.getName(),
isin: searchResult?.isin, isin: searchResult?.isin,
name: searchResult?.name, name: searchResult?.name,
@ -147,7 +147,7 @@ export class EodHistoricalDataService implements DataProviderInterface {
{ close, code, timestamp } { close, code, timestamp }
) => { ) => {
result[code] = { result[code] = {
currency: searchResponse?.items[0]?.currency, currency: this.convertCurrency(searchResponse?.items[0]?.currency),
dataSource: DataSource.EOD_HISTORICAL_DATA, dataSource: DataSource.EOD_HISTORICAL_DATA,
marketPrice: close, marketPrice: close,
marketState: isToday(new Date(timestamp * 1000)) ? 'open' : 'closed' marketState: isToday(new Date(timestamp * 1000)) ? 'open' : 'closed'
@ -184,16 +184,31 @@ export class EodHistoricalDataService implements DataProviderInterface {
return { return {
assetClass, assetClass,
assetSubClass, assetSubClass,
currency,
dataSource, dataSource,
name, name,
symbol symbol,
currency: this.convertCurrency(currency)
}; };
} }
) )
}; };
} }
private convertCurrency(aCurrency: string) {
let currency = aCurrency;
console.log('convertCurrency', currency);
if (currency === 'GBX') {
currency = 'GBp';
}
console.log(currency);
console.log('---');
return currency;
}
private async getSearchResult(aQuery: string): Promise< private async getSearchResult(aQuery: string): Promise<
(LookupItem & { (LookupItem & {
assetClass: AssetClass; assetClass: AssetClass;
@ -213,14 +228,7 @@ export class EodHistoricalDataService implements DataProviderInterface {
const response = await get(); const response = await get();
searchResult = response.map( searchResult = response.map(
({ ({ Code, Currency, Exchange, ISIN: isin, Name: name, Type }) => {
Code,
Currency: currency,
Exchange,
ISIN: isin,
Name: name,
Type
}) => {
const { assetClass, assetSubClass } = this.parseAssetClass({ const { assetClass, assetSubClass } = this.parseAssetClass({
Exchange, Exchange,
Type Type
@ -229,9 +237,9 @@ export class EodHistoricalDataService implements DataProviderInterface {
return { return {
assetClass, assetClass,
assetSubClass, assetSubClass,
currency,
isin, isin,
name, name,
currency: this.convertCurrency(Currency),
dataSource: this.getName(), dataSource: this.getName(),
symbol: `${Code}.${Exchange}` symbol: `${Code}.${Exchange}`
}; };

Loading…
Cancel
Save