This commit is contained in:
2024-08-07 18:55:22 -04:00
parent 7a06daccb8
commit b7d7cb8560

View File

@@ -417,8 +417,8 @@ impl Market {
self.traders[bids1.peek().owner].add_balance(asset_type0,asset0_paying); self.traders[bids1.peek().owner].add_balance(asset_type0,asset0_paying);
log.push(format!(" {} got {} {}, {} got {} {}",self.traders[bids0.peek().owner].name,asset1_paying,asset1.name, log.push(format!(" {} got {} {}, {} got {} {}",self.traders[bids0.peek().owner].name,asset1_paying,asset1.name,
self.traders[bids1.peek().owner].name,asset0_paying,asset0.name)); self.traders[bids1.peek().owner].name,asset0_paying,asset0.name));
if bids0.peek().sell_remain==FiNum::zero() { bids0.pop(); } if bids0.peek().sell_remain==FiNum::zero() { println!("Nope0!!!"); bids0.pop(); } // Stopped work here. Must fixup all the data structures for these pops.
if bids1.peek().sell_remain==FiNum::zero() { bids1.pop(); } if bids1.peek().sell_remain==FiNum::zero() { println!("Nope1!!!"); bids1.pop(); }
} }
Result::ExecutedBatch(log) Result::ExecutedBatch(log)
} }
@@ -970,6 +970,7 @@ fn interactive(m: &mut Market, mut out: Option<File>) {
println!("Showing all orders for {}",m.traders[trader].name); println!("Showing all orders for {}",m.traders[trader].name);
for (key0,value0) in &m.traders[trader].order_finder { for (key0,value0) in &m.traders[trader].order_finder {
let oq=m.orders.get(value0).unwrap(); // OrderQueue let oq=m.orders.get(value0).unwrap(); // OrderQueue
println!("About to find key {}",key0);
let oqi=*oq.order_finder.get(key0).unwrap(); let oqi=*oq.order_finder.get(key0).unwrap();
let ord=oq.v[oqi].clone(); // Order let ord=oq.v[oqi].clone(); // Order
println!(" OrderID {} is selling {} {} to buy {} {}",key0,ord.sell_remain,m.number_to_asset(value0.0).name,ord.buy_qty*ord.sell_remain/ord.sell_qty,m.number_to_asset(value0.1).name); println!(" OrderID {} is selling {} {} to buy {} {}",key0,ord.sell_remain,m.number_to_asset(value0.0).name,ord.buy_qty*ord.sell_remain/ord.sell_qty,m.number_to_asset(value0.1).name);