Hi,
This post covers trading platform, data sources and programming. Let me know if I need to move to another section.
I have been using a mixed bag of tools and data sources to develop trading strategies. Mostly manual data download of equities and forex data. These are store in a local mysql database. I then use Matlab and MQL5 to do generate signals, perform backtesting and various analyses. I use use spotfire for interactive visualisation.
It's been quite slow to test new strategies since I tend to write new code for each trading idea. I'm looking to put in place building blocks for much more efficient strategy development and hopefully migration to deployment.
1) Data sources
I'd like the option of exploring strategies in equities,options, futures and forex and narrow down later. I've been through the forum threads and looked into the recommended providers by other users. Here is the comparison:
I spent just half an hour investigating so let me know if any errors. At the moment it looks like IQ feed has the most data available. Any other views?
2) Data storage
I like my current set up where data is stored in a local mysql database which allows me to slice and dice using sql queries. Let me know if you have other thoughts.
3) Analysis/strategy development
Have been using Matlab so far. Looking at using NinjaTrader which looks to be a very capable platform and/or python.
Ninjatrader looks like it nicely wraps the whole strategy development lifecycle and can migrate to live trading easily. Also hooks up to iqfeed and IB. I will want to do lots of number crunching. Given NT scripts are in C#, I'm assuming it will require more programming effort compared to Python? Further I would have to learn C#.
On the other hand python has a huge, evolving maths library and is more general purpose so I assume provides more flexibility, but how is it more flexible vs NT? Intraday is the quickest trading timeframe I would consider so python (vs c#/c++) speed is not relevant?
I assume there are existing python code/library for backtesting? Where can I find these?
So the biggest question for me is NT vs/and python, or any other options?
Thanks.
This post covers trading platform, data sources and programming. Let me know if I need to move to another section.
I have been using a mixed bag of tools and data sources to develop trading strategies. Mostly manual data download of equities and forex data. These are store in a local mysql database. I then use Matlab and MQL5 to do generate signals, perform backtesting and various analyses. I use use spotfire for interactive visualisation.
It's been quite slow to test new strategies since I tend to write new code for each trading idea. I'm looking to put in place building blocks for much more efficient strategy development and hopefully migration to deployment.
1) Data sources
I'd like the option of exploring strategies in equities,options, futures and forex and narrow down later. I've been through the forum threads and looked into the recommended providers by other users. Here is the comparison:
I spent just half an hour investigating so let me know if any errors. At the moment it looks like IQ feed has the most data available. Any other views?
2) Data storage
I like my current set up where data is stored in a local mysql database which allows me to slice and dice using sql queries. Let me know if you have other thoughts.
3) Analysis/strategy development
Have been using Matlab so far. Looking at using NinjaTrader which looks to be a very capable platform and/or python.
Ninjatrader looks like it nicely wraps the whole strategy development lifecycle and can migrate to live trading easily. Also hooks up to iqfeed and IB. I will want to do lots of number crunching. Given NT scripts are in C#, I'm assuming it will require more programming effort compared to Python? Further I would have to learn C#.
On the other hand python has a huge, evolving maths library and is more general purpose so I assume provides more flexibility, but how is it more flexible vs NT? Intraday is the quickest trading timeframe I would consider so python (vs c#/c++) speed is not relevant?
I assume there are existing python code/library for backtesting? Where can I find these?
So the biggest question for me is NT vs/and python, or any other options?
Thanks.
Last edited: