Create and Test Forex Strategies
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
eas-guide:validator [2019/04/30 20:32] – Walk Forward optimization and validation vini | eas-guide:validator [2021/01/12 13:32] (current) – [Normalization] Ilan Vardy | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Validator ====== | ====== Validator ====== | ||
- | The Validator | + | The Validator's main function is to ensure |
- | The Validator | + | The Validator only works for strategies |
+ | |||
+ | {{youtube> | ||
===== Basic Workflow ===== | ===== Basic Workflow ===== | ||
- | In the Validator you can import [[eas-guide: | + | In the Validator, you can import [[eas-guide: |
- | When you are done importing files you can set various requirements that the strategies have to meet. If a strategy backtest shows profit and meets your requirements it will be automatically added to the Collection. | + | When you have completed |
<WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
- | You might already have some strategies in the [[eas-guide: | + | You might already have some strategies in the [[eas-guide: |
</ | </ | ||
Line 19: | Line 21: | ||
<WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
At a later point in time it might be hard to remember when you created and last backtested each strategy or collection. | At a later point in time it might be hard to remember when you created and last backtested each strategy or collection. | ||
- | To know when you created/ | + | To determine |
</ | </ | ||
Line 27: | Line 29: | ||
{{: | {{: | ||
- | **Progress** - shows what percentage of the imported strategies have been calculated. | + | **Progress** - shows the percentage of the imported strategies |
- | **Calculated** - Number of calculated strategies | + | **Calculated** - Number of currently |
**Ascended** - The number of strategies that passed all validations and were sent to the Collection. (The number of strategies in the collection might not increase though. This is because the Collection accepts only unique strategies. If a strategy already exists in the Collection it won't be added twice.) | **Ascended** - The number of strategies that passed all validations and were sent to the Collection. (The number of strategies in the collection might not increase though. This is because the Collection accepts only unique strategies. If a strategy already exists in the Collection it won't be added twice.) | ||
Line 37: | Line 39: | ||
===== Import Strategies ===== | ===== Import Strategies ===== | ||
- | You can import all kinds of files you exported from EA Studio: Collections, | + | You can import all kinds of files that you have exported from EA Studio: Collections, |
- | Imported strategies will stay in the Validator until you use the **Remove all** button. You can leave the Validator tool and do some other work with EA Studio. When you return the strategies you imported will still be loaded in the Validator. | + | Imported strategies will stay in the Validator until you use the **Remove all** button. You can leave the Validator tool to run while you continue with other work with EA Studio. When you return, the strategies you imported will still be loaded in the Validator. |
==== 1. Strategies ==== | ==== 1. Strategies ==== | ||
- | {{: | + | {{: |
==== 2. Historical Data ==== | ==== 2. Historical Data ==== | ||
Line 50: | Line 52: | ||
The strategies you import might have been created on different markets and periods. However the Validator will test all imported strategies on a single market and period. The market and the period are set here. | The strategies you import might have been created on different markets and periods. However the Validator will test all imported strategies on a single market and period. The market and the period are set here. | ||
- | The **" | + | The **" |
+ | |||
+ | |||
+ | {{: | ||
- | {{: | ||
==== 3. Validator Settings ==== | ==== 3. Validator Settings ==== | ||
- | {{: | + | {{: |
- | Here we have less settings than in the Generator because we are not creating new strategies. We are only validating older strategies. | ||
- | You can select what percentage of the data to be used for [[eas-guide: | + | Here we have fewer settings than in the Generator because we are not creating new strategies. We are only validating older strategies. |
+ | |||
+ | You can select what percentage of the data will be used for [[eas-guide: | ||
Line 70: | Line 75: | ||
We can toggle the additional tools by using their checkboxes. When a tool is enabled we can also see a panel with statistical data on the right side of the screen. | We can toggle the additional tools by using their checkboxes. When a tool is enabled we can also see a panel with statistical data on the right side of the screen. | ||
- | When a strategy is validated goes through the enabled tools. For a strategy to be pushed to the Collection it has to pass all the enabled tools' tests first. | + | When a strategy is validated, it goes through the enabled tools. For a strategy to be pushed to the Collection it has to pass all the enabled tools' tests first. |
- | It is a good practice to enable [[eas-guide: | + | It is good practice to enable [[eas-guide: |
You might however disable Acceptance Criteria for different reasons. For example if there is a market where there is not enough data to meet the Acceptance Criteria for trades but you still want to create a strategy for this market. | You might however disable Acceptance Criteria for different reasons. For example if there is a market where there is not enough data to meet the Acceptance Criteria for trades but you still want to create a strategy for this market. | ||
Line 81: | Line 86: | ||
==== Full Data optimization ==== | ==== Full Data optimization ==== | ||
- | {{: | ||
- | The Optimization tool displays a generalized version of the Optimizer. This allows to apply optimization on many strategies with different indicators. | + | {{: |
- | **Optimize Stop Loss and Take Profit** - if enabled will optimize ST and TP only on strategies that already have ST and TP in their logic. This option won't add ST or TP rules to the strategy if it does not have them already. | + | The Optimization tool displays a generalized version of the Optimizer. This allows you to apply optimization on many strategies with different indicators. |
- | It some of your strategies have ST and TP and you want to keep these values unchanged, you should leave this option | + | **Optimize Stop Loss and Take Profit** - if enabled, will optimize SL and TP only on strategies |
- | **Numeric Values Range** - The Optimizer tries to find better | + | If some of your strategies |
- | **Search Best** - The optimizer will optimize the strategy according to which parameter you selected. For example if you choose Net balance it will try to make the strategy profit more. | + | **Numeric Values Range** - The Optimizer tries to find better strategies by changing the numeric indicator parameters of the primary strategy. This field lets you choose the range in which the Optimizer can change these parameters. A smaller range will allow the strategies to be optimized faster but the gains might only be marginal. On the other hand, a greater range allows for better optimization but this is a double-edged sword because over-optimization can lead to curve-fitting and fragile strategies. It is good practice to always couple the optimization with one of the robustness testing tools - for example [[eas-guide: |
+ | |||
+ | **Search Best** - The optimizer will optimize the strategy according to which parameter you selected. For example if you choose Net balance, it will try to make the strategy profit more. | ||
**Out of Sample** - What amount of data to use for In Sample and what amount - for [[eas-guide: | **Out of Sample** - What amount of data to use for In Sample and what amount - for [[eas-guide: | ||
- | **The strategies | + | **The strategies |
==== Walk Forward optimization ==== | ==== Walk Forward optimization ==== | ||
- | **Walk Forward analysis (WFA) or Walk Forward optimization (WFO)** is a sequential optimization applied to an investment strategy. The name of the analysis is called “walk forward” because we have a moving window that progressively traverses the whole period of the data history with a pre-established step. Algorithmic traders apply such analysis to decrease the over-optimized parameters used in the investment strategy as we don’t | + | **Walk Forward analysis (WFA) or Walk Forward optimization (WFO)** is a sequential optimization applied to an investment strategy. The name of the analysis is called “walk forward” because we have a moving window that progressively traverses the whole period of the data history with a pre-established step. Algorithmic traders apply this type of analysis to decrease the over-optimized parameters used in the investment strategy as we don’t only want a great looking backtest result, we also want a system that doesn't fail in a live, real money account. |
+ | |||
+ | {{: | ||
Read more about it at [[eas-guide: | Read more about it at [[eas-guide: | ||
- | In the "Reactor" | + | ==== Normalization ==== |
+ | |||
+ | The Normalizer is the most recent feature added to the EA Studio Trading Software Automated. | ||
+ | |||
+ | It allows the traders to simplify the trading strategies. It reduces the SL and pushes the parameters of all indicators closer to the default values. | ||
+ | |||
+ | Any changes are accepted, only if the results are better. The Normalizer doesn' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | In the Reactor context | ||
===== Perform robustness testing ===== | ===== Perform robustness testing ===== | ||
- | With the previous tools you could check if the strategy is still profitable and attempt to make it more profitable. The tools below have a different goal. The robustness testing tools let you analyze how trustworthy a strategy is. This step is very important. | + | With the previous tools you can check if the strategy is still profitable and attempt to make it more profitable. The tools below have a different goal. The robustness testing tools let you analyze how trustworthy a strategy is. This step is very important. |
==== Walk Forward validation ==== | ==== Walk Forward validation ==== | ||
- | You can use WFO as validation tool and it returns | + | You can use WFO as validation tool and it will only return |
+ | |||
+ | {{: | ||
==== Monte Carlo Validation ==== | ==== Monte Carlo Validation ==== | ||
Line 118: | Line 138: | ||
{{: | {{: | ||
- | The idea of the Monte Carlo tool is to introduce some " | + | The idea of the Monte Carlo tool is to introduce some disruptions |
The Monte Carlo tool has detailed settings that you can set on its own page. In the Validator the settings are simplified for easier use. | The Monte Carlo tool has detailed settings that you can set on its own page. In the Validator the settings are simplified for easier use. | ||
- | **Count of tests** | + | **Count of tests** |
- | **Validated tests** - Select what percentage of tests that should pass the Monte Carlo validation criteria. For example if we set it to run 10 tests and specify 90% validated tests then at least 9 out of the 10 Monte Carlo tests should | + | **Validated tests** - Select what percentage of tests should pass the Monte Carlo validation criteria. For example if we set it to run 10 tests and specify 90% validated tests then at least 9 out of the 10 Monte Carlo tests need to pass through the validation. |
==== Multi Market Validation ==== | ==== Multi Market Validation ==== | ||
Line 130: | Line 150: | ||
{{: | {{: | ||
- | The multi market tool will validate the strategy on the selected markets. The theory | + | The multi market tool will validate the strategy on the selected markets. The theory |
The tool will use the data from the broker you selected in step **2. Historical Data**. Multi Market has also its own settings in the Multi Market section in the Editor. | The tool will use the data from the broker you selected in step **2. Historical Data**. Multi Market has also its own settings in the Multi Market section in the Editor. | ||
- | Since the Multi Market tool can use only that is already uploaded it is a good idea to upload data for more than one symbol if you plan on using Multi Markets. | + | Since the Multi Market tool can only use the data that is already uploaded, it is a good idea to upload data for more than one symbol if you plan on using Multi Markets. |
**Add market** - lets you add a new test market. | **Add market** - lets you add a new test market. |