Trading System

The IEM uses the WebExchange Trading System for operation of the market. For details about use of the WebExchange system, see
https://iemweb.biz.uiowa.edu/webexmanual

 

To gain access to the IEM market, point your web browser to the URL
https://iemweb.biz.uiowa.edu/trader-login.html


MARKET ACTIONS

Once you log into the market, you can undertake the following market actions: place a bid (an order to buy), place an ask (an order to sell), withdraw an outstanding bid or ask, make a purchase at the current market price, and execute a sale at the market price.

 

Limit Orders

Placing a Bid

A bid is an order to buy in the form: "I bid $.536 per contract for 4 contracts in IBMm, and this bid is good until March 3, 1999, at noon." In the IEM, the bid price corresponds to a particular value of the underlying "fundamental" which determines the liquidation value of the contract. So, in this example, a bid price of $.536 on IBMm is equivalent to a probability of 0.536 that IBM will have the highest return among Apple, IBM, Microsoft and the S&P500 in month "m".

Thus, a bid specifies a contract name, a price or fundamental value, a number of contracts, and an expiration date. Bid prices must fall in the range from $0.000 to $1.000 in increments of $0.001, and expiration times must be after the time of your bid. There is no restriction on the number of contracts in a bid, except that it must be positive.

Note that bids should be thought of as "limit orders". They will only result in immediate trades if some other trader has previously submitted an order to sell the same contract at the same or a lower price. Otherwise, the bid is placed in a queue to await acceptance by another trader.

Placing an "Ask"

An ask is an order to sell; a typical example is "I offer to sell 4 contracts in IBMm for $.540 per contract and this order is good until June 5, 1999, at 3pm." In the IEM, the asking price corresponds to a particular value of the underlying "fundamental" which determines the liquidation value of the contract. So, in this example, a bid price of $.540 on IBMm is equivalent to a probability of 0.540 that IBM will have the highest return among Apple, IBM, Microsoft and the S&P500 in month "m".

As with bids, an ask specifies a contract name, a price or fundamental value, a number of contracts, and an expiration date. Ask prices must lie in the range $0.000 to $1.000 in increments of $0.001 and expiration dates must be later than the time at which the ask is entered. The number of contracts in an ask must be positive.

Asks should be thought of as "limit" orders. They will only result in immediate trades if some other trader has previously submitted an order to buy the same contract at the same or a higher price. Otherwise, the ask is placed in a queue to await acceptance by another trader.

Withdraw a bid or an ask (Withdraw an outstanding order)

At any time a trader may view a list of his or her own outstanding bids and asks. Any of these orders may be withdrawn. Note that outstanding orders cannot be revised by the trader, but those orders can be withdrawn and new orders submitted. Orders cannot be withdrawn after they have been accepted by another trader; any failure of an attempt to withdraw an order is likely due to acceptance of it by another trader before the order to withdraw reached the system.

Market Orders

Purchase at market price

A purchase order is an order to buy one or more contracts; an example is "I will buy 4 contracts in IBMm at the current market price." Provided your cash account balance is large enough to cover the transaction, a purchase order will result in the immediate acquisition of one or more contracts. The price you pay is determined by the lowest price of any asks previously submitted by other traders. The number of contracts bought is constrained by the number in your order, the number of contracts available from other traders at the current low ask price, and, of course, by the balance in your cash account. This means of acquiring contracts is somewhat quicker, but less flexible and more transitory than the submission of a bid. You need not specify either a price or a time limit with a purchase order. But if the number of contracts you order to buy exceeds the number available at the current low ask price, the residual purchase order is simply canceled; it does not remain in a queue for later acceptance by another trader.

Sell at market price

A sell order is an order to sell one or more contracts; an example is "I will sell 4 contracts in IBMm at the current market price." Provided your portfolio includes the contracts you order to sell, a sell order will result in the immediate sale of one or more contracts. The price you receive is determined by the highest price of any bids previously submitted by other traders. The number of contracts you sell is constrained by the number in your order, the number of contracts requested by other traders at the current high bid price, and, of course, by the number of contracts in your portfolio. This means of selling contracts is somewhat quicker, but less flexible and more transitory than the submission of an ask. You need not specify either a price or a time limit with a sell order. But if the number of contracts you order to sell exceeds the number other traders are willing to buy at the current high bid price, the residual sell order is simply canceled; it does not remain in a queue for later acceptance by another trader.

Because purchases and sales of individual contracts or of bundles occur immediately at current market prices, they are referred to as "Market Orders".


BID AND ASK QUEUES

When bids and asks are submitted by traders they are placed by the system in "Bid Queues" and "Ask Queues," respectively. Each queue is ordered according to price and time of issuance; if two or more orders at the same price appear in a queue they are entered by time with older orders appearing ahead of newer orders. The prices displayed to traders when they log into the market are the highest bid price in the Bid Queue and the lowest ask price in the Ask Queue. If no price is displayed it is because the corresponding queue is empty. Orders remain in the queues until they are withdrawn by the trader who issued them, they expire, they are accepted by another trader and result in a trade, or they are removed by the system due to infeasibility.


