Multi-Objective Optimization

<< Click to Display Table of Contents >>

Navigation:  Operations > Strategy Analyzer >

Multi-Objective Optimization

Previous page Return to chapter overview Next page

Show/Hide Hidden Text

Multi-Objective optimization takes standard optimization a step further by allowing you to choose multiple objectives to test for. When results are returned instead of a singlular list of best results ranked from best to least best instead you will be presented a graph. With multiple objective there is no single best result, instead its up to the trader to choose what is the best tradeoff between two objectives. To run a Multi-objective optimization you will need:

 

Access to historical data

Custom NinjaScript *strategy

A thorough understanding of the Strategy Analyzer's backtesting and optimization capabilities

 

Tip:  There are several pre-defined sample strategies that are installed with NinjaTrader that you can explore.

 

playVideo

 

Note: The IncludeTradeHistoryInBacktest property is set to false by default when a strategy is applied in the Strategy Analyzer for optimization. This provides for leaner memory usage, but at the expense of not being able to access Trade objects for historical trades. Thus, fields such as SystemPerformance.AllTrades.Count that rely on references to Trade objects will not have any such references to work with. If you would like to save these objects for reference in your code, you can set IncludeTradeHistoryInBacktest to true in the Configure state. For more information, see the Working with Historical Trade Data page.

tog_minus        How to run a Multi-Objective Optimization 

tog_minus        Understanding Multi-Objective  properties

tog_minus        Understanding Multi-Objective results