| 
						
						
						
					 | 
				
				 | 
				
					@ -1,7 +1,4 @@ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  CurrentRateService, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  GetValueObject | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} from '@ghostfolio/api/app/core/current-rate.service'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { CurrentRateService } from '@ghostfolio/api/app/core/current-rate.service'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { OrderType } from '@ghostfolio/api/models/order-type'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { DATE_FORMAT, parseDate, resetHours } from '@ghostfolio/common/helper'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { TimelinePosition } from '@ghostfolio/common/interfaces'; | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -20,6 +17,15 @@ import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  subDays | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} from 'date-fns'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { flatten } from 'lodash'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { PortfolioOrder } from '@ghostfolio/api/app/core/portfolio-order'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { TimelinePeriod } from '@ghostfolio/api/app/core/timeline-period'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  Accuracy, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  TimelineSpecification | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} from '@ghostfolio/api/app/core/timeline-specification'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { TransactionPointSymbol } from '@ghostfolio/api/app/core/transaction-point-symbol'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { TransactionPoint } from '@ghostfolio/api/app/core/transaction-point'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					import { GetValueObject } from '@ghostfolio/api/app/core/get-value.object'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export class PortfolioCalculator { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  private transactionPoints: TransactionPoint[]; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -483,42 +489,3 @@ export class PortfolioCalculator { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export interface TransactionPoint { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  date: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  items: TransactionPointSymbol[]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					interface TransactionPointSymbol { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  currency: Currency; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  firstBuyDate: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  investment: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  name: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  quantity: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  symbol: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  transactionCount: number; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					type Accuracy = 'year' | 'month' | 'day'; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export interface TimelineSpecification { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  start: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  accuracy: Accuracy; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export interface TimelinePeriod { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  date: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  grossPerformance: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  investment: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  value: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export interface PortfolioOrder { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  currency: Currency; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  date: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  name: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  quantity: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  symbol: string; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  type: OrderType; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  unitPrice: Big; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |