Wednesday, June 24, 2009

Apama SIFMA 09 Announcements

Posted by Chris Martins

SIFMA is happening this week in NY and this typically sparks a flurry of announcements in Capital Markets, as this event can be seen as a benchmark for what is happening in the industry, similar to TradeTech Paris for Europe earlier in the Spring.  Apama has made a series of significant announcements that capture some of the scope of the Apama platform and what we believe is required to be successful in this market.  In different niches of the blogosphere you’ll find some proponents of fairly narrow definitions of what “CEP” is or how one measures CEP “leadership” or “maturity”.  I think the Apama announcements illustrate a different perspective, reflective of the breadth of the Apama platform and the possibilities available to such a platform in terms of building new event-driven solutions in Capital Markets.

Market Surveillance and Monitoring Accelerator

Apama has previously announced market surveillance customers, FSA and Turquoise, and with our new enhanced Solution Accelerator we are capturing our capabilities in a way that allows regulators, exchanges/MTFs, and trading firms to further jumpstart deployment of monitoring applications.  The idea that it would be efficacious to have real-time monitoring of trading is becoming better understood in the indusry.  If you read the release, you’ll note that the targets are not just regulators or exchanges, but firms themselves, who would benefit from detecting potentially damaging activities prior to that activity hurting firm reputations or profits.

Apama Solution Accelerators provide a set of core functions that focus on specific domain areas, but they still retain the flexibility to evolve and adjust as circumstances require.  That is key to keeping pace with very dynamic market conditions.  These Accelerators have proven a key driver to our recent success as they marry the power of the underlying platform with the real “end game” of providing customers with solutions that deliver value.

UniCredit Customer Win

As an example of the power of Solution Accelerators, Apama also announced that UniCredit is using the Apama FX Market Aggregator (another of our roster of Accelerators) to give their FX traders access to prices from a number of FX liquidity venues.  UniCredit is also using the Accelerator to publish FX prices to its eFX downstream channels.   Again, a key point here is that the use of an Accelerator in no ways constrains a client from using the Apama tools that are part of the underlying platform to build out other capabilities that complement the Accelerator.  For some the Accelerator is close to what is needed, but for others it is an attractive launching point.  For further discussion of this, you might want to check out a recent Webinar on “FX Aggregation and Beyond” that talks to this issue.

Lime Brokerage

We added to our broad range of connectivity adapters with  an important connection to Lime Trading System’s Citrius market data feed and FIX order placement services.  This give our customers access to Lime’s trade execution capabilities for equities, derivatives, ETFs, futures and options.  Apama customers can also look to Apama applications via Lime Trading System’s collocation facilities.  Lime is a really cool firm and we see this as a great opportunity for our common customers – both those now and to come.

Connectivity is the lifeblood of CEP and other event-driven applications.  Apama has a broad range of adapters, and we have an engineering team whose specific focus is on this aspect of the product platform.  Integration adapters aren’t “sexy” and they don’t get a lot of attention in marketing literature, but they are vital and deserve a bit of spotlight.

BondDesk

BondDesk provides 2,000 broker-dealers with access to 35,000 live and executable offerings from 120 premier fixed income dealers.  In an announcement this week, we announced that BondDesk ATS (alternative trading system) customers will be able to register their interest in the availability of fixed income securities that meet certain criteria and Apama will monitor the inbound data and provide real-time notification when a matching offering becomes available on the ATS.

So four announcements this week, and more upcoming.

So stay tuned. 

.

Sunday, June 21, 2009

High Frequency Trading driving the need to build quickly, run fast

Posted by Louis Lovas

<p>High Frequency Trading driving the need to build quickly, run fast</p>


In just about any race there is usually a starting point and a finish line, unless of course you are in an arms race.  For that sort of race there may have been some nebulous beginning in the distant past, but there is no finish line. The race just keeps sprinting along, each competitor angling for an edge, regularly recharging their ammunition supply with some new weaponry to get ahead however slight or temporary.

