Ejemplo n.º 1
0
 public ExecutionReport(
     QuickFix.OrderID aOrderID,
     QuickFix.ExecID aExecID,
     QuickFix.ExecTransType aExecTransType,
     QuickFix.ExecType aExecType,
     QuickFix.OrdStatus aOrdStatus,
     QuickFix.Symbol aSymbol,
     QuickFix.Side aSide,
     QuickFix.OrderQty aOrderQty,
     QuickFix.LastShares aLastShares,
     QuickFix.LastPx aLastPx,
     QuickFix.LeavesQty aLeavesQty,
     QuickFix.CumQty aCumQty,
     QuickFix.AvgPx aAvgPx)
     : base(MsgType())
 {
     set(aOrderID);
     set(aExecID);
     set(aExecTransType);
     set(aExecType);
     set(aOrdStatus);
     set(aSymbol);
     set(aSide);
     set(aOrderQty);
     set(aLastShares);
     set(aLastPx);
     set(aLeavesQty);
     set(aCumQty);
     set(aAvgPx);
 }
Ejemplo n.º 2
0
 public Allocation(
     QuickFix.AllocID aAllocID,
     QuickFix.AllocTransType aAllocTransType,
     QuickFix.Side aSide,
     QuickFix.Symbol aSymbol,
     QuickFix.Shares aShares,
     QuickFix.AvgPx aAvgPx,
     QuickFix.TradeDate aTradeDate)
     : base(MsgType())
 {
     set(aAllocID);
     set(aAllocTransType);
     set(aSide);
     set(aSymbol);
     set(aShares);
     set(aAvgPx);
     set(aTradeDate);
 }
Ejemplo n.º 3
0
 public QuickFix.AvgPx getAvgPx()
 { QuickFix.AvgPx value = new QuickFix.AvgPx();
   getField(value); return value; }
Ejemplo n.º 4
0
 public bool isSet(QuickFix.AvgPx field)
 {
     return(isSetField(field));
 }
Ejemplo n.º 5
0
 public QuickFix.AvgPx getAvgPx()
 {
     QuickFix.AvgPx value = new QuickFix.AvgPx();
     getField(value); return(value);
 }
Ejemplo n.º 6
0
 public QuickFix.AvgPx get(QuickFix.AvgPx value)
 {
     getField(value); return(value);
 }
Ejemplo n.º 7
0
 public void set(QuickFix.AvgPx value)
 {
     setField(value);
 }
Ejemplo n.º 8
0
        /// <summary>
        /// Process partial or fully filled
        /// </summary>
        /// <param name="myOrder"></param>
        /// <param name="myExec"></param>
        private void processFill(ref KaiTrade.Interfaces.Order myOrder, QuickFix.Message myExec)
        {
            K2ServiceInterface.ITransaction myTrn = null;
            try
            {
                // if the object supports transactions do the update as a trn
                myTrn = myOrder as K2ServiceInterface.ITransaction;
                if (myTrn != null)
                {
                    myTrn.StartUpdate();
                }
                // Get the currently executed quantity for chain of orders.
                QuickFix.CumQty myCumQty = new QuickFix.CumQty();
                myExec.getField(myCumQty);
                myOrder.CumQty = myCumQty;

                // Get quantity open for further execution (order qty - cum qty)
                QuickFix.LeavesQty myLeavesQty = new QuickFix.LeavesQty();
                myExec.getField(myLeavesQty);
                myOrder.LeavesQty = myLeavesQty;

                QuickFix.LastPx myLastPx = new QuickFix.LastPx();
                if (myExec.isSetField(myLastPx))
                {
                    myExec.getField(myLastPx);
                    myOrder.LastPx = myLastPx;
                }

                QuickFix.AvgPx myAvgPx = new QuickFix.AvgPx();
                if (myExec.isSetField(myAvgPx))
                {
                    myExec.getField(myAvgPx);
                    myOrder.AvgPx = myAvgPx;
                }

                QuickFix.LastQty myLastQty = new QuickFix.LastQty();
                if (myExec.isSetField(myLastQty))
                {
                    myExec.getField(myLastQty);
                    myOrder.LastQty = myLastQty;
                }

                QuickFix.OrdStatus myOrdStatus = new QuickFix.OrdStatus();
                myExec.getField(myOrdStatus);
                myOrder.OrdStatus = myOrdStatus;
                // always signal the end of the update
                if (myTrn != null)
                {
                    myTrn.EndUpdate();
                }
            }
            catch (Exception myE)
            {
                m_Log.Error("processFill", myE);
                // always signal the end of the update
                if (myTrn != null)
                {
                    myTrn.EndUpdate();
                }
            }
        }