Our GENESIS Technology Framework has a complete web and mobile libraries to develop high performance real-time solutions that our clients can use wherever they are and whatever device they are using. We use a variety of open source technologies which allows us to have the best in class JavaScript libraries for our solutions.
Mobile Example
These are example screenshots of the mobile app which is part of our Automated Quoting System (AQS) platform, within the app our buy-side clients can submit quote requests, receive quotes, view all of their trades and positions in real-time.Example Genesis-JS Code
See example JavaScript code snippets using our GenesisJS libraries for submitting a business event, subscribing to real-time queries and a single response query. We also show a meta-data request example which can be used to define what field types and fields are mandatory for either business events or subscriptions.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
var genesis = new Genesis.Core(); var loginOptions = { url: "www.genesis.global", port: 9064, credentials: { userName: "JohnDoe", password: "1234567" } }; genesis .login(loginOptions) .then(function () { return genesis .commit( "eventTradeEntry", { validate: false, ignoreWarnings: true, set: { symbol: "VOD.L", currency: "GBP", clientCode: "GOLDMAN", side: "BUY", volume: "100", price: "10.23" } } ) .then(function (data) { console.log(data); }) .fail(function (err) { return console.log("Error: " + err.message); }); }); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
var genesis = new Genesis.Core(); var loginOptions = { url: "www.genesis.global", port: 9064, credentials: { userName: "JohnDoe", password: "1234567" } }; genesis .login(loginOptions) .then(function () { console.log("Login successful"); var queryOptions = { rowLimit: 50, filter: "SYMBOL == 'VOD.L'", columns: ["SIDE", "VOLUME", "RIC_CODE", "PRICE", "CONSIDERATION"] }; var channelTrades = genesis .subscribe("tradesStream", queryOptions) .subscribeOnNext(function (data) { for (index = 0; index < data.value.length; index++) { $("#results").append(data.value[index].SIDE + " - " + data.value[index].VOLUME + " - " + data.value[index].RIC_CODE + " - " + data.value[index].PRICE + " - " + data.value[index].CONSIDERATION); } console.log(data); }); genesis .logout() .then(function () { console.log("Logout successful"); }) .fail(function (err) { console.log("Logout failed: " + err.message); }); }) .fail(function (err) { return console.log("Login failed: " + err.message); }); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
var genesis = new Genesis.Core(); var loginOptions = { url: "www.genesis.global", port: 9064, credentials: { userName: "JohnDoe", password: "1234567" } }; var queryOptions = { rowLimit: 50, filter: { alternateType: "RIC", instrumentCode: "V*" } }; genesis .login(loginOptions) .then(function () { genesis .query("subCodeTypes ", queryOptions) .then(function (data) { // In this example simple output to the browser's console logging. console.log(data); }) .fail(function (err) { return console.log("Error: " + err.message); }); }); |