I recently read an interesting article describing High Frequency Trading as embroiled in an arms race. I certainly believe it's well entrenched in such a conflict, but frankly this combat has arguably had a beneficial net effect especially in that it's contributed to the wellspring of invention, inspiring the creative spirit in all the supporting attributes that make High Frequency Trading a reality. Behind any trader (and trading firm) is an entire armada including the vendors supplying the underlying hardware, networks, software platforms and trading applications.  They are all immersed in the war.  As new hardware, software and/or algo's are deployed it allows the trader to do battle and speed ahead even if it's just for a short while.  Competitive pressures, increasing market volatility, regulatory imperatives, risk mitigation and a host of other challenges are the land mines and roadside bombs on the long and winding road that stall and slow causing re-tooling and re-stocking the ammunition (i.e. algo strategies). There is no time to stop and catch your breath or stand on the roadside.

Sang Lee from the Aite Group reports that High Frequency Trading has had a significant impact on the overall market, providing greater liquidity, tighter spreads and overall improving the quality of the market.  At the macro level these are great advancements and mark a natural evolutionary step due to so many market changes in recent years (i.e. electronic trading venues, adoption of CEP platforms for algo trading, etc.) in Equities and beyond (i.e. FX and Futures & Options).  Down in the trenches, the battles rage on day by day as a multitude of traders and an untold number of algo strategies provide the market liquidity by moving in and out of positions in milliseconds (or even less time). The trading firms engaged in this never ending conflict drive a set of imperatives on software infrastructures for building and deploying algos in the High Frequency battlefield:

Rapid development and customization of algo's

Algo strategies in the High Frequency world have a limited life time. They soon become obsolete (i.e. whatever alpha they took advantage of has disappeared due to the competition, economic changes, or other situations).  To react and respond to this inevitability, having the right sort of tooling to recalibrate strategies is a necessity. This includes graphical modeling tools for Quants to prototype ideas quickly, backtest with historic data, test in a scalable manner to instill confidence prior to production rollout and lastly dynamic parameterization of strategies from graphical dashboards. Not forgetting the code-slinging types, an Integrated Development Environment (IDE) for support of event processing language (EPL) development for more low-level tasks.


Abstracting over increasingly complex strategy logic

Supporting Quants with a rich and robust set of functionality from the basics (connectivity to markets) to the advanced (Linear Algebra, Black Scholes, and other statistical functions).


Support for the 'ilities (availability, security, reliability, ...) to manage the mundane

Deploy with confidence. An important role of software infrastructure is to instill confidence that deployed strategies are always available, securely accessed and run without failure.


Support for scalable performance, providing high throughput and low latency

This is probably the most paramount requirement in the arms race of High Frequency Trading.  The race to the microsecond is pushing both hardware and software vendors alike. Parallelism in CEP engines like Apama's Correlator can leverage multi-core processor architectures like the Intel Nehalem


Along with my colleague Dan Hubscher,  I have recorded a 30 minute webinar that describes how the Apama platform along with the Apama Algorithmic Trading Accelerator meet these imperatives.

The pre-recorded webinar, is available here:  Apama Algorithmic Trading Accelerator, Build Quickly, Run Fast.

Once again thanks for reading (plus watching and listening to the webinar in this case), you can also follow me at twitter, here.
Louie



Thursday, June 04, 2009

Apama Wins Profit and Loss FX Award for Second Year in a Row

Posted by Dan Hubscher

Apama has received Profit & Loss Magazine’s 2009 Digital Markets Award as Best Algorithmic Trading Platform.  This is the second consecutive year that Apama has won this award from one of the FX industry’s leading publications.  The Digital Markets Awards recognize the efforts of the FX services industry in providing the tools and functionality that make trading FX more efficient.  The presentations of the awards to the winners in each category were made at the Profit & Loss Forex Network New York 2009 Event Awards Dinner.

The award winners in each category were determined by your votes.  As with any awards like these, your voices are heard loud and clear.  So thank you, to all of you that voted.  And remember, you can make your voices heard again, by voting in the Waters Rankings for 2009.

-Dan

Tuesday, June 02, 2009

