Giter Club home page Giter Club logo

blpapi-http's People

Contributors

aceofsteel avatar davidawad avatar ericlu88 avatar ericvw avatar flojdek avatar fyquah avatar saltedcashew avatar thmiceli avatar yupinghu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

blpapi-http's Issues

Ruby examples

Provide a complete set of Ruby examples for accessing the blpapi-http server over HTTPS. Examples should cover the following:

  • Historical data
  • Reference data
  • Field lookup and search
  • Overrides
  • Varied options and parameters
  • Using different securities that are not just equities (i.e., stocks)
  • Getting the result back in some usable language-specific structure

Update docs for subscriptions, auth, new URL scheme

http-api-guide.md is falling behind a bit:

  1. Subscriptions aren't explained.
  2. Auth will need to get added when it lands.
  3. All the references (as well as examples across the board) will need to be updated for the URL scheme when #59 is resolved).

Support //blp/mktvwap

This issue is to track the progress of adding support for the //blp/mktvwap service. Please update with progress, findings, and status.

Run examples in the continuous integration

After we have mocks for request/response (and eventually for everything), we should hook up running the examples during CI, to detect when there are errors in the examples. (See #81, for example.)

Lock-in URL scheme for the HTTP API

This is to come to a consensus among the URL scheme and design of the HTTP API. Once we understand how all the services work that is being addressed in #15, #54, #55, #56, #57, #58 we decide upon what the final HTTP API should look like with confidence.

Mirror examples provided in the blpapi-node project.

We should provide the same set of examples that the blpapi-node project provides in its examples directory for completeness. curl or wget should be sufficient for request/response examples and some language should be decided upon for the subscription examples.

Support //blp/instruments

This issue is to track the progress of adding support for the //blp/instruments service. Please update with progress, findings, and status.

Define contribution guidelines

This issue is to serve as discussion thread to determine the initial contribution guidelines for the project. I have initially started this work in my own personal fork at http://github.com/ericvw/blpapi-http under the contributing branch. Once the initial guidelines have been settled upon, we can close this issue with a PR that addresses everything discussed.

The primary topics that would be desirable to initially cover are:

  • the development workflow/branching model
  • guidelines for awesome issue/feature requests
  • determining if and how we want to use milestones to organize the project
  • what the testing and quality assurance tools are (this may be premature to define)
  • how we want to deal with documentation with respect to the Bloomberg Open API to avoid duplication, but keep the content relevant.

Ready...set...GO!

Shell (i.e., curl and/or wget) examples

Provide a complete set of curl and/or wget examples for accessing the blpapi-http server over HTTPS. Examples should cover the following:

  • Historical data
  • Reference data
  • Field lookup and search
  • Overrides
  • Varied options and parameters
  • Using different securities that are not just equities (i.e., stocks)
  • Getting the result back in some usable language-specific structure

FAQ

Provide a FAQ that should cover the following and more:

  • Specific environment/tooling oddities and solutions
  • Links to other externally hosted and in-repository documentation

Decide a consistent approach for error handling

Right now in our request/response code we use http status code to negotiate the errors with client. This approach won't work for cases where we encounter errors in the middle of the request, since we are sending the data received from underlying session right away(not buffering).

The two possible approaches are:

  • Buffer the response until the last bit and then send the data in 1 trunk, so that we could leverage the http status code.
  • Always send 200 as http status code and leverage the status field in the response body to indicate the status of the response.

Open to discussion, the goal is to come up with a consistency approach for our server.

NodeJS Examples

Provide a complete set of NodeJS examples for accessing the blpapi-http server over HTTPS. Examples should cover the following:

  • Historical data
  • Reference data
  • Field lookup and search
  • Overrides
  • Varied options and parameters
  • Using different securities that are not just equities (i.e., stocks)
  • Getting the result back in some usable language-specific structure

Testing infrastructure

We need this.

  • We need to decided upon some testing infrastructure (i.e., mocha?)
  • How can we stub the BLP API?
  • Can the testing infrastructure work with TravisCI?

Python 2.7/3 examples

Provide a complete set of Python 2.7 and Python 3.x examples for accessing the blpapi-http server over HTTPS. Examples should cover the following:

  • Historical data
  • Reference data
  • Field lookup and search
  • Overrides
  • Varied options and parameters
  • Using different securities that are not just equities (i.e., stocks)
  • Getting the result back in some usable language-specific structure

Migrate blpapi-wrapper into blpapi-node project.

Migrate blpapi-wrapper.ts into the blpapi-node project as a higher-level user-facing API. Some things to consider:

  • Should the existing blpapi-node API exist alongside this higher-level API?
  • How much of this functionality should be pushed down into the native/binding layer?
  • What's the strategy for migrating to depend upon NodeJS 0.12.x features (i.e., generators)?

Converge to one underlying Session

This is somewhat related to #13, but will probably happen in one PR. However, this issues to converge the management to one underlying BLP API session.

Support //blp/apiauth

This issues is to understand how the Open API authorization service and system works. Section 6 of the BLP API Developers Guide discusses the //blp/apiauth service, but we need a better understanding how this works in practice.

This investigation encompasses setting up our own BPIPE installation and user management to properly test authorization.

Java examples

Provide a complete set of Java examples for accessing the blpapi-http server over HTTPS. Examples should cover the following:

  • Historical data
  • Reference data
  • Field lookup and search
  • Overrides
  • Varied options and parameters
  • Using different securities that are not just equities (i.e., stocks)
  • Getting the result back in some usable language-specific structure

Support //blp/mktbar

This issue is to track the progress of adding support for the //blp/mktbar service. Please update with progress, findings, and status.

Support //blp/pagedata

This issue is to track the progress of adding support for the //blp/pagedata service. Please update with progress, findings, and status.

Configure CRL list for node server

Currently the http server is not supporting CRL. We need to configure the node server to read a CRL. Other consideration including auto-bouncing the server once the CRL change( as part of research in #13 we found out that node server will not update when CRL file changes).

Support //blp/tasvc

This issue is to track the progress of adding support for the //blp/tasvc service. Please update with progress, findings, and status.

Inconsistent Response from Historical Data Requests

During Treehacks, we were seeing responses returning incomplete data(Only 1 field having data returned) or being invalid json objects. I have a feeling it is because the requests are M x N which are causing the issues.

Sample json request that was causing issues:

{
   "securities": ["FOXA US Equity", "CTSH US Equity", "APC US Equity"],
    "fields": ["PX_LAST", "OPEN", "EPS_ANNUALIZED"],
    "startDate": "20120601",
    "endDate": "20120602",
    "periodicitySelection": "DAILY"
}

HTTPS Client Certificates

This issue is to investigate and implement the usage of HTTPS client certificates as a means of authentication and identity management.

Some investigative questions to answer are:

  • Do we have access to the underlying certificate information?
    • If so, what part of the certificate can we use to uniquely identify the user?
  • How does revocation lists of certificates work with the http server?

Please feel free to add any other investigative questions, answers, and progress.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.