15

An interesting starting point is The Cost of Latency by Moallemi and Saglam. After setting up a simple order execution problem --- in which a trader must chose between a market order and a limit order and guarantee execution over a fixed interval $[0,T]$, they proceed to derive a (complex) close form solution for the optimal strategy and evaluate the impact ...


11

We use Node for reporting but not as part of our main signal generating trading system. To be honest the answer will almost certainly be yes for every common programming technology as it just takes one person to use it somewhere to make the answer yes. Just look at OCaml, before Jane street, most techno logiest on the street had never heard of it and now ...


11

A public order book gives traders information not only on the current price of a security, but also the volume and structure of the entire supply and demand schedule. Such information can be used for arbitrage and market manipulation strategies in various ways: Spoofing: Inserting a large limit order as an apparent buy or sell signal which is canceled any ...


10

I am not sure Dark Pools (DP) have been created to avoid "market manipulation". They have been created by firms because they found an advantage to create them (see Market Microstructure in Practice, L and Laruelle Eds.). The main reasons have been: spare market fees, for DP created by brokers (like UBS MTF); spare market impact, for block pools (like ITG/...


8

So those are cumulative pnl figures and you are interested in the percent changes in pnl from one data point to the next? Don't use log returns, simply generate the percent changes through r(t)/r(t-1)-1. 4.3922/5.2735-1 = -16.71% (in your example time series I made the assumption that the time series is in ascending order. Given your description of the ...


8

Ha, interesting, so many responses with "negative" expectations. There are plenty of people that have successfully gone down this road and are producing pretty nice returns, so obviously it is possible. A trader with a smaller capital has better chances of producing good ROC with very reasonable risk parameters, simply because he's would not be constrained ...


7

As a starting point to my answer, I would say that reading a book is not sufficient to start doing automated trading on your own as chrisaycock suggests in his comment. I would answer your questions in 3 different ways. First, building your "AI bot" which I would rather call a systematic algorithm not only requires programming skills, it also means having ...


7

The top chart is called a 'candle stick chart' or 'OHLC candlestick' or 'OHLC bar chart' http://multicharts.com/trading-charts When the price goes down during a time interval (from O to C) the box is filled in orange, when the price goes up it is green bordered with black inside. The exact colors are a matter of taste, as long as they are clearly different ...


6

Cloud9Trader uses Node.js on the back end and JavaScript across its technology stack, including for writing the trading algorithms themselves. https://www.cloud9trader.com


5

I can share my own experience working with the Deltix product suite. As a research and development platform it's very feature rich with support for every back-testing mode there is (BBO, Trade, Midprice, Bar, Level 2 Order Book) and advanced optimization modes (walk-forward, genetic, mean-variance, portfolio optimization, etc). I have built components and ...


5

I think the best choice for technical analysis with node is node-talib, a wrapper around TA-Lib. We're using it for some projects and it works ok so far. Here's a list of the indicators you get out of the box: AD Chaikin A/D Line ADOSC Chaikin A/D Oscillator ADX Average Directional Movement Index ADXR ...


4

There are: Bloomberg: TOMS, SSEOMS, AIM, EMSX TT Trading Systems (X-Trader, mostly for futures, spreads,...) Orc Group: Orc (often used for listed options) And uncountable others, really depends on which product you look to trade. But please note that you asked specifically about automated trading and to be honest, most shops code up their own order ...


4

Your question is generic about matching engines, you should googlize about it or/and read a good book on market microstructure like Market Microstructure in Practice. In short to answer to your question: the seller or the buyer came first in the market inserting a limit order, providing liquidity to other participants. Then came the other side with a ...


4

Go with the multiple arrays. This would give you a column-oriented store, which is far more cache-efficient when handling time-series data. Specifically, you are describing an "in-memory" database table that can be queried. You'll also want to think about how to do your look-ups. Will you have a hash table that maps symbols to OHLC tables? Will you ...


4

For me, I would calculate daily returns for such a series by backing out the daily PnL and dividing by some volatility number. lets define your cumsum as "c_pnl": daily_pnl = c_pnl - [0; c_pnl(1:length(c_pnl-1)] max_draw = max(cummax(c_pnl) - c_pnl) pct_returns = daily_pnl / max_draw # in terms of drawdown Don't you have capital already in the ...


3

I am using NodeJS for a similar project. There's not a ton of packages on NPM for finance and stocks, so I wrote my own, that might help you get started: Fetching historical stock data, including intraday: https://www.npmjs.org/package/node-activetick Charting, analysing, forecasting the data: https://www.npmjs.org/package/timeseries-analysis You can use ...


3

We use node.js at alta5. The event-driven, non-blocking I/O model performs well in data-intensive real-time applications like a trading platform. http://alta5.com/


3

Remember that all back testing is full of lies assumptions. Latency (both line latency and latency internal to the exchanges), adverse selection, market impact (yes, even you have market impact), etc, are all based on assumptions. These assumptions are educated guesses at best, but more often terrible models are used (you always get filled at at mid!) and ...


2

You might want to take a look at the Waters Technology buy side technology awards, especially for execution management systems (EMS). Most hedge funds want to use multiple counterparties so they would want a broker-neutral trading system. As far as I'm aware, the most popular platforms are Portware and Flextrade.


2

Don't try to capture LIVE tick data using a WebApp. I'm not saying it can't be done, I'm just saying you would get zero benefits and you would have to work way harder to make it functional. Web servers are designed with a premise, serve the user the requested data as fast as possible and free that resource up. You would have to fight the server logic (as ...


2

In trading you need to make a lot of simple computation of a very large flow of data. FPGA are perfect that for. It is typically FPGA that will host marketfeed handler (see NOVASPARKS website, or ACCELLIZE) ; analytics computations ; risk computation (see ULLINK solution for instance). For more, this generic article is not that bad: Introducing FPGA-Based ...


2

Firstly, I suggest you to use more recognized source to study and compute quantitative finance model or indicators; in such case, for instance, you could take as example the following paper as reference. Precisely there, the authors describe some common errors that one can do in computing the Sortino ratio; although surely you did not do any of them, ...


2

Edit (2016-06-21): Now with live data/trading integration with Interactive Brokers. It has taken a while but it has finally arrived. backtrader (https://github.com/mementum/backtrader) can do 1 and 3 and is in the process of getting 2 ironed out. A live data feed from IB will make it into the next release (due in the next few days) and it will then be down ...


2

You are generally correct with your definition of open interest. It is the total number of "open" contracts for example contracts that have not been closed by a liquidating trade, exercised, or assigned. For example, if one party buys a call and another sells the call option the open interest on that option is now 1. Open interest can be important for a ...


2

In database design there is a process known as ACID: "In computer science, ACID (Atomicity, Consistency, Isolation, Durability) is a set of properties that guarantee that database transactions are processed reliably. In the context of databases, a single logical operation on the data is called a transaction." These tenets ensure that databases have the ...


2

People on the buy and sell side who do not sit in Japan usually use SGX Nikkei 225 Futures as it is denominated in JPY (sorry, initially said it was USD which was wrong) it also trades when JP Market is closed.


1

Your source is not particularly clear about why what they're doing is a Z-score. To give some background, what they're doing is calculating $$\frac{R-\mu_{R}}{\sigma_{R}}$$ where R is the number of runs and the mean and standard deviation are of the number of runs. It's really more of a test statistic than a Z-score per se. The denominator in their formula ...


1

I don't know if there is a standard way of solving the problem, but I solve it thus: Strategy A bought for $C_a$ dollars and sold for $S_a$ dollars for a result of $R_a = S_a - C_a$ over $T_a$ days. Strategy B bought for $C_b$ dollars and sold for $S_b$ dollars for a result of $R_b = S_b - C_b$ over $T_b$ days. Where $C_a$ and $C_b$ is the total sum of ...


1

FPGA's are used to run the latency sensitive HFT strategies. They can also be used solely for parsing whatever protocol is in use (FIX, ITCH, etc..) and routing the decoded objects to a CPU for number crunching. They can of course be used for anything else but these two uses are what is most common now.


1

I think the problem is not that you optimize a wrong criterion, but the trading strategy itself. Compare this to testing a hypothesis: if you reject at p-value of 1% then the proportion of true discoveries among all discoveries is, say, 70% (high "expectancy"). If you reject at 10% then the true discovery proportion is 40% (lower "expectancy"), but you make ...


Only top voted, non community-wiki answers of a minimum length are eligible