Algorithmic Trading API [duplicate] - algorithmic-trading

This question already has answers here:
Closed 14 years ago.
Anyone have experience with algorithmic trading (like stocks)? Any good services to use to get quotes and to make trades?

I had a freelance project that used Interactive Brokers, which provided both a proprietary API as well as a FIX-based one. The proprietary API is somewhat painful to use (and they probably can't change it much, for compatibility), but you can easily code a "translation layer" to make it much more pleasant. I haven't tried the FIX-based API, so no comments there.
And yes, I reopened the question. I happen to think it's a fair question to ask.

I know TradeStation is pretty popular.

Related

What's the best way to figure out why my site is slow? [duplicate]

This question already has answers here:
Closed 10 years ago.
Possible Duplicate:
Wordpress site painfully slow
My site is very slow. There's a lot going on in terms of images and javascript, but I've gone through and temporarily removed big chunks of the site and tested the speed to see how it improved and it wasn't by much. I'm thinking that it must be something that's not obviously visible. What's the best way to figure out what is slowing it down? The site is http://www.art-start.org
Thanks!
Not a programming question but can give you a pretty good insight.
I strongly suggest you read up on and learn how to use Chrome Developer Tools (makes things a whole lot easier)
The main thing that jumped out at me was your custom font (HVD_PPoster-webfont.woff) is 450kb.
Things I suggest to do are:
Following whatever Google PageSpeed says you should do
Install one of the wordpress caching plugins (WP Super Cache)
Find a better solution for your custom font
Hope this helps!

Yammer's Experience w/ Scala [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I have been advocating using Scala at my company. One of my co-workers forwarded me this link tonight
http://blog.joda.org/2011/11/real-life-scala-feedback-from-yammer.html
I was hoping to get some constructive feedback from the SO community about this. I don't want this to turn into a flaming thread, but if there are legitimate concerns floating around out there I think it would be beneficial to discuss possible reasons and best practices that can avoid others falling into such traps.
I will say that I have been loving Scala and have not run into any of the problems that are mentioned. My application is also not very hashmap intensive, which appears to be where a fair number of their problems came from.
[Edit - apparently I need a question!]
The question is, do you think that the problems described are systemic to Scala, or more unique to their environment? If they are systemic, are there some good guidelines for a company that is just getting started with Scala to follow so that they don't end up in the same boat in 2 years?
Issues Described
Language Complexity
Systemic issue. Scala is unlikely to get less complex, whether or not that is a problem depends on the developers that are working with it. For me, it is complex enough to keep me interested and engaged, whereas pure Java can be mind-numbingly boring. My suspicion is that if Scala is way too complex for a particular developer, it is unlikely they're going to be top-notch dev when it comes to Java as well.
Community
So this one guy says the only way to do this is with a bijective map
on a semi-algebra, whatever the hell that is, and this other guy says
to use a library which doesn't have docs and didn't exist until last
week and that he wrote. The first guy and the second guy seem to hate
each other. What's the Scala way of sending an HTTP request to a
server?
That quote is pretty funny, but this is obviously a non-systemic issue with Scala. His main complaint about a lack of consensus regarding best-practices is relevant to all up-and-coming languages. I think Java developers have been spoiled in a way -- having gotten used to being part of such an enormous community where pretty much everything has been done before and possibly already standardized.
Build Toolchain
Another non-systemic issue.
Performance
This one does worry me a little bit and I can see getting frustrated very fast having to uncover previously unknown performance gotchas. I suspect for years to come there will be some pretty big performance penalties depending on how you use certain aspects of the language -- so people will have to exercise caution and make their own analysis regarding each project's performance requirements.
I concur with his sentiments here:
Despite the fact that we're moving away from Scala, I still think it's
one of the most interesting, innovative, and exciting languages I've
used...
And finally I would urge people to read Stephen Colebourne's blog with some degree of skepticism, because his personal disdain for the Scala language seems a bit oversize relative to the arguments.

How to stay DRY? Do Not Repeat Yourself! [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I find that one of the most frustrating aspects to software development is finding a solution to a problem, forgetting it, then being faced with the same issue in the future only to forgot how you previously solved it. Or to write a useful bit of code, then on a later project not be able to find this code.
My general question is this: How do you keep track of all the new things you learn each day while programming? Does anyone have a systematic way to capture knowledge and easily and efficiently apply it in the future?
UPDATE: Thanks the for the responses, here's what you came up with:
Social
Stackoverflow
Tumblr
Twitter
Evernote
Blogs/Wikis
Code Repositories
Github
Unfuddle
LaunchPad
Google Code
Desktop
Dropbox
Yojimbo (mac)
VoodooPad (mac)
Wikidpad (win)
Surfulater
Stackoverflow is a good place to start :-)
Keeping a blog is another thing (here's mine).
Even Twitter can be useful for this.
There are also a number of "desktop wiki" applications that I find very useful: VoodooPad on the Mac and Wikidpad for Windows.
Finally, if you need to store snippets (or more) of code (that you have the rights to, of course), then there are plenty of source code repositories available now (GitHub, LaunchPad, Google Code or Unfuddle if you want complete control).
The brain has limits. Accept it.
The solution is to have tests for your code so you can merge repeated code without breaking a sweat as soon as you notice it.
I use TiddlyWiki to keep track of a lot of things. It's a one-page, self contained wiki that you can run off your desktop, or your server.
If you want a hosted solution, you can get one for free over at TiddlySpot
I'm having this problem myself too. I've just started couple months ago by adding good SO questions/answers into my favorites, even those I answered or posted. I guess that's a good start. :)
Write a blog. Publish your findings, code samples and everything else. The best way to save the knowledge for future.
I don't care too much when I forget how I solved some problem five years ago. Chances are that in the meantime, there is a better way to do it available. GIYF.
If it is for an organisation, having internal wiki page (or something similar) could help.
If it is only for you (and anyone that's interested), write a blog, favourite snippets on internet etc.
For code, a good approach (in both cases: organisation and yourself) is to keep something I call "Utilities Library". Each piece of code I like usually fits into one of the problem scopes / namespaces of the library. This way, over time, you have a neat code base that allows you to not to invent the weel again. Of course, after couple of months or years the library needs documentation to find anything in there :)
I think Evernote is one of the best resources for storing all kinds of notes. You can even upload photos of texts (say from your iphone, or just your computer), and the text will be OCR'd, so that you can free-text search for parts of the text later.
I use Yojimbo to keep track of just about every neat algorithm, code snippet, or handy idea.
A database of notes (I use an application called Surfulater) and a directory tree of source code (also kept in a Subversion repository).
If I were to start today, I'd probably use some Wiki framework to store my notes.
I always carry around all my interesting projects with me using dropbox. Then I usually know where to find the tricks I did before.
Everytime I see something good on SO I star it, everytime I see a good article on the web I bookmark it.
Keeping a blog or a tumblr is also nice.
I am used to carry my flash disk wherever I go. So, I have different folder there for C# notes, Asp.Net notes, Design Patterns etc.
And whenever I do something that I feel I can use it in the future, basically I open the relevant Word document in it, add the details and the code snippet with a header and save.
I do not know how the others do it but it really helps me.
Do not forget to add a reference index in the beginning of your document.
P.S : I also carry all the e-books in my disk. To have them all in my pocket gives me really good feeling.
I use google reader to store all the interesting blogs and I add notes on the issues it was about.For codes strangely I always forget after having solved the issue but now I either post on asp.net forum and stackoverflow. But only strange thing happened to me couple of years ago, I had an issue and I managed to research to solve it but when I reviewed some codes I had written 3 years before I saw that I had used the same function and identical code for a similar issue. I think even if I didn't remember the code, it must have been hidden somewhere in my mind :)

Looking for some examples of GUI apps with great design [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I will start developing my next desktop application in about a month. In the past I have delivered functional software that hasn't wowed anyone, including myself, in the usability or aesthetics department.
Does anybody know of any resources or guides or even books that could showcase examples of good design in desktop software?
There seems to be a lot of resources for web apps, but such resources for desktop applications are rather slim.
I enjoyed these dot net rocks tv videos by Mark Miller on The Science of a Great User Experience really got me thinking about good ui:
http://www.dnrtv.com/default.aspx?showNum=112
http://www.dnrtv.com/default.aspx?showNum=123
Where you can really make a difference with GUI design is if you are addressing a difficult to understand concept in a GUI.
When you are doing that, creativity is critical. When dealing with complex hardware configurations (something I had to do a lot, but probably doesn't apply to you), I've had good luck going to tech manuals and tech support people and trying to completely understand the problem. Then I took the methods they used to show me (diagrams from the manuals, whiteboard drawings, etc) and tried to code them into a GUI.
Had a couple massive successes with this.
Iteration is also critical. Prototype something quickly then beg everyone you see to try it. Ask them to solve a problem, then watch where they go first and watch what they have problems with.
Address every problem and stumbling block.
Don't be afraid to throw it all away and start over, it was only prototype code.
Separate your GUI from your implementation so that you can swap out the GUI if you find a better approach.
If you want to concentrate on just one feature, have a look at ITunes' search box which filters as you type. Other software may have had this before, but this was I think the first place I encountered it.
The difference between this and classic search was an eye opener for me in terms of readability.
Auto-complete which you see in so many places is another one. I'd recommend IntelliJ IDEA for the way it took auto-completion which emacs, Visual studio etc had for ages and added autocompletion for variable names and method names in a manner which almost seemed psychic the first time you encountered it.
You can look at Thirteen23 Experiences
To make things usable, you need to make sure that you follow existing conventions for your target platform and application type.
For example, if you're developing a Windows App you'd better make sure that control-c copies, control-v pastes, control-s saves, etc. The File menu better be the leftmost item in the menu bar, and the Help menu better by the rightmost item.
If you don't follow existing conventions, users are going to get annoyed with your application very quickly.
Google for HIG. Human Interface Guidelines typically include lots of research into best-practice in user interfaces, and explain in great detail how to design each aspect of a program. Also, have a google for "user-interface hall of shame" or something like that.
In this question I mentioned GUI bloopers. Part of great design is knowing what makes bad design and why. It is actually a great book, although I don't know how much of it is available on the website.
You can check case studys on websites of GUI companys. I fund few at www.puzzlehead.com
Check there and also other sites.

What is your favorite User Interface? (web application) [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I think it would be interesting to get a programmers viewpoint on UI design.
What is your favorite User Interface that you have come across in a web application?
If possible, say a little bit about why you like it.
http://www.google.com is my favorite. Can be considered a "lack of UI" ;)
At the risk of sounding too much of a fan ... I think StackOverflow has a great UI. It is clean, without clutter (except the creeping ads!), the navigation is straight forward and yet manages to compress a fair amount of functionality.
Fairly simple features, like the coloured vote buttons to show what you have voted for, and the live preview really add to the interactive feel.
(And I don't mind the ads as long as they stay away from the flashing punch-the-monkey kind!)
Web application: Wordpress. It's so powerful, yet clean and easy to use.
Desktop application: Excel (or equivelent). Seriously, a spreadsheet is the most innovative and clever user interface ever devised. It's used for everything. I don't know what the question is, but the answer is Excel.
GMail interface is so smooth and fast that I question me why nobody had done that before.
I think Remember The Milk has a brilliantly clean and intuitive interface
Mint.com, if you trust someone else with your bank account information. It keeps track of all your transactions, lets you fill out a budget, notifies you of unusual spending trends or transactions, and lets you drill down through your spending trends to see exactly where all of your hard earned cash is going. Best of all, it's free.
(source: mint.com)
http://bbc.co.uk homepage
http://mail.google.com/
http://stackoverlow.com (that is I liked it before the introduction of ads :)
FreshBooks accounting has a very nice interface.
(Although I upvoted the answer in favor of StackOverflow)
I think stackoverflow has done a great job in many areas in terms of usability, including colour pallete, use of whitespace, anticipating user's need for information and providing or hiding appropriately, non-intrusive JS/AJAX.
Minus points for these increasingly obtrusive ads, though. :P
Gmail is also good. Honourable mention to github.com.
Update: I recently got introduced to FriendFeed. I think they have also done a fabulous job with their web UI, in terms of clean yet attractive design, plus appropriate and helpful use of Javascript and AJAX to provide for a smooth, positive user experience. Check it out.
The new Yahoo Mail UI blew me away when I first saw it. The keyboard shortcuts, drag 'n' drop, tabs, etc. really make it look and feel like a desktop app. Admittedly this quality of UI has become a lot more common on the web in the last few years, but for me at least, Yahoo Mail was the first web app in my experience to bring this kind of usability to the web.
http://fastladder.com has great UI for feedholic. I can't live without fldr's keyboard shortcuts (and some greasemonkey to change them to fit for me.)
http://www.instapaper.com is also simple and great. This is temporary storage for web resource marked as read later, and don't need password for make account because of that purpose.
For the CLI lovers out there...
http://cb.vu/
cat about.txt
Not really useful but it's quite interesting.

Resources