EXECUTION OF TRADES

Trades are executed whenever a purchase or sales order is submitted, the bid price of a new order to buy meets or exceeds the lowest ask price in the Ask Queue, or the ask price of a new order to sell is less than or equal to the highest bid price in the Bid Queue.

Whenever a new limit order, either a bid or ask, moves to the front of a queue and passes the feasibility check, the system immediately checks for a possible trade. If the highest bid price on a contract equals or exceeds the lowest ask price, then the system executes a trade between the bidder and asker. If the bid price and asking price are not identical, then the price used is the one from the older of the two orders. If the number of contracts specified in the bid and ask are not the same, then the number of contracts traded is the smaller of the two. WebExchange handles all bookkeeping for such a trade -- the cash account of the bidder is reduced by the value of the trade (price times number of contracts), the cash account of the seller is increased by the value of the trade, and the contracts are moved from the portfolio of the seller to the portfolio of the buyer. Finally, the orders are checked for removal from the queues. If the number of contracts traded exhausts the number specified in either the bid or the ask, that order is removed from its queue. Otherwise, the order is reduced by the number of contracts traded, and the modified order remains in the front of its queue.

The process resulting from the arrival of a market order, either a purchase or sell order, is similar except in the determination of the transaction price and in the fate of an unfilled order. When a purchase order is executed, the price used is the price of the lowest ask in the Ask Queue, and when a sell order is executed, the price used is the price of the highest bid in the Bid Queue. In both cases, if the order exceeds the number of contracts available at that price, the remainder of the order is canceled without being placed in the respective queue.

You cannot trade with yourself. When the current high bid price meets or exceeds the current low ask, the system checks to see if the same trader submitted both orders. If so, the older of the two orders is canceled, the newer order is entered into the relevant queue, and the check for possible order execution continues.

It will sometimes appear that a trade that "should have" occurred did not. For example, you observe on the screen that IBMm currently has an ask price of $0.530. You submit a purchase order indicating that you will buy 3 contracts in IBMm at $0.550. The system then informs you that your bid has been entered onto the market but does not tell you that a trade occurred. This can happen for any of three reasons. The first is that your order was infeasible and was thus canceled. The second is that someone beat you to it. Prices are updated at four second intervals, though transmission delays or program activity may lengthen that time. With several participants trading in the market at the same time and allocation on a first-come, first-served basis, that may not be fast enough to keep up with the market. The third reason is that both the bid and ask were submitted by you and the orders were canceled or modified because of the prohibition against self trades.


CONSTRAINTS ON TRADE

You cannot sell short, nor can you buy on margin, in the IEM. This means you cannot sell more contracts than you have and you cannot spend more money than you have. To attempt to do so results in an infeasible order.

Infeasible orders (bids, asks, purchase orders and sell orders) may be submitted but can never result in trades. Each order is checked for feasibility when, and only when, it reaches the front of a queue, and no order can result in a trade before it reaches the front of its respective queue.

A feasibility check for a bid or purchase order determines whether or not the prospective buyer has enough money to pay for at least one contract. If buying even one contract would result in a negative balance, the bid will be stricken from the queue. A feasibility check for an ask or sell order determines whether the prospective seller owns enough contracts to cover the trade. If the trader owns none of the contracts so that selling even one contract would result in negative contract holdings, the order will be stricken from the queue. While a trade is being executed, feasibility checks are applied one contract at a time rather than to the full order. When an order fails the feasibility check and is stricken from its queue, an entry noting that action is placed in the trader's history file for later reference.

Example:

The current high bid for IBMm contracts is $0.535, the low ask is $0.550, and trader Sam Jones has $10.80 in his cash account. Jones submits a bid to buy 30 contracts in IBMm at $0.540. Since this bid exceeds the previous high bid and Jones has sufficient cash to buy at least one contract, his bid passes the feasibility test and becomes the market high bid. Later that day, trader Jane Smith submits an ask, offering to sell 40 contracts of IBMm at $0.538. The system recognizes that this new ask is lower than the market high bid of $0.540 and thus executes a trade of twenty contracts between Smith and Jones. But after those 20 contracts have traded, Jones' cash account falls to $0.00 so the feasibility test on his remaining bid fails. Jones is allowed to buy the twenty contracts, but his remaining bid for ten more contracts is stricken from the queue and a note to that effect is placed in his trading history file. Smith's ask becomes the market low ask at $0.538 and the next highest bid of $0.535 is moved to the front of the Bid Queue.

Feasibility checks are performed when an order reaches the front of a queue to insure that at least one contract can be traded at that price. They are not performed prior to this because portfolios (cash account balances and contract holdings) may change over time, and such changes may alter the outcome of the feasibility check on any one order -- an order that is feasible when issued may become infeasible while it sits in its queue because of other changes in the trader's portfolio, and an order which is infeasible upon issue may become feasible before it reaches the front of its queue. Note that the orders in the front of each queue are rechecked for feasibility after each transaction to insure that the portfolio changes resulting from the transaction did not alter the feasibility of the front orders in other queues.