Whitmark Genetic Optimizer 2.5 for NinjaTrader 6.5
(Click on button above to see exhibits full screen)
Description
The Whitmark
Genetic Optimizer (wmGO) takes advantage of a genetic algorithm (GA) to
to put your research and development efforts on overdrive. It significantly improves your ability to conduct iterative backtests and optimizations of your trading strategy parameters.
These parameters can be either inputs that drive the behavior of an
indicator or a series of switches to activate specific trading rules or
setups within your trading strategy.
The wmGO is a much
smarter and more efficient means to select the best settings, particularly as
the number of parameters of your strategy grows or the number of values
you want to test for each parameter. The wmGO integrates with
the NinjaTrader Strategy Analyzer and offers many features not found elsewhere.
I, as well as several of my clients, have found the wmGO to an invaluable tool to test the viability of new strategies and
dramatically accelerate strategy research and development efforts.
Benefits
Your ability has evolved to design and develop your own sophisticated
trading strategies so you need more advanced tools in the quest for the most robust
trading strategies and parameter settings. "Exhaustive" or "brute
force" optimization is vastly inefficient when it comes to searching
large solution spaces and is just not smart enough nor efficient enough to give you the kind of
throughput you need to expedite your research and development. If
you find that you are severely restricting the range of values you seek
to test or optimize to keep current run time reasonable, then the wmGO
can vastly improve your productivity.
Features
-
Smart Search. The wmGO is an alternative to the NinjaTrader Strategy Analyzer default "exhaustive"
search optimizer that can be used for both optimization and
walk
forward operations.
- Multiple fitness functions. Go beyond simplistic
measures of performance to guide the optimization process to search for the
preferred equity curve behavior . . . an upward sloping equity curve with modest
drawdown. Fitness function selections can now be made directly
from the wmGO control panel. Available fitness functions include:
- Sqrt(Trades)*Avg(Profits)/StdDev(Profits).
Best for strategies that generate higher win rates and modest profits
per winning trade.
- TotalProf*Wins/MaxDD. Best for strategies
that generate lower win rates and have large profits per winning
trade.
- Net Profit.
- Net Profit per Trade.
- Sharpe Ratio. Must have at
least one month of trading activity to evaluate this fitness
function. Uses the standard Sharp Ratio system performance
statistic found in NinjaTrader.
- Expectancy per Day.
Made popular by Van Tharp in his book, Trade Your Way to
Financial Freedom.
- Other fitness functions to be added in time.
Proprietary fitness function can be incorporated on a customized
basis.
- All Markets, All Timeframes. Works for all markets (e.g., equities, futures, and forex instruments)
and all timeframes (e.g., tick, volume, minutes, seconds, range).
- Efficient Operations. Some genetic optimizers will revisit the same set of parameter values and reprocess
these iterations thereby wasting valuable processing time. The wmGO will not
reprocess duplicate parameter sets to promote a speedy convergence to
the optimal solution.
- Specify Parameter Increments. Some genetic optimizers do not use parameter
increments when selecting candidate parameter values, resulting in a
search method that could get "stuck" in a local optimum.
The wmGO has an option to specify whether you would like to use the
increment values to obtain better coverage in the solution space.
- Bootstrap Current "Best" Parameters.
So, you think the parameter values you have identified through
arduous trail and error are pretty good? When the Bootstrap mode is
selected your "best" parameter values will be forced into
the initial generation
when submitted to the optimizer as a "Min" value. The "Max"
value will be used to specify the value range (Max-Min) to test above and
below your "best" value submitted in the Min field. In other words, if your
"best" lookback
period is 13, and you've entered 13 in to the "Min" field and 18 into
the "Max: field:
- The parameter value of 13 will be forced into the initial
generation of the algorithm and be allowed to influence the solutions of
future generations.
- The range to test above and below the value 13 will be
defined by the defined "Max" less the "Min" or a value of 5 = 18
max -13 min.
- The new "Min" will now be 8 = 13 min - 5 range and the "Max"
will remain at 18.
- This approach is the only way to force in a "best" scenario
into the initial generation
given the current NT 6.5 user interface.
- Repeatable Seeded Runs. Optimization runs can be "seeded" which allows an optimization
to be rerun with the same series of "random" values. This can
be useful when testing alternative versions of a strategy to ensure
performance differences are due to changes in the strategy logic
verses the stochastic nature of the genetic algorithm methods.
- Optimization Settings Output. The settings used to control the optimizer are written to the output
window to provide an audit trail to ensure this important information
is keep together with your optimization results. These fields include:
- Strategy: Name, Parameter Count
- DataSeries: Primary Instrument, PeriodType, PeriodInterval, PointValue, TickSize
- TimeFrame: BackTestMode, BackTestFrom, BackTestTo, ExcludeWeekends, SessionBegin, SessionEnd
- General: IncludeCommission, MinimumBarsRequired
- Historical Fill: FillType, Slippage= 0
- Optimize: KeepBestResults, Method, Type, OptimizationPeriod(WFO), TestPeriod(WFO)
- OrderHandling: EntriesPerDirection, EntryHandling, ExitOnClose
- OrderProperties: DefaultQuantity, QuantityType, TimeInForce
- GASettings1: GASeed, PopSize, MaxGen, ReproPct, CrossType, MutRate, MinTrades, Threshold
- GASettings2: BootStrap, UseIncr, SaveResults
- GASettings3: FitType, FitName
- Iterations: PrimaryBarCount, MinBarOrTickCount, ExhaustiveIterationCount, GOIterationCount
- Tool Tips. All input labels and fields are
provided with tool tips to assist you in managing the settings.
Just hover your mouse over each to read the content.
- Optimization Statistics Output. In addition to the
run summary and results in the output window, the parameter
values for each iteration including the fitness function and
standard trade performance statistics (see below) can be saved to
the wmGO folder in a comma-delimited .csv format to be examined in a
text editor or MS Excel for further analysis. If you have ever
tried to parse out the parameters in the Strategy Analyzer, you will
find this to be a big timesaver.
- Each Parameter Value Parsed
- Fitness Function Value
- Fitness Function Type
- Total Net Profit
- Long Net Profit
- Short Net Profit
- Gross Profit
- Gross Loss
- Commission
- Profit Factor
- Cumulative Profit Pct
- Draw Down Pct
- Draw Down Amt
- Sharpe Ratio
- Total Trades
- Pct Profitable
- Winning Trades
- Losing Trades
- Avg Profit
- Winner Avg Profit
- Loser Avg Profit
- Win Lose Ratio
- Max Consecutive Winners
- Max Consecutive Losers
- Largest Winner
- Largest Loser
- Trades per Day
- Avg Trade Duration Minutes
- Avg Bars in Trade
- Profit Per Month
- Max Time to Recover Days
- Avg Maximum Adverse Excursion (MAE)
- Avg Maximum Favorable Excursion (MFE)
- Avg End Trade Drawdown (ETD)
- Iteration Number (duplicate iterations excluded)
- Reference Strategy Included. Includes a reference strategy, wmGORefStrategy1
(featured
in the video below) that demonstrates how the wmGO can be used to select
the most desirable:
- indicators or sets of indicators
- Trade entry and exit setups
- Trade filters
- Money management methods
- parameter values used as inputs to drive all of the above
- Additional Frequently Asked Questions (FAQs) can be found here.
Video Overview
To see the wmGO in action, please click on the link
below to view an 18 minute Flash video:
Overview of wmGO 2.0 using provided reference strategy. (1024 x 786
Flash Video)
Overview of wmGO 2.5 using provided reference
strategy. (TBD)
For best results, view full size or full screen.
Requirements
- The wmGO works exclusively within the Strategy Analyzer and, like
the default optimizer, will evaluate historical fills on-bar-close
only. Ninja allows historical fill model options of "fill if
touched" (default) and "fill if penetrated" (liberal) for your entry
and exit limit orders.
- Given the nature of how the wmGO works, all parameters must be
numeric values, even if the parameter is not to be used in the
optimization. Therefore, all boolean, enumerated, and string parameters
types must be converted to numeric types (integer, double).
Typically, the changes required to make a strategy wmGO compatible
can be done in several minutes by the strategy developer.
- To use the wmGO you must be connected to the internet to enable
the software license to authenticate your copy of the software with
each use. You
do not have to be connected to your broker data provider to use this
product. NinjaTrader supports the concurrent use of the same
NinjaTrader license for machines that are connected to the internet
but not connected to a broker.
- Currently the wmGO is only supported on NinjaTrader platform version 6.5 (demo or paid).
Terms of Use
- The wmGO 2.5 for NinjaTrader 6.5 is available for lease until
June 30, 2010.
- This product is exclusively written for NinjaTrader 6.5. Although there
are no known reason why the wmGO 2.5
will not work with NT7, until the beta NT7 arrives and we are able
to determine the feasibility and level of effort to make it compatible, we will not commit to
supporting this release of the wmGO under NT7.
- The wmGO is for the
sole use of the lessee for up to two devices (desktop or laptop
computers) owned by the lessee.
- Additional End User License Agreement (EULA) terms apply and are found
in the
installation setup.
- Once clients have a chance work with the wmGO, they undoubtedly
want to know everything about this technology. To keep
the offer price of this valuable tool at a reasonable price, Whitmark Development reserves the right to limit support for
extensive inquiries of this technology or its application.
While most strategy developers will have no problems making their
strategies ready for wmGO, additional paid consultative support is available for
strategy design,
conversion, and development assistance if needed.
Free Trial Download
- The Whitmark Genetic Optimzer (wmGO) is available for a 3-day trial period. To install
the wmGO, please click the link below.
Download the Whitmark Genetic Optimizer 2.5 for NinjaTrader 6.5
- If you performed a trial of an earlier
wmGOv2.X release that has since expired and would like to try out
this latest release, please email
your Machine ID to info@whitmarkdevelopment.com.
- To install the wmGO, simply:
- Close the NinjaTrader 6.5 platform.
- Execute the wmG0 setup application from the link above.
- Restart NinjaTrader 6.5 platform.
- After viewing the overview video above, launch a new Strategy Analyzer window and
test drive it
yourself with the sample strategy wmGORefStrategy1 or your own
compatible strategy.
- During your trial, make sure you are testing strategies that
will generate 30+ over at least a couple of weeks of data.
- To continue your usage following the 3-day trial period, you will need to return to this page to
supply your machine ID to lease and activate the wmGO.
- The wmGO can be readily uninstalled if you choose not to lease.
Price: $295 USD
Licensing for this product is managed by an online license management
system.
To purchase the product, you will need to cut and paste the 32-digit Machine ID that
can be found from the NinjaTrader Control Center > Help > About dialog box.
Click here for additional information on finding your NinjaTrader
Machine ID.
Please note, you may purchase this product without supplying the NinjaTrader Machine ID, but we
will need to follow-up with you via email to obtain this information before activating the product.
Please allow 24 hours for the activation from the time we receive your Machine
ID.