+1 888 340 6572 GET STARTED
MultiCharts Project Management
previous_open_issue.png
Go to the previous open issue
previous_issue.png
Go to the previous issue (open or closed)
star_faded.png
Please log in to bookmark issues
feature_request_small.png
Open Feature request MC-1655

Optimization API in Multicharts please !

action_vote_minus_faded.png
21
Votes
action_vote_plus_faded.png
next_issue.png
Go to the next issue (open or closed)
next_open_issue.png
Go to the next open issue
Description

Hello,
while multi cores in Multicharts is nothing new, the new optimization api in Tradestation 9.5 is very interesting. Could we have a similar solution built in Multicharts please ?
Here are the features of Tradestations new optimization api mentioned :
New Optimization API - Powerful New Tools for Developers
An application programming interface (API) specifies how software components should interact with each other.
EasyLanguage developers now have access to an Optimization API that empowers them to perform many new kinds of optimization. A TradingApp can use this API to optimize over multiple symbols, multiple intervals, or lists of values or expressions, as well as over a range of values.
Furthermore, optimizations can now be scripted in EasyLanguage. This opens up powerful new capabilities, such as staged optimizations where each optimization depends on the results of the previous optimization. The Optimization API gives developers control over every aspect of an optimization (including all strategy settings), and provides access to every performance metric that is available in the Strategy Optimization Report. The API uses the new optimization engine, so all of these features will automatically take advantage of multiple computer processing cores.
The new Optimization API enables you to perform the following kinds of optimization:
Optimize over a list of symbols.
Optimize over a list of intervals. You can even mix different kinds of intervals (e.g., Kagi, Kase, and Point&Figure).
Optimize over a list of input values (e.g., 3, 7, 15, 25, 30).
Optimize over a list of expressions (e.g., High, Low, Open, Close, AvgPrice, Average(Close, 3)).
Optimize over a list of text values (e.g., to optimize the symbol input for a PriceSeriesProvider).
Optimize Boolean inputs (i.e., test both true and false).
Optimize whether a sub-strategy is enabled. This allows you to test the contribution of particular strategies in a group of cooperating strategies.
And don't worry... the familiar 'optimize over a range' method is still there.
The Optimization API provides the ability to monitor the progress of an optimization while it is running and to cancel the optimization if desired. It's also easy to queue multiple optimizations and automatically run them in sequence.
In addition, the Optimization API gives you access to every 'cell' of data in the Strategy Optimization Report. This allows you to create custom reports or to perform additional analysis of the data in your code. Furthermore, you can easily write the Strategy Optimization Report to a text file so that you can view or analyze the results in a spreadsheet.
Since you can control every aspect of an optimization in your EasyLanguage code, you can now build powerful new kinds of analysis applications. For example, it is possible to build a Staged Optimization TradingApp that automatically performs the following steps:
Optimizes four different strategies over multiple symbols and inputs.
Performs a statistical analysis on the results of each optimization, and selects the strategy with the most consistent performance across symbols.
Runs a fine-grained optimization on the selected strategy (using smaller steps for the input ranges).
Chooses the best symbol and entry inputs from Step 3, then adds and optimizes two exit strategies (e.g., Percent Trailing and Stop Loss).
Writes the in-sample, out-of-sample, and full-range optimization results to CSV files that can be viewed in a spreadsheet.
This entire analysis can run completely unattended, and it can use all available cores for maximum performance.
Please join the TradeStation Optimization revolution NOW by downloading the new EasyLanguage Optimization API Developer's guide.
Then also watch the following video as an appetizer!

http://youtu.be/1LHBjIYSszg

Steps to reproduce this issue

