Beispiel #1
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            try
            {
                // Making GetFields request using keyword and marketSector
                GetFieldsRequest    gtFldReq = new GetFieldsRequest();
                FieldSearchCriteria criteria = new FieldSearchCriteria();
                criteria.keyword       = "Price";
                criteria.marketsectors = new MarketSector[] { MarketSector.Equity };
                gtFldReq.criteria      = criteria;

                getFieldsRequest1  gtReq1  = new getFieldsRequest1(gtFldReq);
                getFieldsResponse1 gtResp1 = new getFieldsResponse1();
                gtResp1 = ps.getFields(gtReq1);

                // Parsing the response
                FieldInfo[] fields = gtResp1.getFieldsResponse.fields;
                for (int i = 0; i < fields.Length; i++)
                {
                    Console.WriteLine("******************");
                    Console.WriteLine("Mnemonic: " + fields[i].mnemonic
                                      + "\nid: " + fields[i].id
                                      + "\ndefinition: " + fields[i].definition
                                      + "\ndescription:" + fields[i].description
                                      );
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception: " + ex.Message);
            }
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            try
            {

                PerSecurity_Dotnet.PerSecurityWSDL.PerSecurityWS ps = new PerSecurityWSDL.PerSecurityWS();

                /*Required for the VS2003 or older versions
                 X509Certificate clientCert = X509Certificate.CreateFromCertFile("C:\\DLCert.cer");*/

                X509Certificate2 clientCert = new X509Certificate2("C:\\DLWSCert.p12", "PASSWORD");
                ps.ClientCertificates.Add(clientCert);
                Boolean flag = true;
                do
                {
                    Console.WriteLine("Please enter the number to choose the request Type: ");
                    Console.WriteLine("1)Get Data Request\n2)Get Data Request with Pricing Source Header" +
                        "\n3)Schedule Request   \n4)Bulk Request \n5)Get Data Macro Request \n6)History Request"
                        + "\n7)History Macro Request   \n8)History request with Pricing source header  \n9)Fundamentals Request" +
                        "\n10)Get Company Request \n11)Get Quotes Request \n12)Get Actions Request" + 
                        "\n13)Cancel Request \n14)PortFolio Validation Request \n15)Get Data Request with Fieldset" + 
                        "\n16)Get All Quotes Request \n17)GetCompany Request with Fieldset"
                        +"\n18)Exit");

                    String read = Console.ReadLine();
               
                    int reqType = int.Parse(read);
                    switch (reqType)
                    {
                                            
                        case 1:
                            // Making request for non-bulk fields
                            Console.WriteLine("\n**********Sending simple request");
                            SimpleGetDataRequest smpReq = new SimpleGetDataRequest();
                            smpReq.run(ps);
                            break;

                        case 2:
                            //Making GetData request with a Pricing Source in header
                            Console.WriteLine("\n**********\nSending getdata request with Pricing source header");
                            PricingSourceHeaderRequest getDataPricingSrcHdrReq = new PricingSourceHeaderRequest();
                            getDataPricingSrcHdrReq.run(ps);
                            break;

                        case 3:
                            // Making scheduled request
                            Console.WriteLine("\n**********\nSending Scheduled request");
                            ScheduledRequest schReq = new ScheduledRequest();
                            schReq.run(ps);
                            break;

                        case 4:
                            // Making request for bulk fields
                            Console.WriteLine("\n**********\nSending Bulk request");
                            BulkRequest blkReq = new BulkRequest();
                            blkReq.run(ps);
                            break;

                        case 5:
                            // Making request for Macro requests
                            Console.WriteLine("\n**********\nSending getdata macro request");
                            GetDataMacroRequest mcroReq = new GetDataMacroRequest();
                            mcroReq.run(ps);
                            break;

                        case 6:
                            // Making History request
                            Console.WriteLine("\n**********\nSending History request");
                            HistoryRequest histReq = new HistoryRequest();
                            histReq.run(ps);
                            break;

                        case 7:
                            // Making History request with a macro
                            Console.WriteLine("\n**********\nSending History Macro request");
                            HistoryMacroRequest histMacrReq = new HistoryMacroRequest();
                            histMacrReq.run(ps);
                            break;

                        case 8:
                            //Making History request with a Pricing Source in header
                            Console.WriteLine("\n**********\nSending History request with Pricing source header");
                            GetHistPricingSourceHeaderRequest pricingSrcHdrReq = new GetHistPricingSourceHeaderRequest();
                            pricingSrcHdrReq.run(ps);
                            break;

                        case 9:
                            // Making Fundamentals request
                            Console.WriteLine("\n**********\nSending Fundamentals request");
                            FundamentalsRequest getFundsReq = new FundamentalsRequest();
                            getFundsReq.run(ps);
                            break;

                        case 10:
                            // Making a Get Company request
                            Console.WriteLine("\n**********\nSending Get Company request");
                            GetCompany getCompReq = new GetCompany();
                            getCompReq.run(ps);
                            break;

                        case 11:
                            // Making a Get Quotes request
                            Console.WriteLine("\n**********\nSending Get Quotes request");
                            GetQuotesRequest getQuotesReq = new GetQuotesRequest();
                            getQuotesReq.run(ps);
                            break;

                        case 12:
                            // Making a Get Actions request
                            Console.WriteLine("\n**********\nSending Get Actions request");
                            GetActionsRequest getActionsReq = new GetActionsRequest();
                            getActionsReq.run(ps);
                            break;

                        case 13:
                            // Making a Cancel request
                            Console.WriteLine("\n**********\nSending Cancel request");
                            CancelAllRequest cancelReq = new CancelAllRequest();
                            cancelReq.run(ps);
                            break;

                        case 14:
                            // Making a get portfolio validation request
                            Console.WriteLine("\n**********\nSending portfolio validation request");
                            PortFolioValidation portFolioVldtn = new PortFolioValidation();
                            portFolioVldtn.run(ps);
                            break;

                        case 15:
                            // Making a getdata request with fieldset
                            Console.WriteLine("\n**********\nSending getdata request with fieldset");
                            GetDataFieldSetRequest GtDtFldStReq = new GetDataFieldSetRequest();
                            GtDtFldStReq.run(ps);
                            break;

                        case 16:
                            // Making a getallquotes request
                            Console.WriteLine("\n**********\nSending getallquotes request");
                            GetAllQuotesRequest GtAllQtsReq = new GetAllQuotesRequest();
                            GtAllQtsReq.run(ps);
                            break;

                        case 17:
                            // Making a getcompany fieldset request
                            Console.WriteLine("\n**********\nSending getcompany request with fieldset");
                            GetCompanyFieldSet getCmpnyFldSet = new GetCompanyFieldSet();
                            getCmpnyFldSet.run(ps);
                            break;
                        case 18:
                            flag = false;
                            break;
                        default:
                            break;

                        
                    }
                    Console.WriteLine("");
                } while (flag);
                
                


            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            //			

        }
Beispiel #3
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            // Setting request header information
            GetDataHeaders getDataHeaders = new GetDataHeaders();

            getDataHeaders.secmaster              = true;
            getDataHeaders.secmasterSpecified     = true;
            getDataHeaders.closingvalues          = true;
            getDataHeaders.closingvaluesSpecified = true;
            getDataHeaders.derived          = true;
            getDataHeaders.derivedSpecified = true;

            // Setting overrides
            Override[] ovride = new Override[4];
            ovride[0]       = new Override();
            ovride[0].field = "VWAP_START_DT";
            DateTime start = DateTime.Today;

            // Specifying VWAP_START_DT in yyyymmdd format
            if (start.Month < 10)
            {
                ovride[0].value = start.Year.ToString() + "0" + start.Month.ToString() + start.Day.ToString();
            }
            else
            {
                ovride[0].value = start.Year.ToString() + start.Month.ToString() + start.Day.ToString();
            }
            ovride[1]       = new Override();
            ovride[1].field = "VWAP_END_DT";
            DateTime end = DateTime.Today;

            // Specifying VWAP_END_DT in yyyymmdd format
            if (start.Month < 10)
            {
                ovride[1].value = end.Year.ToString() + "0" + end.Month.ToString() + end.Day.ToString();
            }
            else
            {
                ovride[1].value = end.Year.ToString() + end.Month.ToString() + end.Day.ToString();
            }
            ovride[2]       = new Override();
            ovride[2].field = "VWAP_START_TIME";
            ovride[2].value = "10:00";
            ovride[3]       = new Override();
            ovride[3].field = "VWAP_END_TIME";
            ovride[3].value = "11:00";

            // Setting the instruments for request
            Instrument bbUniqueId = new Instrument();

            bbUniqueId.id = "EQ0086119600001000";
            bbUniqueId.yellowkeySpecified = false;
            bbUniqueId.type          = InstrumentType.BB_UNIQUE;
            bbUniqueId.typeSpecified = true;
            bbUniqueId.overrides     = ovride;

            Instrument ticker = new Instrument();

            ticker.id = "IBM US";
            ticker.yellowkeySpecified = true;
            ticker.yellowkey          = MarketSector.Equity;
            ticker.typeSpecified      = false;
            ticker.type      = InstrumentType.TICKER;
            ticker.overrides = ovride;

            Instruments instrs = new Instruments();

            instrs.instrument = new Instrument[] { ticker, bbUniqueId };

            // Setting the getdata request parameter
            SubmitGetDataRequest sbmtGtDtReq = new SubmitGetDataRequest();

            sbmtGtDtReq.headers     = getDataHeaders;
            sbmtGtDtReq.fields      = new string[] { "EQY_WEIGHTED_AVG_PX" };
            sbmtGtDtReq.instruments = instrs;

            try
            {
                Console.WriteLine("Submit getdata Request");

                submitGetDataRequestRequest  sbmtGtDtReqReq  = new submitGetDataRequestRequest(sbmtGtDtReq);
                submitGetDataRequestResponse sbmtGtDtReqResp = ps.submitGetDataRequest(sbmtGtDtReqReq);
                SubmitGetDataResponse        sbmtGtDtResp    = sbmtGtDtReqResp.submitGetDataResponse;

                System.Console.WriteLine("status " + sbmtGtDtResp.statusCode.description);
                System.Console.WriteLine("Submit getdata request -  response ID = " + sbmtGtDtResp.responseId);

                // retrieve getdata request. The response ID sent for the request is the response ID
                // received from SubmitGetDataRequest()
                RetrieveGetDataRequest rtrvGtDrReq = new RetrieveGetDataRequest();
                rtrvGtDrReq.responseId = sbmtGtDtResp.responseId;

                retrieveGetDataResponseRequest  rtrvGtDrRespReq = new retrieveGetDataResponseRequest(rtrvGtDrReq);
                retrieveGetDataResponseResponse rtrvGtDrRespResp;

                RetrieveGetDataResponse rtrvGtDrResp;

                Console.WriteLine("Retrieve getdata request");

                // Keep polling until data becomes available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    rtrvGtDrRespResp = ps.retrieveGetDataResponse(rtrvGtDrRespReq);
                    rtrvGtDrResp     = rtrvGtDrRespResp.retrieveGetDataResponse;
                }while (rtrvGtDrResp.statusCode.code == PerSecurity.DataNotAvailable);

                if (rtrvGtDrResp.statusCode.code == PerSecurity.Success)
                {
                    // Displaying the RetrieveGetDataResponse
                    for (int i = 0; i < rtrvGtDrResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :" + rtrvGtDrResp.instrumentDatas[i].instrument.id +
                                          "  " + rtrvGtDrResp.instrumentDatas[i].instrument.yellowkey);
                        for (int j = 0; j < rtrvGtDrResp.instrumentDatas[i].data.Length; j++)
                        {
                            if (rtrvGtDrResp.instrumentDatas[i].data[j].isArray == true)
                            {
                                // In case this is a bulk field request
                                for (int k = 0; k < rtrvGtDrResp.instrumentDatas[i].data[j].bulkarray.Length; k++)
                                {
                                    Console.WriteLine("-------------------------");
                                    for (int l = 0; l < rtrvGtDrResp.instrumentDatas[i].data[j].
                                         bulkarray[k].data.Length; l++)
                                    {
                                        Console.WriteLine(rtrvGtDrResp.
                                                          instrumentDatas[i].data[j].bulkarray[k].data[l].value);
                                    }
                                }
                            }
                            else
                            {
                                Console.WriteLine("	" + rtrvGtDrResp.fields[j] + " : " + rtrvGtDrResp.
                                                  instrumentDatas[i].data[j].value);
                            }
                        }
                    }
                }
                else if (rtrvGtDrResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in the submitted request");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + "   " + e.StackTrace);
            }
        }
