Feature/increase fear and greed index to 365 days (#1519)
* Increase fear and greed index to 365 days * Update changelog
This commit is contained in:
parent
b56111ae85
commit
4f187e1a9f
@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
- Increased the historical data chart of the _Fear & Greed Index_ (market mood) to 365 days
|
||||||
- Upgraded `color` from version `4.0.1` to `4.2.3`
|
- Upgraded `color` from version `4.0.1` to `4.2.3`
|
||||||
- Upgraded `prettier` from version `2.7.1` to `2.8.1`
|
- Upgraded `prettier` from version `2.7.1` to `2.8.1`
|
||||||
|
|
||||||
|
@ -5,20 +5,18 @@ import {
|
|||||||
IDataProviderHistoricalResponse,
|
IDataProviderHistoricalResponse,
|
||||||
IDataProviderResponse
|
IDataProviderResponse
|
||||||
} from '@ghostfolio/api/services/interfaces/interfaces';
|
} from '@ghostfolio/api/services/interfaces/interfaces';
|
||||||
import { PrismaService } from '@ghostfolio/api/services/prisma.service';
|
|
||||||
import { ghostfolioFearAndGreedIndexSymbol } from '@ghostfolio/common/config';
|
import { ghostfolioFearAndGreedIndexSymbol } from '@ghostfolio/common/config';
|
||||||
import { DATE_FORMAT, getToday, getYesterday } from '@ghostfolio/common/helper';
|
import { DATE_FORMAT, getYesterday } from '@ghostfolio/common/helper';
|
||||||
import { Granularity } from '@ghostfolio/common/types';
|
import { Granularity } from '@ghostfolio/common/types';
|
||||||
import { Injectable, Logger } from '@nestjs/common';
|
import { Injectable, Logger } from '@nestjs/common';
|
||||||
import { DataSource, SymbolProfile } from '@prisma/client';
|
import { DataSource, SymbolProfile } from '@prisma/client';
|
||||||
import bent from 'bent';
|
import bent from 'bent';
|
||||||
import { format, subMonths, subWeeks, subYears } from 'date-fns';
|
import { format } from 'date-fns';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class RapidApiService implements DataProviderInterface {
|
export class RapidApiService implements DataProviderInterface {
|
||||||
public constructor(
|
public constructor(
|
||||||
private readonly configurationService: ConfigurationService,
|
private readonly configurationService: ConfigurationService
|
||||||
private readonly prismaService: PrismaService
|
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
public canHandle(symbol: string) {
|
public canHandle(symbol: string) {
|
||||||
@ -47,41 +45,6 @@ export class RapidApiService implements DataProviderInterface {
|
|||||||
if (symbol === ghostfolioFearAndGreedIndexSymbol) {
|
if (symbol === ghostfolioFearAndGreedIndexSymbol) {
|
||||||
const fgi = await this.getFearAndGreedIndex();
|
const fgi = await this.getFearAndGreedIndex();
|
||||||
|
|
||||||
try {
|
|
||||||
// Rebuild historical data
|
|
||||||
// TODO: can be removed after all data from the last year has been gathered
|
|
||||||
// (introduced on 27.03.2021)
|
|
||||||
|
|
||||||
await this.prismaService.marketData.create({
|
|
||||||
data: {
|
|
||||||
symbol,
|
|
||||||
dataSource: this.getName(),
|
|
||||||
date: subWeeks(getToday(), 1),
|
|
||||||
marketPrice: fgi.oneWeekAgo.value
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
await this.prismaService.marketData.create({
|
|
||||||
data: {
|
|
||||||
symbol,
|
|
||||||
dataSource: this.getName(),
|
|
||||||
date: subMonths(getToday(), 1),
|
|
||||||
marketPrice: fgi.oneMonthAgo.value
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
await this.prismaService.marketData.create({
|
|
||||||
data: {
|
|
||||||
symbol,
|
|
||||||
dataSource: this.getName(),
|
|
||||||
date: subYears(getToday(), 1),
|
|
||||||
marketPrice: fgi.oneYearAgo.value
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
|
||||||
} catch {}
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
[ghostfolioFearAndGreedIndexSymbol]: {
|
[ghostfolioFearAndGreedIndexSymbol]: {
|
||||||
[format(getYesterday(), DATE_FORMAT)]: {
|
[format(getYesterday(), DATE_FORMAT)]: {
|
||||||
|
@ -27,7 +27,7 @@ export class HomeMarketComponent implements OnDestroy, OnInit {
|
|||||||
public historicalDataItems: HistoricalDataItem[];
|
public historicalDataItems: HistoricalDataItem[];
|
||||||
public info: InfoItem;
|
public info: InfoItem;
|
||||||
public isLoading = true;
|
public isLoading = true;
|
||||||
public readonly numberOfDays = 180;
|
public readonly numberOfDays = 365;
|
||||||
public user: User;
|
public user: User;
|
||||||
|
|
||||||
private unsubscribeSubject = new Subject<void>();
|
private unsubscribeSubject = new Subject<void>();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user