Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
I've been a log time lurker and have found this site very beneficial with the wealth of knowledge you all have to share. With that being said, I finally decided to join in hopes that I can get some advice and answers to my questions below.
First a little background... I have been trading futures for a few years now, primarily speculative trading using EWP and a few other indicators. I've done well, but I don't have the time to sit in front of my computer at all times of the day due to my full time job. Therefore over the past year I have put all my time and focus in to a couple of strategies that I wish to automate. One of them is based on speed, not high frequency trading, but need to be quick enough to get in and out within seconds when a profit presents itself. I have done my homework, manually tested my strategies and I am serious about building out the algorithms.
My questions are:
1. I have some knowledge in coding but not comfortable enough to build a fully functioning algo. I am actually considering hiring someone to help me out. I had a friend who is a programmer but he was not able to get a grasp on what I wanted built. So how did you learn to build your own algorithms? Or would you recommend a site where I can hire someone to help me?
2. Right now I trade on TOS, which I love but they do not allow algo trading for futures. So I've been researching other platforms. I took Tradestation and IBK for test runs but I ran into latency and fill issues with them (sorry if you prefer any of these) Instead I was looking at CQG and Rithmic. I've researched both platforms on this forum and it has been helpful, I am leaning towards CQG. I had a call with the CQG team and sales director at CME to set up a live stream for level 2 data and they were very helpful. However, if anyone has a better broker where I can connect to CME directly, would like to hear your ideas.
3. Does anyone have a preferred FCM? I've had calls with multiple clearing FCMs. I like Advantage Futures however they seem a little pricy vs others. The reason I took a liking to them is because their account manager has helped me navigate the landscape and has been a great resource. However if there is something cheaper out there that is the "go-to" FCM, may look that way to start.
4. What platform do you build your algorithms on? For example, I was looking at using AWS S3 to host the code and the web socket would continue to feed the market data into the AWS platform. This way I can trade almost around the clock, not have to worry about hardware issues, power outages, etc. AWS also has locations all over the U.S. and I can use a connection close to the exchange to hopefully cut down on latency and slippage. Any other recommendations/ideas are welcomed.
Any insight on the above would be greatly appreciated. I know some of these questions have been answered on this site but wanted to give the larger picture in hopes that a few of you can provide some direction for this noob
Thanks everyone!
Can you help answer these questions from other members on NexusFi?
There are a lot of resources here and you should find most or all of what you need.
I do all of my development in Ninjatrader (currently NT7 because I have so many hours in indicators and strategies) I am slowly upgrading things to NT8.
If you need help with programming systems there are several threads that can provide assistance.
Much is behind the Elite area but it is well worth the cost and I highly recommend it.
Just go to the areas you are interested in and jump in and ask questions or make comments.
I hope you enjoy the journey
Rejoice in the Thunderstorms of Life . . .
Knowing it's not about Clouds or Wind. . .
But Learning to Dance in the Rain ! ! !
Thanks TradingThomas.
I have a few questions, if you don't mind providing some insight into your set-up.
What provider do you use or would you recommend i should look into for a Chicago-based VPS?
I've looked into MetaTeader however it appears that you will need to use their language MQL5 to code (which you mention above), is it difficult to understand/use?
Finally, just so i understand, you use AMP Futures as your FCM and CQG provides the live data stream to your MetsTrade account - is that correct?
Thanks again and appreciate any additional help you can provide
1. You should take the time to learn how to build your own algorithms for stability. What if the hired developer stops responding to your requests?
2. What type of fill issues did you encounter with IBKR or TradeStation?
3. I used Advantage Futures two years ago. It's a smaller FCM, but they run a tight and professional operation. Further, they use CME's recommendations for margin calculations, which is a big help with spread trading. I would still be with them if I had not made the switch to algo development.
4. I develop my algorithm using Python (IBKR's Python API). In my opinion, Python is the best, because of its shallow learning curve and robust libraries. The libraries allows people to save time in their development.
As far as where to run your algos, it is best to run them in a public cloud for the reasons that you stated. As a systems administrator, I've only used one public cloud for the past 9 years-- AWS. So, I am partial to that.
When you migrate your stuff to the cloud, I'd recommend paying upfront for a dedicated instance, because it is 75% cheaper than an on-Demand instance.
I'm not sure why you need to host your code on s3. Why not host the code on an EC2 EBS volume?
I think that you have chosen a fairly difficult path in seeking to automate your strategies. Not that there's anything wrong with it, just that, like anything else, it has its issues.
NinjaTrader is probably the most-used platform on this forum, based simply on the number of posts over time. It has a language that is relatively easy to learn and use ("relatively" ), and there are many traders here who are actually quite expert with it, so there are many sources of help if you run into problems, which are of course inevitable. It does have a built-in tool (Strategy Builder) for automating strategies, and there are other, third-party tools available as well.
I am not an automated trader, although I have been a programmer in a past life, and I can't assess the suitability of any of these tools for your purposes, nor can I comment on other platforms or their capabilities. One thing I can say, as a professional programmer, is that writing your own code is the best way to get something to work the way you want it to, but there is a learning curve for any kind of coding, and you may not want to go up it. Finding someone else to do it has its issues too. You have already found a problem with having a programmer even understand what you wanted. This is not surprising, because coding an application that will run under a particular trading platform is a very specialized thing -- they will need knowledge of both trading and of the particular platform you are using. Most coders won't have knowledge of either.
There may be better choices, in the abstract, than NinjaTrader, but you may find it a good practical first step. You can do a test drive and see. You'd have to use NinjaTrader as your FCM, because it's a proprietary system. Their support is good, and you can get some support here from other traders. The reason I suggest it is that you get your feet wet fairly easily and see if it suits you.... that is, if you do decide to try the code-your-own option.
Another advantage is of course the wide use, which probably includes more coders for hire, if you want to try that path. I can't give any recommendations on that score, though.
I think that the best development and overall trading option is actually Sierra Chart, but it has a very steep learning curve to attempt. You can use the platform with a number of FCM's so you aren't restricted in that way. But it is exceedingly technical and many find it difficult, and the attitude of their support can be very abrupt (or dismissive, if they think you're not technical enough.)
There are traders who like TradeStation for automation, but you have already tried them and didn't like it.
I hope you will get some other pros and cons, but Ninja is my first suggestion.
Bob.
When one door closes, another opens.
-- Cervantes, Don Quixote
My platform is NT.
Most of my work has been done in NT 6 - 7. (I'm an old dog)
I am porting more of the work I use to NT 8 but it is a new learning process but I like challenges.
I've used/programmed several platforms but have stayed with Ninjatrader for the longest.
Most of the platforms are similar but some offer things you may want.
Just use this time to research and find a platform you like.
I recommend you program your systems yourself but that is just me.
I've hired programmers in the past and they usually don't understand what is needed or don't 'think out of the box'.
There are some good programmers on this site and if you are going to pay a programmer I suggest using one on NexusFI.
I've used some colocation remote servers in the past but haven't needed them lately since my connection has been strong and reliable.
One of the colocation server hosts on NexusFI is owned by @sam028.
Most important part...
Have fun and enjoy the journey.
Rejoice in the Thunderstorms of Life . . .
Knowing it's not about Clouds or Wind. . .
But Learning to Dance in the Rain ! ! !
I am leaning towards NT now. I've been watching tutorials and exploring their strategy builder, and it appears to be easy enough. My only issue is that my strategy is a bit more complicated than using simple indicators. After hearing everyone's response, I think I am going to try to build the code, however, I still feel like I want to hire a developer to teach me the code and help streamline the process. I am big into learning and having someone teach me would be beneficial.
I kept getting terrible fills with IBKR and Tradestation vs what I was getting in TOS - like a point or two difference. In fact, a couple of times my orders were not even filled in IBKR and/or Tradestation, when the market clearly hit my limit or stop order. It made it worse because I was testing the same orders in TOS at same time and my orders would be filled there. There were some other issues as well, like customer support, and the UI's. A few of my friends who trade regularly experienced similar issues with TS and IBKR, which further made me nervous because my strategy is all about speed and ensuring orders are filled at same time. If they work for you though, then awesome! I am not trying to bash them, because they did have some cool features, but I just didn't feel comfortable using them.
I'm glad to hear that about Advantage Futures. I have had a few calls with them and they have been nothing but pleasant and professional. I would like to work with them but I think NT has their own FCM if I go that route.
Thanks for letting me know about paying upfront for the dedicated instance, will keep that in mind and I will look into EC2 EBS