Permalink
Fetching contributors…
Cannot retrieve contributors at this time
50 lines (38 sloc) 3.34 KB

CREST APIs

As a public service, we provide some tools for transforming and extending EVE Online's CREST API. This project is an exercise in Flask and REST design/deployment.

All services in this collection run without DB connections. tinyDB is used as a cache layer, but the service is designed to be easy to deploy anywhere without extra dependencies. Build & install is designed/tested on Ubuntu16 systems.

Note:

As of writing this (2017-03-10), CCP is working to replace CREST/XML API's with ESI. We will review replacing the CREST request structure with an ESI one, but worry about ESI/oAuth scoping for a reasonably simple app.

Endpoints

OHLC

Path /CREST/OHLC.<return_format> (csv, json)
Methods GET
Args typeID
regionID
api (unused)
Headers User-Agent
Returns [date, open, high, low, close, volume]

OHLC endpoint transposes the market history endpoint into OHLC format. This should work in most existing TA tools as-is. Currently powering charting at EVE Mogul

NOTES

  • RTT is not excellent. Validates against CREST for typeID and regionID.
    • Does have cache layer, but new ID`s will take ~3-5s to resolve
  • Request throughput is poor. Total traffic capacity is single-thread
  • OHLC calc is a hack. Uses "today" as close and transposes "yesterday's" price as open
  • API feature not used. Internal API keying to filter users

prophet

Path /CREST/prophet.<return_format> (csv, json)
Methods GET
Args typeID
regionID
api
range optional
Headers User-Agent
Returns [date, avgPrice, yhat, yhat_low, yhat_high, prediction]

Prophet endpoint uses Prophet forecasting library to predict future price fluctuations. Combining Prosper's archive of EVE's market history endpoint we generate a best-guess for future prices. Currently powering charting at EVE Mogul

More info on forecasts can be found on our blog

NOTES

  • Endpoint cached: will only render forecast once-per-day for a type/region pair.
  • API key required. Contact to get API key
  • Please be courteous: heavy throughput and multi-threading are not supported
  • VERY NAIVE FORECASTING. This is a science experiment, not a fool-proof forecast of future events
  • Does not understand CCP dev cycle. Will approximate cycles with changepoint prediction but only uses requested item to guess cycles
  • PROVIDED WITHOUT WARANTY. Seriously, don't trade what you can't afford to lose, this thing is just a cartoon, don't go all Russian on my house