Beispiel #4
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            // Setting request header information
            GetDataHeaders getDataHeaders = new GetDataHeaders();

            getDataHeaders.secmaster              = true;
            getDataHeaders.secmasterSpecified     = true;
            getDataHeaders.closingvalues          = true;
            getDataHeaders.closingvaluesSpecified = true;
            getDataHeaders.derived          = true;
            getDataHeaders.derivedSpecified = true;

            // Setting Instrument information
            Instrument bbUniqueId1 = new Instrument();

            bbUniqueId1.id            = "EQ0010174300001000";
            bbUniqueId1.type          = InstrumentType.BB_UNIQUE;
            bbUniqueId1.typeSpecified = true;

            Instrument ticker = new Instrument();

            ticker.id                 = "IBM";
            ticker.yellowkey          = MarketSector.Equity;
            ticker.yellowkeySpecified = true;
            ticker.type               = InstrumentType.TICKER;
            ticker.typeSpecified      = true;

            Instrument bbUniqueId2 = new Instrument();

            bbUniqueId2.id            = "US0231351067";
            bbUniqueId2.type          = InstrumentType.ISIN;
            bbUniqueId2.typeSpecified = true;

            // group all instrument into a single instance of type Instruments.
            Instruments instrs = new Instruments();

            instrs.instrument = new Instrument[] { bbUniqueId1, ticker, bbUniqueId2 };
            System.Collections.Generic.List <Instrument> instrsList = new System.Collections.Generic.List <Instrument>();

            // Setting the getdata request parameter
            SubmitGetDataRequest sbmtGtDtReq = new SubmitGetDataRequest();

            sbmtGtDtReq.headers = getDataHeaders;
            sbmtGtDtReq.fields  = new string[] { "ID_BB_UNIQUE", "PX_LAST" };

            // sbmtGtDtReq.instruments = new Instruments();
            sbmtGtDtReq.instruments = instrs;

            try
            {
                Console.WriteLine("Submit getdata Request");

                submitGetDataRequestRequest  sbmtGtDtReqReq  = new submitGetDataRequestRequest(sbmtGtDtReq);
                submitGetDataRequestResponse sbmtGtDtReqResp = ps.submitGetDataRequest(sbmtGtDtReqReq);
                SubmitGetDataResponse        sbmtGtDtResp    = sbmtGtDtReqResp.submitGetDataResponse;

                System.Console.WriteLine("status " + sbmtGtDtResp.statusCode.description);
                System.Console.WriteLine("Submit getdata request -  response ID = " + sbmtGtDtResp.responseId);

                // retrieve getdata request. The response ID sent for the request is the response ID
                // received from SubmitGetDataRequest()
                RetrieveGetDataRequest rtrvGtDrReq = new RetrieveGetDataRequest();
                rtrvGtDrReq.responseId = sbmtGtDtResp.responseId;

                retrieveGetDataResponseRequest  rtrvGtDrRespReq = new retrieveGetDataResponseRequest(rtrvGtDrReq);
                retrieveGetDataResponseResponse rtrvGtDrRespResp;

                RetrieveGetDataResponse rtrvGtDrResp;

                Console.WriteLine("Retrieve getdata request");

                // Keep polling until data becomes available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    rtrvGtDrRespResp = ps.retrieveGetDataResponse(rtrvGtDrRespReq);
                    rtrvGtDrResp     = rtrvGtDrRespResp.retrieveGetDataResponse;
                }while (rtrvGtDrResp.statusCode.code == PerSecurity.DataNotAvailable);

                if (rtrvGtDrResp.statusCode.code == PerSecurity.Success)
                {
                    // Displaying the RetrieveGetDataResponse
                    for (int i = 0; i < rtrvGtDrResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :" + rtrvGtDrResp.instrumentDatas[i].instrument.id +
                                          "  " + rtrvGtDrResp.instrumentDatas[i].instrument.yellowkey);
                        for (int j = 0; j < rtrvGtDrResp.instrumentDatas[i].data.Length; j++)
                        {
                            if (rtrvGtDrResp.instrumentDatas[i].data[j].isArray == true)
                            {
                                // In case this is a bulk field request
                                for (int k = 0; k < rtrvGtDrResp.instrumentDatas[i].data[j].bulkarray.Length; k++)
                                {
                                    Console.WriteLine("-------------------------");
                                    for (int l = 0; l < rtrvGtDrResp.instrumentDatas[i].data[j].
                                         bulkarray[k].data.Length; l++)
                                    {
                                        Console.WriteLine(rtrvGtDrResp.
                                                          instrumentDatas[i].data[j].bulkarray[k].data[l].value);
                                    }
                                }
                            }
                            else
                            {
                                Console.WriteLine("	" + rtrvGtDrResp.fields[j] + " : " + rtrvGtDrResp.
                                                  instrumentDatas[i].data[j].value);
                            }
                        }
                    }
                }
                else if (rtrvGtDrResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in the submitted request");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + "   " + e.StackTrace);
            }
        }
