Software for Writing of Trading Applications ?

Selbats

Junior member
11 0
I took the opportunity to talk to a couple of programmers at work. Both said that VB was far easier to learn than Java. One commented that it was easier to debug too, but I guess a lot of that depends on what your used to, and I have no doubt others would disagree.
 

KIMMRUNNER

Member
58 2
It may be old hat to say it:
but I have found sierra chart as a useful engine to test trading schemes against intraday data.
 

gbr128

Junior member
37 0
VB is indeed easy to pick up and create a simple program with a GUI etc. and I believe ADO or similar makes it a doddle to talk to a database. And there's a debugger which does a fair job.

Java or C# also have these benefits and are a bit harder to learn, but are much more suited to more complex systems. Plus with the MS IDE for C# or Eclipse for Java the debugging is as good as VB.

Now, debugging C++ I wouldn't recommend to a beginner.

Personally I know of a risk system implemented using Excel & VB for a fair-sized operation, and it's expected that 10% of jobs fail every day. I wouldn't want my savings to depend on those odds...
 

Henry

Active member
177 2
I know of a risk system implemented using Excel & VB for a fair-sized operation, and it's expected that 10% of jobs fail every day

No offence, but that sounds like sloppy coding. The last "serious" app I did in VB was a mission critical system in a telco; that handled many millions of transactions daily and was expected to fail, er, never. VB might not be the fastest tool in the box, but in todays world of "write it today and throw it away tomorrow" it's certainly a very useful one for getting the job done quickly.

However, if I was starting from scratch I would go with Java for all the reasons already mentioned.

H/
 

gbr128

Junior member
37 0
I think it's the Excel part that tends to crash more than anything. I expect that VB done well would be as robust as anything else, no offence meant! Anyway, I'm sure I shouldn't be talking about it in public!
 

ewilcox

Active member
134 2
all sound advice. i would agree with mactheknife that in the long run decoupling the business and front ends saves oddles of time further down the line :)

i'm no java expert but i'd avoid it like the plague. the few apps i've seen using it are slow and unresponsive.

if you are building a serious app then I would say C++ is the way to go. agreed steep learning curve but once you know your way around the compiler you can do some really great stuff which is difficult in VB etc and basically you can't beat it for performance if coded properly.

for quicker work however I would definitely look at C#. Its like programming with lego. using the vc.net environment is initally like being swamped with menus but once you've worked your way around its as close to point and click programming as you are going to get. couldn't really comment on the performance of c# tho as i've never written any serious apps in it.

all in my opinion only!

e.
 

DaveJB

Experienced member
1,159 42
Yup,
if I was prepared to invest fairly heavily in learning the programming language and environment before getting anywhere then I'd go C#, VB is the choice for developing the program itself until you have a pretty decent program doing what you want. I'd argue that the hard bit is developing the program to do what you want it to do, learn an easy language and develop you program, when it's doing what you want you can (if you want) learn a harder 'nicer' language and convert - it is far easier, having learned one language, to pick up another and convert your baby. It is all too easy to have an idea, go for the steep learning curve language, and end up an expert in Python or some such with not so much as a simple MA coded!
Translating from VB to C# would be a bit of a pain of course, but when the VB version was running you might discover it does what you want, and fast enough, that conversion isn't needed. My program runs in VB and can scan (depending on RAM) the entire US market in something like 2 mins on a decent PC... why on earth complicate life?
Faster programming isn't in it - sorry, but a decent amount of RAM and a middling CPU are all you need to run a pretty serious amount of data crunching in VB... you can speed up a 2Ghz CPU by 25% for a few tenners, why kill yourself with less friendly languages instead?
I've programmed a good few languages, as have many here from the sound of it - VB is easy and fast enough. Go for the quiet life, devote the brain cycles to developing the app rather than mastering the tool you write it with...
Dave
 

JJL3142

Active member
174 0
Programming ..

As a programmer - its not the flavour of the environment (e.g. VB vs Java vs C++) - They all have advantages and disadvantages ..
but at the end of the day you can use any language and make it fast and robust (but it does mean that you have to add a lot of sweat and tears - as well as know the language)


Paul suggests you want to do some analytical work - it really depends on how intensive the calculations are ?

Remember KISS !
 

ravydavy

Newbie
7 0
I use Mathematica to prototype systems. Once you get the hang of the language, making changes and doing testing is incredibly fast. I have a java interface to pull data from historical text files and/or live feeds.

Once I'm happy with the system, I then re-implement in pure java.

The great thing about Mathematica is the enourmous flexibility and instant feedback.

Is anyone else using this?
 

jmreeve

Well-known member
432 13
C# is an excellent choice for trading program development.
It is as easy to use as VB but has most of the power of C++.
If you code well in C# it is just as fast as C++.

However, the syntax is cleaner than C++ and there are several
new features that make it suitable for real time trading applications including:

Support for multi-threading
Abbility to define classes with events
Managed environment for safety (no memory leaks or invalid pointer crashes)
Massive library of thread safe classes to help build apps quickly.

Only problems found:
Watch out for speed performance issues due to boxing/un-boxing
Garbage collection with lots of delegates can be hard to manage/unreliable

Don't bother using VB.
 

JonnyT

Senior member
2,560 22
No you cannot.

However if you want to spend the next year writing an app you could knock up in Java, C#, C++ or VB in a day then please feel free.

With the power in PCs these days such tight code isn't warranted for 99.9% of apps...

JonnyT
 
 
AdBlock Detected

We get it, advertisements are annoying!

But it's thanks to our sponsors that access to Trade2Win remains free for all. By viewing our ads you help us pay our bills, so please support the site and disable your AdBlocker.

I've Disabled AdBlock