예제 #1
0
func handleSharedOrder(order datatypes.ExternalOrder, received_order bool, shareCostChan chan datatypes.CostInfo, receivedCostChan chan datatypes.CostInfo, shareOrderChan chan datatypes.ExternalOrder) {
	order.Timestamp = time.Now().Unix()
	if !(received_order) {
		shareOrderChan <- order
	}
	updateSharedOrders(order)

	if !(order.Executed_order) {
		cost := calculateCost(order)
		shareCostChan <- cost
		add_order := orderOnAuction(cost, receivedCostChan)
		if add_order {
			updatePrivateOrders(order)
			findNextFloorToGoTo()
		}
	}
}