Offizielle API der MoonStonks Börse, um jegliche Art von Order zu stellen.
npm install moonstonks-boersenapi
oder
yarn add moonstonks-boersenapi
import { BörsenAPI } from 'moonstonks-boersenapi';
public api = new BörsenAPI('moonstonks token')
Es gibt viele verschiedene Orders, diese können je nach bedarf dynamisch oder statisch gestellt werden. Hierzu gibt es mehrere Methoden, welche über unsere BörsenAPI erreichbar sind.
import { OrderManager } from "moonstonks-boersenapi";
public orderManager = new OrderManager(api, 'onPlace' 'onMatch', 'onComplete', 'onDelete')
async function placeBuyMarketOrder(shareId: string, amount: number): Promise<Job>;
orderManager
.placeBuyMarketOrder('shareId', 20)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeBuyLimitOrder(shareId: string, amount: number, limit: number): Promise<Job>;
orderManager
.placeBuyLimitOrder('shareId', 20, 200)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeBuyStopMarketOrder(shareId: string, amount: number, stop: number): Promise<Job>;
orderManager
.placeBuyStopMarketOrder('shareId', 20, 200, 300)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeBuyStopLimitOrder(shareId: string, amount: number, limit: number, stop: number): Promise<Job>;
orderManager
.placeBuyStopLimitOrder('shareId', 20, 200, 350)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeSellMarketOrder(shareId: string, amount: number): Promise<Job>;
orderManager
.placeSellMarketOrder('shareId', 20)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeSellLimitOrder(shareId: string, amount: number, limit: number): Promise<Job>;
orderManager
.placeSellLimitOrder('shareId', 20, 200)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeSellStopMarketOrder(shareId: string, amount: number, stop: number): Promise<Job>;
orderManager
.placeSellStopMarketOrder('shareId', 20, 200, 300)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function placeSellStopLimitOrder(shareId: string, amount: number, limit: number, stop: number): Promise<Job>;
orderManager
.placeSellStopLimitOrder('shareId', 20, 200, 350)
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function getOrder(orderId: string): Promise<Order>;
orderManager
.getOrder('orderId')
.then((order) => console.log('Order', order))
.catch((error) => console.error(error));
async function deleteOrder(orderId: string): Promise<Job>;
orderManager
.deleteOrder('orderId')
.then((job) => console.log('Job', job))
.catch((error) => console.error(error));
async function deleteJob(jobId: string): Promise<boolean>;
const deleted = await orderManager.deleteJob('jobId');
Shares sind items, welche in der MoonStonks Börse gehandelt werden können. Hierzu stellt die Börse verschiedene Methoden zur Verfügung, um Informationen wie den aktuellen Kurs, die Preisentwicklung und andere abzurufen.
import { ShareManager } from 'moonstonks-boersenapi';
static async function getShares(): Promise<Share[]>;
ShareManager.getShares();
static async function getPrice(shareId: string): Promise<number>;
ShareManager.getPrice('shareId');
static async function getPrices(shareId: string, options?: PriceOptions): Promise<Price[]>;
ShareManager.getPrices('shareId');
ShareManager.getPrices('shareId', { limit: 10 });
ShareManager.getPrices('shareId', { from: 1616751375000 });
ShareManager.getPrices('shareId', { until: 1616841375000 });
ShareManager.getPrices('shareId', { from: 1616751375000, until: 1616841375000 });
ShareManager.getPrices('shareId', { from: 1616751375000, until: 1616841375000, limit: 10 });
import { MarketManager } from 'moonstonks-api';
static async function isOpen(): Promise<boolean>;
MarketManager.isOpen();
static async function isClosed(): Promise<boolean>;
MarketManager.isClosed();
static async function getStatus(): Promise<string>;
MarketManager.getStatus();
Attribut | Type | Beschreibung |
---|---|---|
id | string | eindeutige Order ID |
shareId | string | ID des gewählten Shares |
timestamp | number | Zeitstempel des Stellens der Order |
type | "buy" | "sell" | Ordertyp: Kauf- oder Verkaufsorder |
amount | number | Menge der zu kaufenden/verkaufenden Shares |
limit? | number | Limit zu dem man diese Order ausführen möchte; Wenn leer = Marketorder |
stop? | number | Grenze der Stop-Market Order |
Attribut | Type | Beschreibung |
---|---|---|
id | string | eindeutige Job ID |
broker | Broker | Job Owner |
placeOrder? | PlaceOrderDto | Bündel der Daten für das Platzieren einer Order |
deleteOrder? | DeleteOrderDto | Bündel der Daten für das Löschen einer Order |
triggerId? | string | ID der Order, deren Stop erreicht wurde |
Attribut | Type | Beschreibung |
---|---|---|
id | string | eindeutige Share ID |
name | string | Name des Shares |
color | string | Farbe zur Identifikation des Shares |
thumbnail | string | Bild/Grafik zur Identifikation des Shares |
price | number | aktueller Preis des Shares |
Attribut | Type | Beschreibung |
---|---|---|
timestamp | number | Zeitstempel des aktuellen Preises |
price | number | Höhe des aktuellen Preises |
Attribut | Type | Beschreibung |
---|---|---|
from? | number | Zeitstempel, ab dem die Preise ausgegeben werden |
until? | number | Zeitstempel, bis zu dem die Preise ausgegeben werden |
limit? | number | Begrenzt die Anzahl der Suchergebnisse |
Attribut | Type | Beschreibung |
---|---|---|
type | 'private' | 'business' | 'simulation' | 'stockmarket' | Art des Brokers |
displayName | string | Anzeigename des Brokers |
Attribut | Type | Beschreibung |
---|---|---|
shareId | string | Id des gewählten Shares |
amount | number | Menge der zu handelnden Shares dieser Order |
onPlace | string | aufgerufener Endpunkt vom Broker, wenn Order platziert wird |
onMatch | string | aufgerufener Endpunkt vom Broker, wenn Order gematcht wird |
onComplete | string | aufgerufener Endpunkt vom Brokert, wenn Order ausgeführt |
onDelete | string | aufgerufener Endpunkt vom Broker, wenn Order gelöscht wird |
type | 'buy' | 'sell' | Ordertyp: Kauf- oder Verkaufsorder |
limit? | number | Limit zu dem man diese Order ausführen möchte, wenn leer = Marketorder |
stop? | number | Grenze der Order |
Attribut | Type | Beschreibung |
---|---|---|
jobId | string | eindeutige Job ID |
Attribut | Type | Beschreibung |
---|---|---|
orderId | string | eindeutige Order ID |
Attribut | Type | Beschreibung |
---|---|---|
orderId | string | eindeutige Order ID |
timestamp | number | Zeitstempel, wann die Order erfüllt wurde |
Attribut | Type | Beschreibung |
---|---|---|
orderId | string | eindeutige Order ID |
timestamp | number | Zeitstempel, wann die Order gelöscht wurde |
remaining | number | Menge der übrig gebliebenen Shares |
Attribut | Type | Beschreibung |
---|---|---|
orderId | string | eindeutige Order ID |
timestamp | number | Zeitstempel, wann die Order gematched wurde |
amount | number | Menge der Shares, die gematched wurden |
remaining | number | Menge der ürbig gebliebenen Shares nach dem Match |
price | number | Preis, zu dem die Order gematched wurde |
// TBC..