HOME FORUMS BROKERS SOFTWARE BOOKS CONTACT US
Elite Trader Your Account  •  Become a Member  •  Help  •  Search    
    Forums ›› Technically Speaking ›› Programming ›› Anyone coding in Assembler?  


Post A Reply
    Page 1 of 17:   1  2  3  4  5  6  7  8  9  10     Last Page »
braincell
 

Registered: Jul 2011
Posts: 538

 

02-28-12 04:09 PM

I'm just curious if there are any coders here that worked in ASM (MASM, NASM whatever)?

It's obvious that the high end applications will need ASM to have a technical edge. This includes:

Online: market making, arbitrage
Offline: data mining

I've also heard of many speed critical programs being developed by well funded teams not using ASM and was wondering why? It can and usually does outperform the best compilers by at least 5 times in various tasks in terms of execution speed. There seems to be a lot of room for improvement there, and I was wondering if I am in fact misguided and ASM is really much more widespread in various trading applications?

    Edit/Delete Quote Complain
slumdog
 

Registered: Jan 2012
Posts: 137

 

02-28-12 04:37 PM

I doubt the bottle neck is the code. The speed gained up from coding in assembly over C or C++ is probably inconsequential compared to the network communication overhead and disk writing. So spending that extra time and money on hand optimising the code doesn't provide enough of a pay off.

Having said that it is easy enough to embed assembler into a C or C++ function if you really need to, its __asm in visual c++ iirc.

    Edit/Delete Quote Complain
byteme
 

Registered: Dec 2008
Posts: 557

 

02-28-12 05:03 PM


Quote from braincell:

It's obvious that the high end applications will need ASM to have a technical edge. This includes:

Online: market making, arbitrage
Offline: data mining



Online: sure, you can optimize inner loops with ASM just like 3D gaming engines but with trading systems greater gains can be had elsewhere e.g. tackling network latency.

You can also make use of hardware e.g. FPGA

Offline: not an issue.

    Edit/Delete Quote Complain
NetTecture
 

Registered: Mar 2009
Posts: 1010

 

02-28-12 05:21 PM


Quote from byteme:

Online: sure, you can optimize inner loops with ASM just like 3D gaming engines but with trading systems greater gains can be had elsewhere e.g. tackling network latency.



Wrong millenium. Gaming engines inner loops today run on programmable graphcis cards.

Also optimizing looks is realyl hard in assembler since you have superscalar architecture. Intel has a tool out that can push your assembler performance by reordering the commands so they execute in parallel. This stuff is getting terribly complex, with multiple commands executing at the same time IF the cpu can do it (no dependencies, using different registers etc.).

Makes little sense to go assembler except for VERY rare occasions. C is nearly as good and a magnitude or two faster in development.

    Edit/Delete Quote Complain
braincell
 

Registered: Jul 2011
Posts: 538

 

02-28-12 05:37 PM


Quote from slumdog:

I doubt the bottle neck is the code. The speed gained up from coding in assembly over C or C++ is probably inconsequential compared to the network communication overhead and disk writing. So spending that extra time and money on hand optimising the code doesn't provide enough of a pay off.

Having said that it is easy enough to embed assembler into a C or C++ function if you really need to, its __asm in visual c++ iirc.



Consider this however. Everyone is colocated, has the top of the line networking, and the fastest SSD disks money can buy. What's left? The code obviously. My assumption is that technical hardware issues are almost always fully resolved and pushed to their limits by all of the players. I'm saying is that i suspect there can be much more gained by optimizing code, and perhaps it's the only "edge" left to have for the HFTs and some arb strats.

    Edit/Delete Quote Complain
braincell
 

Registered: Jul 2011
Posts: 538

 

02-28-12 05:39 PM


Quote from byteme:


Offline: not an issue.



Oops, you sure you know what you're talking about? Have you ever tried developing search algos and data mining? There are multiple papers written about those, and just doing research still requires a hefty data centre. Many researchers will rent out some time on the cloud or buy their own data centers. Some of these deep data mining techniques may require days, weeks and even months of running on todays harware to get significant results.

Offline data mining is one of the main reasons i became good at assembler and i can tell you my applications are beating those used by some hedge funds at least 2x in terms of speed - meaning you need 2x as little hardware for the same results, and this is a time and cost saving. I can probably improve that even further, but never mind that.

    Edit/Delete Quote Complain
    Page 1 of 17:   1  2  3  4  5  6  7  8  9  10     Last Page »
Post A Reply


Receive an email whenever a new post is added to this thread by subscribing to it.
 
Rate This Thread:

Forum Jump:
 

 

   Conduct Rules  -  Privacy Policy  -  Day Trader -  Day Trader Forum -  Best Trading Software -  Sitemap Copyright © 2013, Elite Trader. All rights reserved.    
 
WHILE YOU'RE HERE, TAKE A MINUTE TO VISIT SOME OF OUR SPONSORS:
Advantage Futures
Futures Brokerage & Clearing
AMP Global Clearing
Futures and FX Trading
Bright Trading
Professional Equities Trading
CTS
Futures Trading Software
DaytradingBias.com
Professional Trading Analytics
ECHOtrade
Professional Trading Firm
eSignal
Trading Software Provider
FXCM
Forex Trading Services
Global Futures
Futures, Options & FX Trading
Interactive Brokers
Pro Gateway to World Markets
JC Trading Group
Direct Access Trading
MB Trading
Direct Access Trading
MultiCharts
Trading Software Provider
NinjaTrader
Trading Software Provider
OANDA
Currency Trading
optionshouse
Option Trading & Education
Rithmic
Futures Trade Execution Platform
SpeedTrader
Direct Access Trading
SpreadProfessor
Spread Trading Instruction
thinkorswim by TD Ameritrade
Direct Access TradingAdvertisement
TradersStudio
System Building & Backtesting
Trading Technologies
Trading Software Provider
Trend Following
Trading Systems Provider