Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stoqey/aurum-broker-spec
API Spec for implementing any broker with AURUM 🤑
https://github.com/stoqey/aurum-broker-spec
algo-trading aurum aurum-broker-spec broker broker-api broker-events broker-methods portfolios
Last synced: 21 days ago
JSON representation
API Spec for implementing any broker with AURUM 🤑
- Host: GitHub
- URL: https://github.com/stoqey/aurum-broker-spec
- Owner: stoqey
- Created: 2020-05-02T17:03:52.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-02-04T12:42:25.000Z (almost 2 years ago)
- Last Synced: 2024-05-01T11:35:32.045Z (8 months ago)
- Topics: algo-trading, aurum, aurum-broker-spec, broker, broker-api, broker-events, broker-methods, portfolios
- Language: TypeScript
- Homepage:
- Size: 611 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
AURUM BROKER SPEC
This is for any one that wants to create a Broker provider for Aurum, you can also use it as a guide when using any aurum-based broker.Features:
- Broker events
- Broker methods## Broker methods
| Method | Description |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| init | Important method called to start start the broker, it's recommended to call this method after all events have been registered |
| getAccountSummary | should return account details like accountId, account balance e.t.c |
| getOpenOrders | Get all open order, not including filled orders |
| getAllPositions | Get all portfolios that are currently invested in |
| enterPosition | Start a new position/portfolio |
| exitPosition | Exit an existing position |
| searchSymbol | Search for a symbol |
| quoteSymbol | Get quote |
| getMarketData | Get historical data |
| getPriceUpdate | Get realtime price updates |
| getScreener | Get screener method |
## Broker events#### **onReady**
this method should be called when broker is ready to accept/process requests.```ts
onReady: (data: any) => Promise;
```#### onPortfolios
Called when portfolios change/requested, the application developer should save portfolios from this, because there is no guarantee that the broker saved, or worse-case e.g like when disconnected from broker e.t.c
```ts
onPortfolios: (portfolios: any[]) => Promise;
```#### onOrder
Called when an action has been made on a order, order status updated, filled, or returned when order lists are requested.```ts
// order for buy/sell trades
onOrder: (order: any) => Promise;
```#### onMarketData
Returns historical data from calling `getMarketData` method
```ts
onMarketData: (data: any) => Promise;
```#### onPriceUpdate
Streams real-time price updates from any symbols added for watch list
```ts
onPriceUpdate: (data: any) => Promise;
```## Changelog
**23-05-2020**
Version 0.0.8
- Add getScreener to broker
- Optional `startDate`## Current implementations
- [Interactive brokers](https://github.com/stoqey/aurum-broker-ibkr)
- [Mille paper trading broker](https://github.com/stoqey/aurum-broker-mille)STOQEY INC