1. A method comprising: (a) receiving electronic data describing a trading order; (b) receiving data describing a selection of one or more first trading algorithms from a plurality of available stored algorithms for execution of said trading order; (c) commencing with a processor unit execution of said trading order via said one or more first trading algorithms; (d) evaluating with said processor unit quality of execution, during said execution, of said trading order via said one or more first trading algorithms; (e) comparing with said processor unit said evaluated quality of execution to a prediction of future performance of execution of said trading order by said one or more first trading algorithms; and (f) if said evaluated quality of execution compares unfavorably to said prediction of future performance, switching with said processor unit said execution of said trading order to one or more second trading algorithms, wherein said processor unit comprises one or more processors.