コード例 #1
0
        public void init(XTAPI.TTInstrNotifyClass TTInstrNotify)
        {
            if (TTOrderSet != null && TTInstrObj != null && TTInstrNotify != null)
            {
                TTInstrNotify.DetachInstrument(TTInstrObj);
            }

            TTOrderSet = new XTAPI.TTOrderSetClass();

            TTOrderSet.Alias             = instrument.Product;
            TTOrderSet.EnableFillCaching = 1;
            TTOrderSet.EnableOrderSend   = 1;
            TTOrderSet.Set("NetLimits", false);
            TTOrderSet.EnableOrderSetUpdates = 1;
            TTOrderSet.EnableOrderFillData   = 1;
            TTOrderSet.EnableOrderAutoDelete = 1;
            TTOrderSet.ClearQuotePosition(0, 0, 0);

            TTInstrObj          = new XTAPI.TTInstrObjClass();
            TTInstrObj.Exchange = instrument.Exchange;
            TTInstrObj.Product  = instrument.Product;
            TTInstrObj.Contract = instrument.Contract;
            TTInstrObj.ProdType = instrument.ProductType;
            TTInstrObj.Alias    = instrument.Product;


            TTInstrNotify.AttachInstrument(TTInstrObj);


            XTAPI.TTOrderSelector orderSelector = TTInstrObj.CreateOrderSelector;


            //match orders per account
            XTAPI.TTOrderSelector acctSelector = new XTAPI.TTOrderSelectorClass();
            acctSelector.AddTest("Acct", instrument.Account);
            acctSelector.AllMatchesRequired = 1;

            orderSelector.AddSelector(acctSelector);
            orderSelector.AllMatchesRequired = 1;


            TTOrderSet.OrderSelector = orderSelector;

            TTOrderSet.Open(true);

            TTInstrObj.OrderSet = TTOrderSet;
            TTInstrObj.Open(1);



            if (log.IsInfoEnabled)
            {
                System.Text.StringBuilder msg = new System.Text.StringBuilder("trading started for ")
                                                .AppendFormat("{0} {1} {2} {3}"
                                                              , instrument.Account, instrument.Contract, instrument.Product, instrument.Exchange);
                log.Info(msg);
            }
        }
コード例 #2
0
        /// <summary>
        /// Upon the application form loading, the TTDropHandler and TTInstrNotify 
        /// objects are initialized, and the required events are subscribed.
        /// </summary>
        public frmOrderSelector()
        {
            // Required for Windows Form Designer support
            InitializeComponent();

            // Instantiate the drag and drop handler class.
            m_TTDropHandler = new XTAPI.TTDropHandlerClass();
            // Register the active form for drag and drop.
            m_TTDropHandler.RegisterDropWindow((int) this.Handle);
            // Associate the drop and drag callback event.
            m_TTDropHandler.OnNotifyDrop += new XTAPI._ITTDropHandlerEvents_OnNotifyDropEventHandler(this.m_TTDropHandler_OnNotifyDrop);

            // Instantiate the instrument notification class.
            m_TTInstrNotify = new XTAPI.TTInstrNotifyClass();
            // Subscribe to the TTInstrNotify events.
            m_TTInstrNotify.OnNotifyFound += new XTAPI._ITTInstrNotifyEvents_OnNotifyFoundEventHandler(this.m_TTInstrNotify_OnNotifyFound);

            // Instantiate a TTOrderSet object for submitting orders.
            m_TTOrderSetSendOrder = new XTAPI.TTOrderSetClass();
            m_TTOrderSetSendOrder.Set("NetLimits",false);
            m_TTOrderSetSendOrder.Open(1);

            // Instantiate the the TTOrderSelector object.
            m_TTOrderSelector = new XTAPI.TTOrderSelectorClass();

            // Instantiate a TTOrderSet object for receiving orders.
            m_TTOrderSetReceiveOrder = new XTAPI.TTOrderSetClass();
            m_TTOrderSetReceiveOrder.OnOrderSetUpdate += new XTAPI._ITTOrderSetEvents_OnOrderSetUpdateEventHandler(m_TTOrderSet_OnOrderSetUpdate);

            // Enable the TTOrderTracker and order updates.
            m_TTOrderSetReceiveOrder.EnableOrderUpdateData = 1;
            m_TTOrderSetReceiveOrder.EnableOrderSetUpdates = 1;
        }