Home PageJRC Logo{short description of image}




colorbar

Evolver

Non-Linear Optimization

colorbar


Microsoft Excel
TradeStation
Trade Navigator
NeoTicker
AmiBroker
Wealth Lab
NeuroShell
Biocomp Profit
WaveWi$e
eSignal
Investor R/T
Ensign
FDC
MetaStock
Tradecision
Trading Solutions
Ninja Trader
MATLAB
Generic DLL



Optimize complex trading strategies

Works in Microsoft Excel





For seriously complex strategies, the only way to optimize is by evolving it through trial and error. Evolver uses Genetic Algorithms, known worldwide as a powerful approach.







Why Use Genetic Algorithms?


Here's a way to optimize your trading strategy on an MS Excel worksheet.

  • Arrange your financial data.
  • Using Excel's Visual Basic, create trading rules that use adjustable parameters.
  • Create a formula that evaluates an overall "Performance Score", such as the reward/risk ratio.
  • Let Evolver find the best combination of parameters that optimizes Performance Score.

How does this work?

In nature, we can observe "problems" being solved through evolution; species evolve as they adapt to dynamic environments. Evolver extends this observation into the world of computer software, the most powerful optimization package available. Evolver uses innovative GA technology to create environments where possible solutions continuously crossbreed, mutate, and compete with one another, until they "evolve" into the best solution. As a result, Evolver can find optimal solutions to virtually any type of problem, from the simple to the most complex.





What is Evolver?


Evolver is an optimization add-in for Microsoft Excel®. Evolver uses innovative genetic algorithm (GA) technology to quickly solve complex optimization problems in finance, trading strategy, asset allocation, and more. Evolver requires no knowledge of programming or GA theory and ships with a fully illustrated manual and several examples.

Evolver solves optimization problems using genetic algorithms (GAs). In a GA, each guess or possible solution to a given problem becomes an independent "organism" that can "breed" with other organisms. The spreadsheet model acts as an environment for the organisms, determining which are "fit" enough to survive based on their results. Here is a brief description of the process:
  • Randomly generate many organisms (possible solutions), and calculate the result each organism produces. This entire "population" of organisms is ranked from best to worst.
  • Select good organisms and swap their variables (genes) using crossover and mutation to produce "offspring".
  • If offspring do not produce a good result, two more parents are selected. If the offspring organism is good, it is re-inserted into the population.
As Evolver repeats steps 2 and 3, the population "evolves" increasingly optimal solutions.




Optimizes Trading Strategies


Here is an example illustrating one way Evolver can be used to improve your trading system. Suppose one of your trading rules resembled the following . . .

Buy when ...

  • MovingAverage > x1, and
  • ClosingPrice < x2, and
  • Interest Rates > x3.

With Evolver, you can build an optimized trading system following these steps:

  • Make a set of trading rules (such as the hypothetical one above) on a spreadsheet or in Excel's VBA.
  • Run your trading system and evaluate its performance using measures such as Net Profit or Return on Account.
  • You then tell Evolver to adjust all the rule parameters x1, x2, x3, ... etc., in order to maximize trading performance.




Setting Up and Optimizing


Installing Evolver is a snap. After running the installation program, the Evolver toolbar is added to Excel.

To use Evolver, you must first build a model of your existing problem using Microsoft Excel. If you don’t have a model and aren’t sure where to begin, look through the twenty examples included with Evolver. Your model can use any functions (including look-up tables and if-then statements) and can even call VBA macros. Unlike traditional optimization tools, Evolver will not force you to make unrealistic assumptions in your model that make the problem abstract.

Your model needs to meet these three criteria:
  • The model contains variables that interact in some way to produce a result.
  • The model recalculates properly for all possible combinations of variables.
  • That result is an accurate representation of how good any given solution is.
As long as these criteria are met, Evolver can intelligently recombine variables to find the optimal answer, whether it’s the best values, the right order, or optimum grouping. Sometimes it’s difficult to ensure that the second criteria listed above will be met while building a model. You can check this second criteria by telling Evolver to pause if an error occurs during an optimization. This is a good way to "debug" your model.

To set up Evolver, click on the Evolver Settings button, then:
  • Specify which spreadsheet cell contains the output to be optimized (the target cell).
  • Enter the cells that Evolver can adjust (the variables), along with the solving method to use.
  • Specify any constraints that must be met (such as $A$1 <=5000, $A$2 * $A$3 >=2000, etc.).
You can also specify the conditions that need to be met for Evolver to stop – stop after n trials, stop after n minutes, stop when change in last n trials is less than a particular value, or stop when a particular Excel formula is true. That’s all there is to it! Click on the "Optimize" button and Evolver will find the optimal solution to your problem! At any time you can Pause or Stop Evolver’s progress using the Evolver toolbar.

Evolver can find optimal solutions to any function that results in a number, whether calculated in a single cell, a full sheet of equations, or the result of some large, complex macro. Evolver’s GA doesn’t need to know the specific details of your problem, or even whether it is solving linear, nonlinear, stochastic (random), combinatorial, noisy, or probabilistic functions. It doesn’t even need a starting guess to get going. Just click "Optimize" and the rest is automatic!




Added Features


3 LEVELS

The Standard version can solve problems with up to 80 variables, the Professional version supports up to 250 variables, and the Industrial version supports an unlimited number of variables.

EVOLVER WATCHER

Monitors Evolver activity in Excel and custom applications; generates graphs and reports.

CONSTRAINTS

Users can enter any number of hard and soft constraints directly, either in a simple format similar to Excel's built-in Solver or as complex formulas. In earlier versions, constraints had to be embedded in the user's worksheet.

MULTI-SHEET

Evolver 4.0 supports problems spanning multiple sheets of an Excel workbook and allows the user to define variable and constraint cells in disjoint ranges.

VBA MACROS

( Professional and Industrial versions only ) Evolver 4.0 includes a macro language for users to control Evolver within Excel! Evolver 4.0 can also run VBA macros every optimization iteration it performs.

AUTO-MUTATION RATES

( Professional and Industrial versions only ) Feature auto-mutation rate adjustment. The mutation rate determines the amount of randomness Evolver uses when generating new solutions. Evolver 4.0 monitors its progress toward an optimal solution and adjusts the mutation rate appropriately.

SELECTABLE GENETIC OPERATORS

( Professional and Industrial versions only ) Allows user to select from a variety of available genetic operators, including heuristic crossover, extinction, boundary mutations, local search, and others. Using a powerful auto-operator feature, Evolver can test all available operators and identify the best-performing one for a specific model.




Download the step-by-step WALK-THROUGH TUTORIAL.

Download a FREE TRIAL version of Evolver.





Additional Information

SYSTEM REQUIREMENTS

THREE VERSIONS

The Evolver package includes ...



Download our TECHNICAL REPORTS. Lots of charts and comparisons.

Read our CUSTOMER's LETTERS. See what others have to say.

Read our FREQUENTLY ASKED QUESTIONS. For answers to technical issues.

How to order Prices, order form, specific questions to ask.




Evolver is made by Palisade Corp., not Jurik Research.
Consequently, our product description may not reflect the latest changes in their software features.
We are not liable for such discrepancies.







[ Copyright ][ WebMaster ]