Waters Rankings - 2009

Posted by Chris Martins

Waters logo

Waters Magazine annually surveys its readers (or those readers who work for investment firms, hedge funds, brokerages and exchanges) to choose the best financial service solutions and technology providers.   There are 25 categories in 6 categories, so if you are a Waters subscriber and member of a financial firm, be sure to vote.  Voting ends June 5th.   And, of course, we'd welcome your consideration for best complex event processing platform, which is one of the categories.

Wednesday, May 27, 2009

Location Tracking, fit-for-purpose design patterns in CEP

Posted by Louis Lovas


As the CEP community is well aware the technology often gets compared and contrasted to traditional data processing practices. It's a topic that ebbs and flows like the ocean's tides. It's a conversation that occurs regularly in various forums, with clients, analysts and of course within this community at large. Far be it from me to stir things up again but I believe there is some credible evidence the critics draw upon. This touched a nerve not too long ago when Curt Monash hammered the CEP community.  The response was swift, but frankly unconvincing.

In many respects, I believe this argument is rooted in how some CEP vendor's have architected their product. Many vendors have a focus of event stream processing as a variant of database processing. They see streaming data as just a database in motion and therefore have designed and built their products myopically around that paradigm. By doing so those vendors (possibly inadvertently) have plotted a course where the fit-for-purpose of their products is focused on use-cases that are data-intake dominate. They can consume the fire-hose of data, filter, aggregate and enrich it temporally but little else. What is missing in this equation is the definition of the semantics of the application. Whether that is a custom application such as algo trading or monitoring telco subscribers or some business intelligence (BI) dashboard. To those vendors, that is viewed as adjunct or external (i.e. the client) and solved with the typical complement of technologies; java, C++, .NET and considered outside of the direct domain of CEP. 

While this paradigm clearly does work, it incites the (CEP) critics; "where's the distinguishing characteristics? why can't I just do this with traditional data processing technologies?".

A challenging question when so many CEP products are stuck with that look and feel of a database, even a few of the academic projects I've reviewed seem to be myopically centered on this same paradigm. It reminds of that television commercial with the tag line:  "Stay Within the Lines. The Lines Are Our Friends." (I think it was for an SUV). Quite frankly such thinking does not represent the real world. Time to think outside the box (or table as the case may be).

Yes, the real world is full of in motion entities, most often interacting with each other in some way. Cars and trucks careening down the freeway zigzag from one lane to another at high speed with the objective of reaching a destination in the shortest possible time without a collision.  Would be an interesting CEP application to track and monitor the location and movement of such things.  

In fact, location tracking is beginning to show signs of being a common use-case with the Apama platform. Not long ago we announced a new customer, Royal Dirkzwager that uses Apama to track ship movements in sea lanes. My colleagues Matt Rothera and David Olson recently published a webinar on maritime logistics. This webinar follows the same basic premise as the Royal Dirkzwager use-case, that of  tracking the location of ships at sea.  In fact, we aren't the only one seeing activity in location tracking, here's a similar use-case for CEP in location-based defense intelligence.  The basic idea is the ability to track the movement of some entity, typically in relation to other entities, are they getting closer together (i.e. collision detection) or moving further apart (i.e. collision avoidance), are they moving at all? at what speed? will they reach a destination at an appropriate time? A CEP system needs, at it's core the ability to have both temporal and geospatial concepts to easily support this paradigm.  Here's a handful of examples where this applies:

  • Tracking ship movements at sea (as I mentioned with Royal Dirkzwager, and the Apama webinar on maritime logistics)
  • Airplanes moving into and out of an airspace
  • Baggage movement in an airport
  • Delivery trucks en route to destinations
  • Service-enabled mobile phones delivering content as people move through shopping and urban areas
  • Men, machines and material moving on the battlefield


These are just a handful of location tracking use-cases for which the Apama platform is well suited.

