HNHacker News
TopNewBestAskShowJobs

Cloud9Trader

72 karma · joined August 11, 2014

Jon Kafton — founder of 1Presence (https://1presence.com)
submissionscomments
Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Nope, purely naming coincidence... at the moment only aspiring to provide as excellent a development workspace as Cloud9IDE does.
Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Currently FXCM (the first broker we've integrated with - more to come) offer forex in the US and also CFDs on indices, treasury and metals elsewhere.
Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
A lean algorithm will comfortably execute every tick even in a busy market. Of course if it can't be processed before the next tick comes in, subsequent executions will run late, though we leave this up to the trader and hope to just provide the most performant execution environment we can.

We find no issues running scripts of reasonably high complexity. Of course if you have a particularly heavy algorithm it may be better suited to running at interval close.

With regard to legal position, you're absolutely right. While we're in beta you can connect to live broker accounts, though we are blocking order requests from actually being sent. We want to be water tight both technically and legally before we full launch with regulatory authorization, lifting this restriction and allowing real money to be risked.

As with brokers, we just want to support as many as we can. FXCM were a natural first choice for integration as they have excellent support for API solutions and have the most fully featured FIX implementation we've come across. Of course it's up to the trader to establish if any conflict of interest scenario exists between themselves and the broker.

Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Oanda offer FIX connectivity, so very doable - we've already built FIX adapters in NodeJS. Will get the ball rolling.
Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Ha! thanks buddy!
Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Thanks!

Currently the API doesn't support multiple instruments though an individual trading session already pulls in whatever currency pairs are required to convert from term currency to your account currency to calculate unrealized profit and to allow you to set quantity in as a risk percentage of account balance... basically not much work involved in supporting. Will get it prioritised.

Definitely would like to include Bitcoin and are looking into our options at the moment.

Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Please let me know if you're continuing to have issues. All seems fine my end.

You can stick the following in your browser console to log server latency stamps on incoming market data:

require(["registry"], function (registry) { var instrument = registry.get("instruments").get("EUR/USD"); instrument.on("tick", function (data) { console.log("Server latency (ms):", data.get("serverLatency")); }); });

Of course replace "EUR/USD" for whichever instrument you want to monitor. 10-20ms is typical for comms between our instances and the brokers (we get similar results for outgoing trade execution requests, factoring in the round trip).

Our stack is largely JavaScript. We've found NodeJS to be blisteringly fast and lending itself perfectly for this kind of application (low memory, high throughput, heavy processing).

We have a backesting framework for running against historical data. Do you have a requirement for pulling historical data into an algorithm during live trading? We haven't included this in out API, though it would be fairly trivial to implement. It's key though that algos run with as little in memory data as possible. We also include a framework for writing your own custom technical indicators. These are naturally set up to pull historical data so may be what you're after. These and the built in indicators can be used in your script by just calling e.g. sma(10)

Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
We currently support live connections to FXCM. The welcome page gives you the option of choosing a demo account or sticking in FXCM details.

We will be adding a wide selection of brokers to that list and will prioritize on basis of demand.

Please let us know if there are any particular brokers you'd like us to support.

Cloud9Trader··on Show HN: Simple algorithmic trading in JavaScript
Thanks. Can't see any issues our side and getting plenty of successful registrations. Which browser please?