private static ITransactionPerformance GetDividendPerformance(ITransactionBook book, Guid stockId, Guid sellTransId) { var entries = book.GetLastCommittedChanges(stockId).ToList(); var dividend = entries.FirstOrDefault(e => e.TransactionId == sellTransId) as IDividendTransactionBookEntry; var other = entries.Where(e => e.TransactionId != sellTransId).Cast <IBuyingTransactionBookEntry>(); return(new TransactionPerformanceService().GetPerformance(dividend, other)); }
private static ITransactionPerformance GetPerformance(ITransactionBook book, Guid stockId, Guid sellTransId, decimal?mfe, decimal?mae) { var entries = book.GetLastCommittedChanges(stockId).ToList(); var sell = entries.FirstOrDefault(e => e.TransactionId == sellTransId) as ISellingTransactionBookEntry; var other = entries.Where(e => e.TransactionId != sellTransId).Cast <IBuyingTransactionBookEntry>(); return(new TransactionPerformanceService().GetPerformance(sell, other, mfe, mae)); }
/// <summary> /// Initializes this object /// </summary> /// <param name="modelRepository">The repository for reading and writing</param> /// <param name="stockRepository">The repository for reading stocks</param> /// <param name="transactionBook">The transaction book</param> public TransactionDividendOrderAddedEventHandler( IModelRepository <ITransaction> modelRepository, IModelReaderRepository <IStock> stockRepository, ITransactionBook transactionBook) { _writerRepository = modelRepository; _stockRepository = stockRepository; _transactionBook = transactionBook; }
/// <summary> /// Initializes a new instance of the <see cref="TransactionProcessManager"/> class. /// </summary> /// <param name="transactionPerformanceService">The transaction performance service</param> /// <param name="transactionBook">The transaction book.</param> /// <param name="eventBus"></param> public TransactionProcessManager( ITransactionPerformanceService transactionPerformanceService, ITransactionBook transactionBook, IEventBus eventBus) { _transactionPerformanceService = transactionPerformanceService; _transactionBook = transactionBook; _eventBus = eventBus; }
/// <summary> /// Initializes a new instance of the <see cref="ChartController" /> class. /// </summary> /// <param name="queryDispatcher">The query dispatcher.</param> /// <param name="dateCalculationService">The date calculation service.</param> /// <param name="transactionBook">The transaction book which contains all open positions.</param> public ChartController( IQueryDispatcher queryDispatcher, IDateCalculationService dateCalculationService, ITransactionBook transactionBook) { _queryDispatcher = queryDispatcher; _dateCalculationService = dateCalculationService; _transactionBook = transactionBook; }
/// <summary> /// Initializes this object /// </summary> /// <param name="modelRepository">The repository for reading and writing</param> /// <param name="stockRepository">The repository for reading stocks</param> /// <param name="feedbackRepository">The repository for reading feedbacks</param> /// <param name="transactionBook">The transaction book</param> /// <param name="feedbackProportionRepository">The repository for reading the feedback proportions</param> public TransactionSellingOrderAddedEventHandler( IModelRepository <ITransaction> modelRepository, IModelReaderRepository <IStock> stockRepository, IModelReaderRepository <IFeedback> feedbackRepository, ITransactionBook transactionBook, IModelReaderRepository <IFeedbackProportion> feedbackProportionRepository) { _writerRepository = modelRepository; _stockRepository = stockRepository; _feedbackRepository = feedbackRepository; _transactionBook = transactionBook; _feedbackProportionRepository = feedbackProportionRepository; }
/// <summary> /// Initializes this object /// </summary> /// <param name="transactionBook">The transaction book</param> public OpenPositionsAllQueryHandler(ITransactionBook transactionBook) { _transactionBook = transactionBook; }
/// <summary> /// Initializes this object /// </summary> /// <param name="repository">The repository for the aggregate</param> /// <param name="book">The transation book</param> public TransactionDividendCommandHandler(IAggregateRepository <TransactionAggregate> repository, ITransactionBook book) { _repository = repository; _book = book; }