Another colleague, Mark Scannell has written a location tracking tutorial that is part of the Apama Studio product. This is a great example that exemplifies the power of the Apama EPL for building location tracking CEP applications. The tutorial provides a narrative description explaining it's purpose and the implementation. Below I've included a small snippet of that example to highlight the elegant simplicity, yet powerful  efficiency of the Apama EPL. If you're in need of a brief introduction to the Apama EPL, you can find that here, the beginning of a three part series on the language.


Location Tracking in the Apama EPL
.
// Track me - the tracked entity
action trackMe() {
       
  // Call self again when new location is detected
  on LocationUpdate( id = me.id ):me {
     trackMe();
  }

  // Detect a neighbor in our local area -
  // do this by excluding events that are for our id,
  // which will also cause us to reset this listener
  // through calling trackMe() again.
 
  LocationUpdate n;
  on all LocationUpdate( x in [ me.x - 1.0 : me.x + 1.0 ],
                         y in [ me.y - 1.0 : me.y + 1.0 ] ):n and
     not LocationUpdate( id = me.id ) {

     // Increment number of neighbors that have been spotted
     // and update the alarm
     spotted := spotted + 1;
     updateAlarm();           

     // Decrement count of spotted neighbors after one second
     on wait ( 1.0 ) {
       spotted := spotted - 1;
       updateAlarm();
     }
  }
}

As a brief introduction, the Location Tracker tutorial is designed to track the movement of Entities (i.e. cars, ships, trucks, planes, or any of those things I listed above) in relation to other Entities within a coordinate system or grid. An entity is considered a neighbor if it is within 2 grid units (-1,+1) of any other entity. The grid and the units within the grid are largely irrelevantly for the syntactic definition of entity tracking. Their semantic meaning on the other hand, is within the context of a specific use-case (i.e. a shipping harbor, air space, battlefield, etc.).

From the tutorial I pulled a single action, trackMe, it contains the heart and soul of the tracking logic.  As entities move they produce LocationUpdate events. The event contains the entities unique id and the X,Y coordinate of the new location. This trackMe action is designed to track their movement by monitoring LocationUpdate events. For each unique entity there is a spawned monitor instance (a running micro-thread so to speak) of this trackMe action. 

The idea is that when an entity moves its new location is instantly compared against all other tracked entities (except of course itself, witness the recursive call to trackMe when id's match (id = me.id)) to determine if it has become a neighbor (remember the 2 grid units).  This is elegantly implemented with the listener "on all LocationUpdate( x in [me.x - 1.0 : me.x + 1.0], ...". In a narrative sense, this can be read as "If the X,Y coordinate of this entities new location is within 2 grid units (-1.0, + 1.0)  of me then identify it as a neighbor and update an alarm condition"  (via  a call to updateAlarm()).

This small bit of code (about 20 lines) exhibits an immensely powerful geospatial concept, the ability to track the movement of 100's, 1000's even 10,000's of entities against each other as they move, and of course this is accomplished with millisecond latency.


 


This small example demonstrates a few of characteristics of the Apama EPL, specifically that it is an integrated well-typed procedural language with event expressions. It allows you to code complex event conditions elegantly expressed in the middle of your procedural program. This allows you to focus on the logic of your application instead of just selecting the right event condition.

However to get a clear picture, the language of CEP is just one aspect of an overall platform. The Apama strategy has also been focused on a whole product principle, one where the whole is greater than the sum of the parts. As a mandate to our vision we have outlined four key defining characteristics: 1) A scalable, high performing Event Engine. 2) Tools for rapid creation of event processing applications supporting business and IT users. 3) Visualization technologies for rich interactive dashboards and 4) An Integration fabric for the rapid construction of high performance, robust adapters to bridge into the external world.

The possibility exists that CEP will struggle to break out as a truly unique technology platform when so many just see a variant of database technology.  It's time to break out of the box, drive over the lines and succinctly answer the critics questions. CEP is not about tables, rows and columns but events. Events that are often artifacts of the real world. A world that is in constant motion, be it ships, planes, car, trucks, phones, or you and me. Information flows from it all in many forms but that does mean we have squeeze it into the database paradigm.

Once again thanks for reading, 
Louie


Next