I am currently evaluating Ninja Trader versus a few of the other algo trading platforms. I have a some questions and I wonder if someone from Ninja Trader support / development can help me with?
Firstly, please let me say (echoing others on this forum) so far I’m very impressed with the platform. I am a frustrated user of Esignal (don’t got there is you are trying to develop algo systems) and so far I like what I see in Ninja Trader. I am also very impressed with the pricing structure. It allows us (the user community) to develop for free and you get the pay off later.
Portfolio analysis
Does Ninja Trader have the ability to backtest across a set or portfolio of instruments, not just a single instrument? I have linked here the to the equivalent to a description of the functionality I am referring to Ami Broker. They are on the only provider I have come across that does this as yet (http://www.amibroker.com/guide/h_portfolio.html). This functionality is very important. If one is going to run a strategy on a set of instruments (e.g. a basket of forex currency crosses) then one really needs to understand the extent of the drawdowns as there will be correlation between the profit and losses of those currencies with the same strategy trading on them as the underlying currencies will have correlation.
Optimisation variables
I know that Ninja Trade can pass in variables during backtesting (http://www.ninjatrader.com/V6_Videos/NT6StrategyAnalyzerOptimization.html) ; however, can user defined variables be switched? For example, if I wanted to backtest a different type of position management strategy (e.g. a 30 pip trailing stop Vs a percentage stop). Therefore, I would want to define a number variable to be switched from 1 too 2, where 1 is a trailing stop position management strategy and 2 is a percent stop strategy; or, switching on various ATM (Advanced Trade Management) strategies for position management (see question below on ATM specifically).
Strategy / Indicator
I am not sure I get the logic of the Strategy vs Indicator thing in Ninja Trader. In Esignal the whole of a EFS script can be an Indicator and a Strategy at once. Indeed, the logical of design in Esignal is to incorporate them both onto a single chart. However, in Ninja Trader they appear to be defined as different things. (For further clarification see question below regarding bar replay in Esignal). Could someone in support / dev possibly issue us some documentation that provides an overview of the design logic here? Of the type of document I am referring, a good example is given here: http://www.activequant.org/ (see the quick schematic overview section on the bottom of the page). To give an example of what I’m asking – Can you be executing a strategy and bring up a chart / Super DOM and see that orders pending in both Sim and live modes?
Bar replay
One of the good things in Esignal (yes, there are some good features) is the bar replay functionality. You can apply a Trading Strategy to a chart and have it execute bar by bar. Does the same functionality exist in Ninja Trader? I know that there is the Market Replay function, but would a Strategy that is applied to the chart when the market is being replayed also paper trade that strategy. This is for debugging and walk forward analysis purposes.
Bring to front (work spaces)
When you are working with multiple windows it is really painful when you have to click on each of the windows to bring them forward. If one has a 15 min, 60 min and a daily timeframe chart, which I am sure is common for Forex traders, then you need to click on each of them to bring them to the front. This is particularly the case when you have other applications (e.g. web browser, email client, etc). Is there something that can be done about this? I would suspect that the best approach for this is to put a “Bring workspace windows to front” option on the Mkt Analyser / Control Centre when right clicking on the particular instrument.
ATM templates / strategy via Ninja Scripts
Can a pre-defined / saved ATM template be called from a Ninja Script strategy to manage the position generated by the strategy? If so, is there some documentation or a worked example you can point me towards?
Compile in Visual Studio
Upon reading some of the posts in the forum I have noted advice from some support staff recommending to users not to compile scripts in Visual Studio. Is that correct? Are you able to compile Ninja Scripts in Visual Studio? Is one only able to use Visual Studio for debugging purposes? Or can Visual Studio be treated as a full IDE for Ninja Scripts?
If the answer to the above question is that VS can only be used for debugging, could someone provide a the reasoning why? And state if there are any plans to allow developers whom are more seriously developing algo systems to develop them in a proper IDE (that VS is) and allow those whom want to make minor adjustments to Ninja Scripts to work in the Ninja Scripting environment. This is important as my experience that algo strategies grow quickly once you put in place set-up criteria filtering, position management, etc. Managing the interaction of those elements is best done in a full functioning IDE.
Support escalation process
Is there any documentation on the support escalation process? Defining escalation as in the ITIL terminology - http://www.itil-officialsite.com/home/home.asp
Multi-tread support
One of the reasons we are needing to step away from Esignal is that it does not have multi-thread support. If one is trying to do more than a simple MA crossover strategy, it simply falls over for want of processing power / RAM. I’m to understand that multi-thread support is going to be implemented in Version 7 of Ninja. Is that correct? If so, how much of a performance improvement is early testing showing? I would greatly appreciate if someone from the community could comment on the performance they have seen with relatively complex strategies / indicators running on charts with the current version?
User communities
Do physical user communities exist for Ninja Trader? For example, if you look at something like Oracle which has a strong user group here that helps Oracle with events and functions: http://www.ukoug.org/. Or something like Pro-Shares operated by Digital Look: http://www.proshareclubs.co.uk/. If not, are there any plans to develop such user communities around Ninja Trader?
Thanks in advance for your assistance.
Kind regards,
Dan
Comment