image thumbnail
from Order book simulation by Dimitri Shvorob
(a naive artificial stock market)

OrderWrapper
classdef OrderWrapper < handle
    
    properties
        Order
        SizeLeft
    end    
    
    methods        
              
        function[obj] = OrderWrapper(order)                               
            obj.Order    = order;
            obj.SizeLeft = order.Size;
        end
        
        function update(obj,trade)
            obj.SizeLeft = obj.SizeLeft - trade.Size;
        end
        
        function disp(obj)
            disp(class(obj))
            disp(obj.Order)
            disp(struct('SizeLeft',obj.SizeLeft))
        end
        
              
        function shortdisp(obj)
            o = obj.Order;
            if strcmp(o.Type,'LIM')
               p = sprintf('%6.2f or better',o.Price);
            else
               p = 'MKT';
            end
            fprintf('%s %d at %s\n',o.Side,obj.SizeLeft,p)            
        end
        
    end
  
end

Contact us at files@mathworks.com