Hello,
while multi cores in Multicharts is nothing new, the new optimization api in Tradestation 9.5 is very interesting. Could we have a similar solution built in Multicharts please ?
Here are the features of Tradestations new optimization api mentioned :
New Optimization API - Powerful New Tools for Developers
An application programming interface (API) specifies how software components should interact with each other.
EasyLanguage developers now have access to an Optimization API that empowers them to perform many new kinds of optimization. A TradingApp can use this API to optimize over multiple symbols, multiple intervals, or lists of values or expressions, as well as over a range of values.
Furthermore, optimizations can now be scripted in EasyLanguage. This opens up powerful new capabilities, such as staged optimizations where each optimization depends on the results of the previous optimization. The Optimization API gives developers control over every aspect of an optimization (including all strategy settings), and provides access to every performance metric that is available in the Strategy Optimization Report. The API uses the new optimization engine, so all of these features will automatically take advantage of multiple computer processing cores.
The new Optimization API enables you to perform the following kinds of optimization:
Optimize over a list of symbols.
Optimize over a list of intervals. You can even mix different kinds of intervals (e.g., Kagi, Kase, and Point&Figure).
Optimize over a list of input values (e.g., 3, 7, 15, 25, 30).
Optimize over a list of expressions (e.g., High, Low, Open, Close, AvgPrice, Average(Close, 3)).
Optimize over a list of text values (e.g., to optimize the symbol input for a PriceSeriesProvider).
Optimize Boolean inputs (i.e., test both true and false).
Optimize whether a sub-strategy is enabled. This allows you to test the contribution of particular strategies in a group of cooperating strategies.
And don't worry... the familiar “optimize over a range” method is still there.
The Optimization API provides the ability to monitor the progress of an optimization while it is running and to cancel the optimization if desired. It’s also easy to queue multiple optimizations and automatically run them in sequence.
In addition, the Optimization API gives you access to every “cell” of data in the Strategy Optimization Report. This allows you to create custom reports or to perform additional analysis of the data in your code. Furthermore, you can easily write the Strategy Optimization Report to a text file so that you can view or analyze the results in a spreadsheet.
Since you can control every aspect of an optimization in your EasyLanguage code, you can now build powerful new kinds of analysis applications. For example, it is possible to build a Staged Optimization TradingApp that automatically performs the following steps:
Optimizes four different strategies over multiple symbols and inputs.
Performs a statistical analysis on the results of each optimization, and selects the strategy with the most consistent performance across symbols.
Runs a fine-grained optimization on the selected strategy (using smaller steps for the input ranges).
Chooses the best symbol and entry inputs from Step 3, then adds and optimizes two exit strategies (e.g., Percent Trailing and Stop Loss).
Writes the in-sample, out-of-sample, and full-range optimization results to CSV files that can be viewed in a spreadsheet.
This entire analysis can run completely unattended, and it can use all available cores for maximum performance.
Please join the TradeStation Optimization revolution NOW by downloading the new EasyLanguage Optimization API Developer’s guide.
Then also watch the following video as an appetizer!

http://youtu.be/1LHBjIYSszg

Comments (3)
#0
user-offline.png  GB (Id2)
Jul 03, 2014 - 14:14

Thank you in advance.

#0
user-offline.png  FastLane (Enalmada)
Jul 18, 2014 - 08:13

Fast follow is better than not having it at all.

#1
user-offline.png  Faraz (faraz)
icon_reply.pngJun 04, 09:58, in reply to comment #0

MC should have added it by now. I suggest to go 1 step further and add IF condition to monitor fitness and improve fitness. This will give the current Genetic Algo feature to get little bit closer to Genetic Programming (GP) which is the most advance currently.

Thanks

History
Issue basics
  • Type of issue
    Feature request
  • Category
    Usability
  • Targeted for
    MultiCharts Future Releases
  • Status
    Confirmed
User pain
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
Affected by this issue (2)
People involved
Times and dates
  • Posted at
  • Last updated
Issue details
  • Resolution
    Not determined
  • Severity
    Normal
Attachments (1)
Commits (0)
There are no code checkins for this issue
Duplicate issues (0)
This issue does not have any duplicates