private bool parseCommandLine(String[] args) { for (int i = 0; i < args.Length; ++i) { if (string.Compare(args[i], "-s", true) == 0) { d_securities.Add(args[i + 1]); } else if (string.Compare(args[i], "-f", true) == 0) { d_field = args[i + 1]; d_fieldAsName = Name.GetName(d_field); } else if (string.Compare(args[i], "-c", true) == 0) { String credential = args[i + 1]; int idx = credential.IndexOf(':'); d_uuids.Add( int.Parse(credential.Substring(0, idx))); d_programAddresses.Add(credential.Substring(idx + 1)); } else if (string.Compare(args[i], "-ip", true) == 0) { d_host = args[i + 1]; } else if (string.Compare(args[i], "-p", true) == 0) { d_port = int.Parse(args[i + 1]); } else if (string.Compare(args[i], "-h", true) == 0) { printUsage(); return(false); } } if (d_uuids.Count <= 0) { System.Console.WriteLine("No uuids were specified"); return(false); } if (d_uuids.Count != d_programAddresses.Count) { System.Console.WriteLine("Invalid number of program addresses provided"); } if (d_securities.Count <= 0) { d_securities.Add("MSFT US Equity"); } foreach (String security in d_securities) { d_subscriptions.Add(new Subscription(security, d_field, "", new CorrelationID(security))); } return(true); }
private void sendEqsDataRequest(Session session) { Service refDataService = session.GetService("//blp/refdata"); Request request = refDataService.CreateRequest("BeqsRequest"); request.Set("screenName", d_screenName); request.Set("screenType", Name.GetName(d_screenType)); System.Console.WriteLine("Sending Request: " + request); session.SendRequest(request, null); }
public ServerMode_EntitlementsVerificationSubscriptionTokenExample() { d_host = "localhost"; d_port = 8194; d_field = "BEST_BID1"; d_fieldAsName = Name.GetName(d_field); d_appName = string.Empty; d_securities = new List <string>(); d_identities = new List <Identity>(); d_tokens = new List <string>(); d_subscriptions = new System.Collections.Generic.List <Subscription>(); }
public EntitlementsVerificationSubscriptionExample() { d_host = "localhost"; d_port = 8194; d_field = "BEST_BID1"; d_fieldAsName = Name.GetName(d_field); d_securities = new List <string>(); d_uuids = new List <int>(); d_identities = new List <Identity>(); d_programAddresses = new List <string>(); d_subscriptions = new System.Collections.Generic.List <Subscription>(); }
public Msg1RecoveryExample() { d_port = 8194; d_hosts = new ArrayList(); d_startType = SERIAL; d_startSerial = 0; d_endType = TIME; d_endTime = new Datetime(DateTime.Now); d_filter = FilterChoiceType.LAST_UPDATE_ONLY; d_eid = 0; d_eidProvided = false; d_requestType = STATUS_INFO; d_authOption = "LOGON"; d_dsName = ""; d_name = ""; }
/* * static void PerformRequest(DateTime date, List<string> secs) { * Console.WriteLine( date.ToString("yyyy-M-d") ); * foreach (string sec in secs) { * Console.WriteLine(" " + sec); * } * Console.WriteLine(); * } */ void PerformRequest(DateTime date, List <string> secs) { if (secs.Count == 0) { Console.Error.WriteLine("Request for date " + date + " had 0 securities"); return; } Request request = refDataService.CreateRequest("HistoricalDataRequest"); Element securities = request.GetElement("securities"); foreach (string s in secs) { securities.AppendValue(s); } Element fields = request.GetElement("fields"); fields.AppendValue("PX_LAST"); // close? //fields.AppendValue("LAST_PRICE"); // last trade price request.Set("startDate", date.ToString("yyyyMMdd")); request.Set("endDate", date.ToString("yyyyMMdd")); request.Set("periodicityAdjustment", "ACTUAL"); request.Set("periodicitySelection", "DAILY"); request.Set("nonTradingDayFillOption", "ALL_CALENDAR_DAYS"); // report when not trading request.Set("nonTradingDayFillMethod", "PREVIOUS_VALUE"); // use last value when not trading //request.Set("pricingOption", "PRICING_OPTION_YIELD"); request.Set("maxDataPoints", 40000); //request.Set("returnEids", true); // ?? Needed System.Console.Error.WriteLine("Sending Request: " + request); session.SendRequest(request, null); // following code from: // http://stackoverflow.com/questions/12315754/bloomberg-net-api-response-data-for-multiple-securities while (true) { Event eventObj = session.NextEvent(); foreach (Message msg in eventObj) { if (msg.MessageType.Equals(Name.GetName("HistoricalDataResponse"))) { if (msg.HasElement("securityData")) { Element secData = msg.GetElement("securityData"); String secId = secData.GetElementAsString("security"); // AUD curncy... //int seqNum = secData.GetElementAsInt32("sequenceNumber"); // index in secs if (secData.HasElement("fieldData")) //ARRAY! { Element fieldDataArray = secData.GetElement("fieldData"); //System.Console.Error.WriteLine("fieldDataArray has " + fieldDataArray.NumValues + " elements"); for (int i = 0; i < fieldDataArray.NumValues; i++) { Element fieldData = fieldDataArray.GetValueAsElement(i); // "fieldData not array Datetime d = fieldData.GetElementAsDate("date"); if (fieldData.HasElement("PX_LAST")) { double yield = fieldData.GetElementAsFloat64("PX_LAST"); // output price System.Console.WriteLine(secId + "," + d.Year + "-" + d.Month + "-" + d.DayOfMonth + "," + yield); } else { // output missing price System.Console.WriteLine(secId + "," + d.Year + "-" + d.Month + "-" + d.DayOfMonth + ","); } } } else { System.Console.Error.WriteLine("HistoricalDataResponse for " + secId + " had no fieldData[] element"); System.Console.Error.WriteLine("Full Msg: " + msg.AsElement); Environment.Exit(2); } } else { System.Console.Error.WriteLine("HistoricalDataResponse had no securityData element"); System.Console.Error.WriteLine("Full Msg: " + msg.AsElement); Environment.Exit(2); } } else { System.Console.Error.WriteLine("Received Msg: " + msg.AsElement); } } if (eventObj.Type == Event.EventType.RESPONSE) { break; } } }
private bool parseCommandLine(String[] args) { for (int i = 0; i < args.Length; ++i) { if (string.Compare(args[i], "-s", true) == 0 && i + 1 < args.Length) { d_securities.Add(args[++i]); } else if (string.Compare(args[i], "-f", true) == 0 && i + 1 < args.Length) { d_field = args[++i]; d_fieldAsName = Name.GetName(d_field); } else if (string.Compare(args[i], "-a", true) == 0 && i + 1 < args.Length) { d_appName = args[++i]; } else if (string.Compare(args[i], "-t", true) == 0 && i + 1 < args.Length) { d_tokens.Add(args[++i]); } else if (string.Compare(args[i], "-ip", true) == 0 && i + 1 < args.Length) { d_host = args[++i]; } else if (string.Compare(args[i], "-p", true) == 0 && i + 1 < args.Length) { int outPort = 0; if (int.TryParse(args[++i], out outPort)) { d_port = outPort; } } else if (string.Compare(args[i], "-h", true) == 0) { printUsage(); return(false); } } if (d_appName.Length == 0) { System.Console.WriteLine("No server side Application Name were specified"); printUsage(); return(false); } if (d_tokens.Count <= 0) { System.Console.WriteLine("No tokens were specified"); printUsage(); return(false); } if (d_securities.Count <= 0) { d_securities.Add("MSFT US Equity"); } foreach (String security in d_securities) { d_subscriptions.Add(new Subscription(security, d_field, "", new CorrelationID(security))); } return(true); }
private bool parseCommandLine(string[] args) { for (int i = 0; i < args.Length; ++i) { if (string.Compare(args[i], "-s", true) == 0 && i + 1 < args.Length) { d_requestType = REPLAY; int startSerial = 0; string startArg = args[++i]; if (int.TryParse(startArg, out startSerial)) { d_startType = SERIAL; d_startSerial = startSerial; } else { try { d_startTime = new Datetime(Convert.ToDateTime(startArg)); d_startType = TIME; } catch (FormatException) { Console.WriteLine("Error: '{0}' is not in the proper Datetime format.", startArg); printUsage(); return(false); } } } else if (string.Compare(args[i], "-e", true) == 0 && i + 1 < args.Length) { d_requestType = REPLAY; int endSerial = 0; string endArg = args[++i]; if (int.TryParse(endArg, out endSerial)) { d_endType = SERIAL; d_endSerial = endSerial; } else { try { d_endTime = new Datetime(Convert.ToDateTime(endArg)); d_endType = TIME; } catch (FormatException) { Console.WriteLine("Error: '{0}' is not in the proper Datetime format.", endArg); printUsage(); return(false); } } } else if (string.Compare(args[i], "-f", true) == 0 && i + 1 < args.Length) { d_requestType = REPLAY; string filter = args[++i]; try { d_filter = (FilterChoiceType)Enum.Parse(d_filter.GetType(), filter, true); } catch (ArgumentException) { Console.WriteLine("Error: '{0}' is not a supported filter type.", filter); printUsage(); return(false); } } else if (string.Compare(args[i], "-eid") == 0 && i + 1 < args.Length) { string eidArg = args[++i]; if (int.TryParse(eidArg, out d_eid)) { d_eidProvided = true; } else { Console.WriteLine("Error: '{0}' is not an integer", eidArg); printUsage(); return(false); } } else if (string.Compare(args[i], "-ip", true) == 0 && i + 1 < args.Length) { d_hosts.Add(args[++i]); } else if (string.Compare(args[i], "-p", true) == 0 && i + 1 < args.Length) { int outPort = 0; if (int.TryParse(args[++i], out outPort)) { d_port = outPort; } } else if (string.Compare("-auth", args[i], true) == 0 && i + 1 < args.Length) { d_authOption = args[++i].Trim(); } else if (string.Compare("-ds", args[i], true) == 0 && i + 1 < args.Length) { d_dsName = args[++i].Trim(); } else if (string.Compare("-n", args[i], true) == 0 && i + 1 < args.Length) { d_name = args[++i].Trim(); } else if (string.Compare(args[i], "-h", true) == 0) { printUsage(); return(false); } else { Console.WriteLine("Error: unknown argument '{0}'", args[i]); printUsage(); return(false); } } // check for application name if ((d_authOption == "APPLICATION" || d_authOption == "USER_APP") && (d_name == "")) { System.Console.WriteLine("Application name cannot be NULL for application authorization."); printUsage(); return(false); } if (d_authOption == "USER_DS_APP" && (d_name == "" || d_dsName == "")) { System.Console.WriteLine("Application or DS name cannot be NULL for application authorization."); printUsage(); return(false); } // check for Directory Service name if ((d_authOption == "DIRSVC") && (d_dsName == "")) { System.Console.WriteLine("Directory Service property name cannot be NULL for DIRSVC authorization."); printUsage(); return(false); } // handle default arguments if (d_hosts.Count == 0) { d_hosts.Add("localhost"); } return(true); }
void ProcessFields(Message msg) { String delimiter = "\t"; //Print out the date column header System.Console.Write("DATE" + delimiter + delimiter); // Print out the field column headers for (int k = 0; k < d_fields.Count; k++) { System.Console.Write(d_fields[k].ToString() + delimiter); } System.Console.Write("\n\n"); Element securityData = msg.GetElement(SECURITY_DATA); Element fieldData = securityData.GetElement(FIELD_DATA); //Iterate through all field values returned in the message if (fieldData.NumValues > 0) { for (int j = 0; j < fieldData.NumValues; j++) { Element element = fieldData.GetValueAsElement(j); //Print out the date Datetime date = element.GetElementAsDatetime(DATE); System.Console.Write(date.DayOfMonth + "/" + date.Month + "/" + date.Year + delimiter); //Check for the presence of all the fields requested for (int k = 0; k < d_fields.Count; k++) { String temp_field_str = d_fields[k].ToString(); if (element.HasElement(temp_field_str)) { Element temp_field = element.GetElement(temp_field_str); Name TEMP_FIELD_STR = new Name(temp_field_str); int datatype = temp_field.Datatype.GetHashCode(); //Extract the value dependent on the dataype and print to the console switch (datatype) { case (int)DataType.BOOL: //Bool { bool field1; field1 = element.GetElementAsBool(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.CHAR: //Char { char field1; field1 = element.GetElementAsChar(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.INT32: //Int32 { Int32 field1; field1 = element.GetElementAsInt32(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.INT64: //Int64 { Int64 field1; field1 = element.GetElementAsInt64(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.FLOAT32: //Float32 { float field1; field1 = element.GetElementAsFloat32(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.FLOAT64: //Float64 { double field1; field1 = element.GetElementAsFloat64(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.STRING: //String { String field1; field1 = element.GetElementAsString(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } case (int)DataType.DATE: //Date { Datetime field1; field1 = element.GetElementAsDatetime(TEMP_FIELD_STR); System.Console.Write(field1.Year + '/' + field1.Month + '/' + field1.DayOfMonth + delimiter); break; } case (int)DataType.TIME: //Time { Datetime field1; field1 = element.GetElementAsDatetime(TEMP_FIELD_STR); System.Console.Write(field1.Hour + '/' + field1.Minute + '/' + field1.Second + delimiter); break; } case (int)DataType.DATETIME: //Datetime { Datetime field1; field1 = element.GetElementAsDatetime(TEMP_FIELD_STR); System.Console.Write(field1.Year + '/' + field1.Month + '/' + field1.DayOfMonth + '/'); System.Console.Write(field1.Hour + '/' + field1.Minute + '/' + field1.Second + delimiter); break; } default: { String field1; field1 = element.GetElementAsString(TEMP_FIELD_STR); System.Console.Write(field1 + delimiter); break; } } //end of switch } //end of if System.Console.WriteLine(""); } //end of for } //end of for } //end of if } //end of method
private void ParseCommandLine(string[] args) { for (int i = 0; i < args.Length; ++i) { if (string.Compare("-r", args[i], true) == 0 && i + 1 < args.Length) { d_requestType = Name.GetName(args[++i]); } else if (string.Compare("-s", args[i], true) == 0 && i + 1 < args.Length) { d_queryString = args[++i]; } else if (string.Compare("-ip", args[i], true) == 0 && i + 1 < args.Length) { d_host = args[++i]; } else if (string.Compare("-p", args[i], true) == 0 && i + 1 < args.Length) { d_port = int.Parse(args[++i]); } else if (string.Compare("-m", args[i], true) == 0 && i + 1 < args.Length) { d_maxResults = int.Parse(args[++i]); } else if (string.Compare("-f", args[i], true) == 0 && i + 1 < args.Length) { string[] tokens = args[++i].Split('='); if (tokens.Length == 2) { d_filters[tokens[0].Trim()] = tokens[1].Trim(); } } else if (string.Compare("-auth", args[i], true) == 0 && i + 1 < args.Length) { ++i; if (string.Compare(AUTH_OPTION_NONE, args[i], true) == 0) { d_authOptions = null; } else if (string.Compare(AUTH_OPTION_USER, args[i], true) == 0) { d_authOptions = AUTH_USER; } else if (string.Compare( AUTH_OPTION_APP, 0, args[i], 0, AUTH_OPTION_APP.Length, true) == 0) { d_authOptions = AUTH_APP_PREFIX + args[i].Substring(AUTH_OPTION_APP.Length); } else if (string.Compare( AUTH_OPTION_DIR, 0, args[i], 0, AUTH_OPTION_DIR.Length, true) == 0) { d_authOptions = AUTH_DIR_PREFIX + args[i].Substring(AUTH_OPTION_DIR.Length); } else if (string.Compare( AUTH_OPTION_USER_APP, 0, args[i], 0, AUTH_OPTION_USER_APP.Length, true) == 0) { d_authOptions = AUTH_USER_APP_PREFIX + args[i].Substring(AUTH_OPTION_USER_APP.Length); } else { throw new Exception(string.Format("Invalid -auth option: {0}", args[i])); } } else { throw new Exception(string.Format("Unknown option {0}", args[i])); } } }