Beispiel #5
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            // Setting request header information
            GetCompanyHeaders gtCompHdrs = new GetCompanyHeaders();

            gtCompHdrs.creditrisk = true;

            // Setting instruments
            Instrument ticker = new Instrument();

            ticker.id                 = "AAPL US";
            ticker.yellowkey          = MarketSector.Equity;
            ticker.yellowkeySpecified = true;

            // Setting the get Company request parameter
            SubmitGetCompanyRequest sbmtGtCompReq = new SubmitGetCompanyRequest();

            sbmtGtCompReq.headers = gtCompHdrs;
            Instruments instrs = new Instruments();

            instrs.instrument         = new Instrument[] { ticker };
            sbmtGtCompReq.instruments = instrs;

            // Setting fields for the request
            FieldSet fieldSet = new FieldSet();

            fieldSet.fieldmacro    = FieldMacro.BO_CREDIT_RISK_COMPANY;
            sbmtGtCompReq.fieldset = fieldSet;

            try
            {
                Console.WriteLine("Submit Get Company Request");

                submitGetCompanyRequestRequest  sbmtGtCompReqReq  = new submitGetCompanyRequestRequest(sbmtGtCompReq);
                submitGetCompanyRequestResponse sbmtGtCompReqResp = ps.submitGetCompanyRequest(sbmtGtCompReqReq);
                SubmitGetCompanyResponse        sbmtGtCompResp    = sbmtGtCompReqResp.submitGetCompanyResponse;

                System.Console.WriteLine("status " + sbmtGtCompResp.statusCode.description);
                System.Console.WriteLine("Submit Get Company request -  response ID = " + sbmtGtCompResp.responseId);

                // retrieve get company request. The response ID sent for the request is the response ID
                // received from SubmitGetCompanyRequest()
                Console.WriteLine("Retrieve Company request");

                RetrieveGetCompanyRequest rtvGtCompReq = new RetrieveGetCompanyRequest();
                rtvGtCompReq.responseId = sbmtGtCompResp.responseId;

                retrieveGetCompanyResponseRequest  rtvGtCompRespReq = new retrieveGetCompanyResponseRequest(rtvGtCompReq);
                retrieveGetCompanyResponseResponse rtrvGtCompRespResp;

                RetrieveGetCompanyResponse rtrvGtCompResp;

                // Keep polling until data becomes available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    rtrvGtCompRespResp = ps.retrieveGetCompanyResponse(rtvGtCompRespReq);
                    rtrvGtCompResp     = rtrvGtCompRespResp.retrieveGetCompanyResponse;
                }while (rtrvGtCompResp.statusCode.code == PerSecurity.DataNotAvailable);

                if (rtrvGtCompResp.statusCode.code == PerSecurity.Success)
                {
                    // Displaying the rtrvGtCompResp
                    for (int i = 0; i < rtrvGtCompResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :" + rtrvGtCompResp.instrumentDatas[i].instrument.id +
                                          "  " + rtrvGtCompResp.instrumentDatas[i].instrument.yellowkey);
                        for (int j = 0; j < rtrvGtCompResp.instrumentDatas[i].data.Length; j++)
                        {
                            if (rtrvGtCompResp.instrumentDatas[i].data[j].isArray == true)
                            {
                                // In case this is a bulk field request
                                for (int k = 0; k < rtrvGtCompResp.instrumentDatas[i].data[j].bulkarray.Length; k++)
                                {
                                    Console.WriteLine("-------------------------_");
                                    for (int l = 0; l < rtrvGtCompResp.instrumentDatas[i].data[j].
                                         bulkarray[k].data.Length; l++)
                                    {
                                        Console.WriteLine(rtrvGtCompResp.instrumentDatas[i].data[j].bulkarray[k].data[l].value);
                                    }
                                }
                            }
                            else
                            {
                                Console.WriteLine("	" + rtrvGtCompResp.fields[j] + " : " + rtrvGtCompResp.instrumentDatas[i].data[j].value);
                            }
                        }
                    }
                }
                else if (rtrvGtCompResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in the submitted request");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Beispiel #6
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            try
            {
                // Setting headers
                GetDataHeaders getDataHeaders = new GetDataHeaders();
                getDataHeaders.programflagSpecified = true;
                getDataHeaders.programflag          = ProgramFlag.daily;
                getDataHeaders.rundate             = DateTime.Today.ToString("yyyyMMdd");
                getDataHeaders.time                = "2200";
                getDataHeaders.specialchar         = SpecialChar.fraction;
                getDataHeaders.dateformat          = DateFormat.ddmmyyyy;
                getDataHeaders.dateformatSpecified = true;
                getDataHeaders.secmaster           = true;
                getDataHeaders.derived             = true;

                // Setting Instrument information
                Instrument bbUniqueId = new Instrument();
                bbUniqueId.id            = "EQ0086119600001000";
                bbUniqueId.type          = InstrumentType.BB_UNIQUE;
                bbUniqueId.typeSpecified = true;

                Instrument ticker = new Instrument();
                ticker.id                 = "IBM";
                ticker.yellowkey          = MarketSector.Equity;
                ticker.yellowkeySpecified = true;
                ticker.type               = InstrumentType.TICKER;
                ticker.typeSpecified      = true;
                Instruments instrs1 = new Instruments();
                instrs1.instrument = new Instrument[] { ticker };
                Instruments instrs2 = new Instruments();
                instrs2.instrument = new Instrument[] { bbUniqueId };

                SubmitGetDataRequest sbmtGtDtReq1 = new SubmitGetDataRequest();
                sbmtGtDtReq1.headers     = getDataHeaders;
                sbmtGtDtReq1.fields      = new string[] { "PX_LAST" };
                sbmtGtDtReq1.instruments = instrs1;

                SubmitGetDataRequest sbmtGtDtReq2 = new SubmitGetDataRequest();
                sbmtGtDtReq2.headers     = getDataHeaders;
                sbmtGtDtReq2.fields      = new string[] { "PX_LAST" };
                sbmtGtDtReq2.instruments = instrs2;

                submitGetDataRequestRequest sbmtGtDtReqReq1 = new submitGetDataRequestRequest(sbmtGtDtReq1);
                submitGetDataRequestRequest sbmtGtDtReqReq2 = new submitGetDataRequestRequest(sbmtGtDtReq2);

                submitGetDataRequestResponse sbmtGtDtReqResp1 = new submitGetDataRequestResponse();
                submitGetDataRequestResponse sbmtGtDtReqResp2 = new submitGetDataRequestResponse();

                sbmtGtDtReqResp1 = ps.submitGetDataRequest(sbmtGtDtReqReq1);
                sbmtGtDtReqResp2 = ps.submitGetDataRequest(sbmtGtDtReqReq1);
                SubmitGetDataResponse sbmtGtDtResp1 = sbmtGtDtReqResp1.submitGetDataResponse;
                SubmitGetDataResponse sbmtGtDtResp2 = sbmtGtDtReqResp2.submitGetDataResponse;

                Console.WriteLine("Scheduled Req 1 GetData --> " + sbmtGtDtResp1.responseId);
                Console.WriteLine("Scheduled Req 2 GetData --> " + sbmtGtDtResp2.responseId);

                System.Threading.Thread.Sleep(30000);

                string[] responseIds = { sbmtGtDtResp1.responseId, sbmtGtDtResp2.responseId, "dummy_id.out" };

                CancelHeaders cancelHeaders = new CancelHeaders();
                cancelHeaders.programflag = ProgramFlag.monthly;

                SubmitCancelRequest submitCancelReq = new SubmitCancelRequest();
                submitCancelReq.headers    = cancelHeaders;
                submitCancelReq.responseId = responseIds;

                submitCancelRequestRequest  submitCancelReqReq  = new submitCancelRequestRequest(submitCancelReq);
                submitCancelRequestResponse submitCancelReqResp = new submitCancelRequestResponse();

                SubmitCancelResponse submitCancelResp;

                Console.WriteLine("Sending submit cancel request");
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);

                    submitCancelReqResp = ps.submitCancelRequest(submitCancelReqReq);
                    submitCancelResp    = submitCancelReqResp.submitCancelResponse;

                    Console.WriteLine("Submit cancel request status: " + submitCancelResp.statusCode.description +
                                      " responseId: " + submitCancelResp.responseId);
                } while (submitCancelResp.statusCode.code == PerSecurity.DataNotAvailable);

                RetrieveCancelRequest retrieveCancelReq = new RetrieveCancelRequest();
                retrieveCancelReq.responseId = submitCancelResp.responseId;

                retrieveCancelResponseRequest  retrieveCancelRespReq = new retrieveCancelResponseRequest(retrieveCancelReq);
                retrieveCancelResponseResponse retrieveCancelRespResp;

                RetrieveCancelResponse retrieveCancelResp;

                Console.WriteLine("Sending retrieve cancel request");

                // Keep polling for response till the data is available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);

                    retrieveCancelRespResp = ps.retrieveCancelResponse(retrieveCancelRespReq);
                    retrieveCancelResp     = retrieveCancelRespResp.retrieveCancelResponse;
                } while (retrieveCancelResp.statusCode.code == PerSecurity.DataNotAvailable);

                // Display data
                if (retrieveCancelResp.statusCode.code == PerSecurity.Success)
                {
                    Console.WriteLine("Retrieve cancel request successful.");
                    CancelResponseStatus[] ls = retrieveCancelResp.cancelResponseStatus;
                    for (int i = 0; i < ls.Length; i++)
                    {
                        Console.WriteLine("The cancel status for response id :"
                                          + ls[i].responseId + " is " + ls[i].cancelStatus.ToString());
                    }
                }
                else if (retrieveCancelResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in submitted request");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Beispiel #7
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            try
            {
                // Setting headers for the request
                GetDataHeaders getDataHeaders = new GetDataHeaders();
                getDataHeaders.closingvaluesSpecified = true;
                getDataHeaders.closingvalues          = true;
                getDataHeaders.secmasterSpecified     = true;
                getDataHeaders.secmaster        = true;
                getDataHeaders.derivedSpecified = true;
                getDataHeaders.derived          = true;

                // Setting list of instruments for data request
                Instrument ticker = new Instrument();
                ticker           = new Instrument();
                ticker.id        = "IBM US";
                ticker.type      = InstrumentType.TICKER;
                ticker.yellowkey = MarketSector.Equity;

                Instrument[] instr = new Instrument[] { ticker };

                string[] field = new string[] { "ID_BB_UNIQUE", "TICKER",
                                                "PX_LAST", "PX_ASK", "PX_BID", "VWAP_DT" };

                BvalFieldSet fieldset = new BvalFieldSet();
                fieldset.fieldmacro = BvalFieldMacro.BVAL_BOND;

                Instruments instrmnts = new Instruments();
                instrmnts.instrument = instr;

                // Submit getdata request
                SubmitGetDataRequest sbmtGetDtReq = new SubmitGetDataRequest();
                sbmtGetDtReq.headers     = getDataHeaders;
                sbmtGetDtReq.fields      = field;
                sbmtGetDtReq.fieldsets   = new BvalFieldSet[] { fieldset };
                sbmtGetDtReq.instruments = instrmnts;

                Console.WriteLine("Sending submit getdata request");

                submitGetDataRequestRequest  sbmtGetDtReqReq  = new submitGetDataRequestRequest(sbmtGetDtReq);
                submitGetDataRequestResponse sbmtGetDtReqResp = ps.submitGetDataRequest(sbmtGetDtReqReq);
                SubmitGetDataResponse        sbmtGetDtResp    = sbmtGetDtReqResp.submitGetDataResponse;

                Console.WriteLine("Submit getdata request status: " + sbmtGetDtResp.statusCode.description +
                                  " responseId: " + sbmtGetDtResp.responseId);

                // Submit retrieve data
                RetrieveGetDataRequest rtvGetDtReq = new RetrieveGetDataRequest();
                rtvGetDtReq.responseId = sbmtGetDtResp.responseId;

                retrieveGetDataResponseRequest  rtvGetDtRespReq = new retrieveGetDataResponseRequest(rtvGetDtReq);
                retrieveGetDataResponseResponse rtvGetDtRespResp;

                RetrieveGetDataResponse rtvGetDtResp;

                Console.WriteLine("Sending retrieve getdata request");

                // Keep polling for response till the data is available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);

                    rtvGetDtRespResp = ps.retrieveGetDataResponse(rtvGetDtRespReq);
                    rtvGetDtResp     = rtvGetDtRespResp.retrieveGetDataResponse;
                } while (rtvGetDtResp.statusCode.code == PerSecurity.DataNotAvailable);

                // Display data
                if (rtvGetDtResp.statusCode.code == PerSecurity.Success)
                {
                    Console.WriteLine("Retrieve getdata request successful.  Response ID:" + rtvGetDtResp.responseId);
                    for (int i = 0; i < rtvGetDtResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :"
                                          + rtvGetDtResp.instrumentDatas[i].instrument.id + " "
                                          + rtvGetDtResp.instrumentDatas[i].instrument.yellowkey);
                        for (int j = 0; j < rtvGetDtResp.instrumentDatas[i].data.Length; j++)
                        {
                            Console.WriteLine("  "
                                              + rtvGetDtResp.fields[j]
                                              + ": "
                                              + rtvGetDtResp.instrumentDatas[i].data[j].value);
                        }
                    }
                }
                else if (rtvGetDtResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in submitted request");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Beispiel #8
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            try
            {
                // Setting headers
                GetActionsHeaders getActionHeaders = new GetActionsHeaders();
                getActionHeaders.actions_date          = ActionsDate.entry;
                getActionHeaders.actions_dateSpecified = true;
                string[] actions = new string[] { "DVD_CASH", "DISTRIBUTIONS" };
                getActionHeaders.actions = actions;

                // Setting Instruments
                Instruments instruments = new Instruments();
                Instrument  instr       = new Instrument();
                instr.id = "COP US";
                instr.yellowkeySpecified = true;
                instr.typeSpecified      = true;
                instr.yellowkey          = MarketSector.Equity;
                instr.type             = InstrumentType.TICKER;
                instruments.instrument = new Instrument[] { instr };

                // Submitting request
                SubmitGetActionsRequest req = new SubmitGetActionsRequest();
                req.headers     = getActionHeaders;
                req.instruments = instruments;

                submitGetActionsRequestRequest  subGetActReqReq  = new submitGetActionsRequestRequest(req);
                submitGetActionsRequestResponse subGetActReqResp = ps.submitGetActionsRequest(subGetActReqReq);
                SubmitGetActionsResponse        subGetActResp    = subGetActReqResp.submitGetActionsResponse;

                string responseId = subGetActResp.responseId;
                Console.WriteLine("Submit get actions request status: " + subGetActResp.statusCode.description +
                                  " responseId: " + responseId);

                // Submit retrieve request
                RetrieveGetActionsRequest rtrvGetActionsReq = new RetrieveGetActionsRequest();
                rtrvGetActionsReq.responseId = responseId;
                Console.WriteLine("Sending retrieve get actions request");

                retrieveGetActionsResponseRequest  rtrvGetActionsRespReq = new retrieveGetActionsResponseRequest(rtrvGetActionsReq);
                retrieveGetActionsResponseResponse rtrvGetActionsRespResp;

                RetrieveGetActionsResponse rtrvGetActionsResp;

                // Keep polling for response till the data is available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    rtrvGetActionsRespResp = ps.retrieveGetActionsResponse(rtrvGetActionsRespReq);
                    rtrvGetActionsResp     = rtrvGetActionsRespResp.retrieveGetActionsResponse;
                } while (rtrvGetActionsResp.statusCode.code == PerSecurity.DataNotAvailable);

                // Display data
                if (rtrvGetActionsResp.statusCode.code == PerSecurity.Success)
                {
                    Console.WriteLine("Retrieve get quotes request successful.  Response ID:" + rtrvGetActionsResp.responseId);
                    for (int i = 0; i < rtrvGetActionsResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :"
                                          + rtrvGetActionsResp.instrumentDatas[i].instrument.id + " "
                                          + rtrvGetActionsResp.instrumentDatas[i].instrument.yellowkey
                                          );
                        Console.WriteLine(", Company id = " + rtrvGetActionsResp.instrumentDatas[i].standardFields.companyId.ToString());
                        Console.WriteLine(", Security id = " + rtrvGetActionsResp.instrumentDatas[i].standardFields.securityId.ToString());
                        if (rtrvGetActionsResp.instrumentDatas[i].data != null)
                        {
                            for (int j = 0; j < rtrvGetActionsResp.instrumentDatas[i].data.Length; j++)
                            {
                                Console.WriteLine(": field =  "
                                                  + rtrvGetActionsResp.instrumentDatas[i].data[j].field
                                                  + ", value =  "
                                                  + rtrvGetActionsResp.instrumentDatas[i].data[j].value);
                            }
                        }
                    }
                }
                else if (rtrvGetActionsResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in submitted request");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Beispiel #9
0
        public void run(PerSecurityWSDL.PerSecurityWS ps, ProgramFlag pf)
        {
            try
            {
                // Setting headers
                QuotesHeaders headers = new QuotesHeaders();
                DateRange     dr      = new DateRange();
                DateTime      start   = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
                if (new DateTime().DayOfWeek == DayOfWeek.Saturday)
                {
                    TimeSpan ts1 = new TimeSpan(1, 0, 0, 0);
                    start = start.Subtract(ts1);
                }
                else if (new DateTime().DayOfWeek == DayOfWeek.Sunday)
                {
                    start.AddDays(-2);
                }

                // 1 days worth of ticks
                Period dRange = new Period();
                dRange.start = start;
                dRange.end   = start;
                dr.period    = dRange;

                headers.daterange            = dr;
                headers.programflag          = pf;
                headers.programflagSpecified = true;

                Instrument ticker = new Instrument();
                ticker.id = "IBM US";
                ticker.yellowkeySpecified = true;
                ticker.typeSpecified      = true;
                ticker.yellowkey          = MarketSector.Equity;
                ticker.type = InstrumentType.TICKER;
                Instruments instrs = new Instruments();
                instrs.instrument = new Instrument[] { ticker };

                // Sending Request
                SubmitGetQuotesRequest smtGetQtsReq = new SubmitGetQuotesRequest();
                smtGetQtsReq.headers     = headers;
                smtGetQtsReq.instruments = instrs;

                Console.WriteLine("Sending submit get quotes request");

                submitGetQuotesRequestRequest  smtGetQtsReqReq  = new submitGetQuotesRequestRequest(smtGetQtsReq);
                submitGetQuotesRequestResponse smtGetQtsReqResp = ps.submitGetQuotesRequest(smtGetQtsReqReq);
                SubmitGetQuotesResponse        smtGetQtsResp    = smtGetQtsReqResp.submitGetQuotesResponse;;

                Console.WriteLine("Submit get quotes request status: " + smtGetQtsResp.statusCode.description +
                                  " responseId: " + smtGetQtsResp.responseId);

                RetrieveGetQuotesRequest rtrvGetQtsReq = new RetrieveGetQuotesRequest();
                rtrvGetQtsReq.responseId = smtGetQtsResp.responseId;

                retrieveGetQuotesResponseRequest  rtrvGetQtsRespReq = new retrieveGetQuotesResponseRequest(rtrvGetQtsReq);
                retrieveGetQuotesResponseResponse rtrvGetQtsRespResp;

                RetrieveGetQuotesResponse rtrvGetQtsResp;

                Console.WriteLine("Sending retrieve get quotes request");

                // Keep polling for response till the data is available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    rtrvGetQtsRespResp = ps.retrieveGetQuotesResponse(rtrvGetQtsRespReq);
                    rtrvGetQtsResp     = rtrvGetQtsRespResp.retrieveGetQuotesResponse;
                } while (rtrvGetQtsResp.statusCode.code == PerSecurity.DataNotAvailable);

                // Display data
                if (rtrvGetQtsResp.statusCode.code == PerSecurity.Success)
                {
                    Console.WriteLine("Retrieve get quotes request successful.  Response ID:" + rtrvGetQtsResp.responseId);
                    for (int i = 0; i < rtrvGetQtsResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :"
                                          + rtrvGetQtsResp.instrumentDatas[i].instrument.id + " "
                                          + rtrvGetQtsResp.instrumentDatas[i].instrument.yellowkey);
                        for (int j = 0; j < rtrvGetQtsResp.instrumentDatas[i].quotes.Length; j++)
                        {
                            Console.WriteLine("price =  "
                                              + rtrvGetQtsResp.instrumentDatas[i].quotes[j].price
                                              + ", volume =  "
                                              + rtrvGetQtsResp.instrumentDatas[i].quotes[j].volume);
                        }
                    }
                }
                else if (rtrvGetQtsResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in submitted request");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Beispiel #10
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            try
            {
                // Setting headers
                GetHistoryHeaders getHistHeaders = new GetHistoryHeaders();
                getHistHeaders.display_pricing_srcSpecified = true;
                getHistHeaders.display_pricing_src          = true;

                DateRange dtRange = new DateRange();
                dtRange.period           = new Period();
                dtRange.period.start     = DateTime.Today.Subtract(TimeSpan.FromDays(7));
                dtRange.period.end       = DateTime.Today;
                getHistHeaders.daterange = dtRange;

                Instrument ticker = new Instrument();
                ticker.id                 = "IBM US";
                ticker.typeSpecified      = true;
                ticker.yellowkeySpecified = true;
                ticker.type               = InstrumentType.TICKER;
                ticker.yellowkey          = MarketSector.Equity;
                Instrument[] instr  = new Instrument[] { ticker };
                Instruments  instrs = new Instruments();
                instrs.instrument = instr;

                string[] fields = new string[] { "PX_LAST" };

                // Sending Request
                SubmitGetHistoryRequest sbmtGtHistReq = new SubmitGetHistoryRequest();
                sbmtGtHistReq.headers     = getHistHeaders;
                sbmtGtHistReq.instruments = instrs;
                sbmtGtHistReq.fields      = fields;

                Console.WriteLine("Submit gethistory request");

                submitGetHistoryRequestRequest  sbmtGtHistReqReq  = new submitGetHistoryRequestRequest(sbmtGtHistReq);
                submitGetHistoryRequestResponse sbmtGtHistReqResp = ps.submitGetHistoryRequest(sbmtGtHistReqReq);
                SubmitGetHistoryResponse        sbmtGtHistResp    = sbmtGtHistReqResp.submitGetHistoryResponse;

                Console.WriteLine("Submit gethistory request - Status: "
                                  + sbmtGtHistResp.statusCode.description + " response ID = "
                                  + sbmtGtHistResp.responseId);
                Console.WriteLine("Sending retrieve gethistory request");

                RetrieveGetHistoryRequest rtrvGtHistReq = new RetrieveGetHistoryRequest();
                rtrvGtHistReq.responseId = sbmtGtHistResp.responseId;

                retrieveGetHistoryResponseRequest  rtrvGtHistRespReq = new retrieveGetHistoryResponseRequest(rtrvGtHistReq);
                retrieveGetHistoryResponseResponse rtrvGtHistRespResp;

                RetrieveGetHistoryResponse rtrvGtHistResp;

                // Keep polling for response till the data is available
                do
                {
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    rtrvGtHistRespResp = ps.retrieveGetHistoryResponse(rtrvGtHistRespReq);
                    rtrvGtHistResp     = rtrvGtHistRespResp.retrieveGetHistoryResponse;
                } while (rtrvGtHistResp.statusCode.code == PerSecurity.DataNotAvailable);

                // Displaying data
                if (rtrvGtHistResp.statusCode.code == PerSecurity.Success)
                {
                    Console.WriteLine("Retrieve gethistory request successful Response ID: " + rtrvGtHistResp.responseId);
                    for (int i = 0; i < rtrvGtHistResp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :"
                                          + rtrvGtHistResp.instrumentDatas[i].instrument.id
                                          + " "
                                          + rtrvGtHistResp.instrumentDatas[i].instrument.yellowkey);
                        Console.WriteLine("Time: " + rtrvGtHistResp.instrumentDatas[i].date.Hour.ToString() + ":" + rtrvGtHistResp.instrumentDatas[i].date.Minute.ToString() + ":" + rtrvGtHistResp.instrumentDatas[i].date.Second.ToString());
                        Console.WriteLine("Pricing Source: " + rtrvGtHistResp.instrumentDatas[i].pricingSource);
                        for (int j = 0; j < rtrvGtHistResp.instrumentDatas[i].data.Length; j++)
                        {
                            Console.WriteLine(fields[j]
                                              + " : "
                                              + rtrvGtHistResp.instrumentDatas[i].data[j].value);
                        }
                    }
                }
                else if (rtrvGtHistResp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine(" Error in the submitted request");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Beispiel #11
0
        public void run(PerSecurityWSDL.PerSecurityWS ps)
        {
            try
            {
                // Setting request header information
                GetDataHeaders getDataHeaders = new GetDataHeaders();
                getDataHeaders.secmaster          = true;
                getDataHeaders.secmasterSpecified = true;
                getDataHeaders.derived            = true;
                getDataHeaders.derivedSpecified   = true;

                getDataHeaders.bvaltierSpecified = true;
                getDataHeaders.bvaltier          = 1;
                // The bval request will run at a scheduled time but the PortfolioValidation Request will get a response after the req file is copied
                getDataHeaders.bvalsnapshot          = BvalSnapshot.ny3pm;
                getDataHeaders.bvalsnapshotSpecified = true;

                // Setting Instrument information
                Instrument instr = new Instrument();
                instr.id            = "BBG0009P1SC8";
                instr.type          = InstrumentType.BB_GLOBAL;
                instr.typeSpecified = true;

                // group all instrument into a single instance of type Instruments.
                Instruments instrs = new Instruments();
                instrs.instrument = new Instrument[] { instr };

                // Setting the getdata request parameter
                SubmitGetDataRequest sbmtGtDtReq = new SubmitGetDataRequest();
                sbmtGtDtReq.headers = getDataHeaders;
                sbmtGtDtReq.fields  = new string[] { "BVAL_BEEM", "BVAL_SNAPSHOT" };

                // sbmtGtDtReq.instruments = new Instruments();
                sbmtGtDtReq.instruments = instrs;

                Console.WriteLine("Submit BvalGetData Request");

                submitGetDataRequestRequest  sbmtGtDtReqReq  = new submitGetDataRequestRequest(sbmtGtDtReq);
                submitGetDataRequestResponse sbmtGtDtReqResp = ps.submitGetDataRequest(sbmtGtDtReqReq);
                SubmitGetDataResponse        sbmtGtDtResp    = sbmtGtDtReqResp.submitGetDataResponse;

                System.Console.WriteLine("status " + sbmtGtDtResp.statusCode.description);
                System.Console.WriteLine("Submit BvalGetData request -  response ID = " + sbmtGtDtResp.responseId);

                GetPortfolioValidationRequest req = new GetPortfolioValidationRequest();
                req.responseId = sbmtGtDtResp.responseId;

                Console.WriteLine("Sending submit portfolio validation request");

                getPortfolioValidationRequest1  req1 = new getPortfolioValidationRequest1(req);
                getPortfolioValidationResponse1 resp1;

                GetPortfolioValidationResponse resp;

                // Keep polling for response till the data is available
                do
                {
                    Console.WriteLine("Polling for PortfolioValidation request");
                    System.Threading.Thread.Sleep(PerSecurity.PollInterval);
                    resp1 = ps.getPortfolioValidation(req1);
                    resp  = resp1.getPortfolioValidationResponse;
                } while (resp.statusCode.code == PerSecurity.DataNotAvailable);

                // Display data
                if (resp.statusCode.code == PerSecurity.Success)
                {
                    Console.WriteLine("Retrieve get quotes request successful.  Response ID:" + resp.responseId);
                    for (int i = 0; i < resp.instrumentDatas.Length; i++)
                    {
                        Console.WriteLine("Data for :"
                                          + resp.instrumentDatas[i].instrument.id + " "
                                          + resp.instrumentDatas[i].instrument.yellowkey);

                        Console.WriteLine("validation code =  "
                                          + resp.instrumentDatas[i].code.ToString());
                    }
                }
                else if (resp.statusCode.code == PerSecurity.RequestError)
                {
                    Console.WriteLine("Error in submitted PortfolioValidation request");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + "   " + e.StackTrace);
            }
        }