From 5e9dc0feacfd26fef6794fc88dfa98beec7b7a8c Mon Sep 17 00:00:00 2001 From: Lev Date: Fri, 11 Jun 2021 18:58:19 -0500 Subject: [PATCH] Update implemented matchAsksToBids --- .../Topic 4/4.5.4/OrderBook.cpp | 45 ++++++++++++++++++ .../Topic 4/4.5.4/a.exe | Bin 293765 -> 296070 bytes 2 files changed, 45 insertions(+) diff --git a/CM2005 Object Oriented Programming/Topic 4/4.5.4/OrderBook.cpp b/CM2005 Object Oriented Programming/Topic 4/4.5.4/OrderBook.cpp index da8a2af..7d167d3 100644 --- a/CM2005 Object Oriented Programming/Topic 4/4.5.4/OrderBook.cpp +++ b/CM2005 Object Oriented Programming/Topic 4/4.5.4/OrderBook.cpp @@ -95,4 +95,49 @@ void OrderBook::insertOrder(OrderBookEntry& order) { orders.push_back(order); std::sort(orders.begin(), orders.end(), OrderBookEntry::compareByTimestamp); +} + +std::vector OrderBook::matchAsksToBids(std::string product, std::string timestamp) +{ + std::vector asks = getOrders(OrderBookType::ask, product, timestamp); + std::vector bids = getOrders(OrderBookType::bid, product, timestamp); + + std::vector sales; + + std::sort(asks.begin(), asks.end(), OrderBookEntry::compareByPriceAsc); + std::sort(bids.begin(), bids.end(), OrderBookEntry::compareByPriceDesc); + + for(OrderBookEntry& thisAsk : asks) + { + for(OrderBookEntry& thisBid : bids) + { + if(thisBid.price >= thisAsk.price) + { + OrderBookEntry sale{thisAsk.price, 0, timestamp, product, OrderBookType::sale}; + if(thisBid.amount == thisAsk.amount) + { + sale.amount = thisAsk.amount; + sales.push_back(sale); + thisBid.amount = 0; + break; + } + else if(thisBid.amount > thisAsk.amount) + { + sale.amount = thisAsk.amount; + sales.push_back(sale); + thisBid.amount = thisBid.amount - thisAsk.amount; + break; + } + else if(thisBid.amount < thisAsk.amount) + { + sale.amount = thisBid.amount; + sales.push_back(sale); + thisAsk.amount = thisAsk.amount - thisBid.amount; + thisBid.amount = 0; + continue; + } + } + } + } + return sales; } \ No newline at end of file diff --git a/CM2005 Object Oriented Programming/Topic 4/4.5.4/a.exe b/CM2005 Object Oriented Programming/Topic 4/4.5.4/a.exe index 7eb3f3bd90c32f16c02b98fef1181bc56581cb3c..84b15a48dfe54fc2efa53de8d1d4218cb37807c4 100644 GIT binary patch delta 42210 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 k#;1oy`)zq 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 OBhL>+msNiv!n=3-woR4*