You are on page 1of 5

Member area

Impressum

Terms of use

Home

NeoTradEx

About us

Buy online

FAQ

User's Guide

Contact & Support


Like 7

NeoTradEx USER'S GUIDE


Watch also our Introductory Video !

Quick start
To start using the software using the preset parameters and prepared neural networks do the following. To install the software you must have Administrator Rights. Install the package, providing your serial number. When asked by the system confirm your Administrator Rights to continue the installation. During the installation you have to provide the Metatrader 4 software installation folder. Upon the installation procedure you should be able to see the expert NeoTradeEx in the list of expert advisors in your Metatrader 4 terminal. Remark: under Windows systems b efore than Windows Vista one must run the installation under account with Administrator Rights, since those Windows systems do not give an option to provide administrator password during the installation process. After the installation is complete you should enable Experts in your Metatrader software. Please go to Service Settings Experts and check the check-boxes Enable Expert Advisors , Allow Live trading and Allow DDL imports, uncheck Ask manual confirmation , uncheck Confirm DLL function calls (see picture please).

After that choose the time-frame and currency pair you want to trade. Drag the expert advisor NeoTradexEx on the selected currency pair. Load the corresponding parameter file (e.g. "eurusd_h1.set" file for EUR USD trading pair for the one hour "H1" time frame), which you can find in the corresponding folder (usually C:\NeoTradEx\PresetFiles).

After that the expert starts trading.

List of installed components


The installation program provides user with files: Expert advisor (folder [your_MT4_folder]/experts): NeoTradEx.ex4 Custom indicators (folder [your_MT4_folder]/experts/indicators): NeoVolatility.ex4 NeoPrediction.ex4 NeoTrend.ex4 Acessorial technical component (not for user's application): NeoTech.ex4

NeoTradEx USERS GUIDE (folder C:\NeoTradEx): NeoTradEx.chm Prepared Neural Networks and Preset Files may be found in folders C:\NeoTradEx\NeuralNetworks and C:\NeoTradEx\PresetFiles respectively.

General description of the software


NeoTradEx is a software package for Metatrader 4 (MT4) Forex platform, designed to offer easily accessible neural network methods to a common trader. The package is compiled as a library for MT4 software. The major emphasis in constructing the software has been put on the straightforwardness of use and accessibility to a general user. Experience with neural network software and theory is not presupposed. The software can be used in an autonomous trading mode (as an expert for MT4 software) as well as a reference tool for manual trading. A user of NeoTradEx package has to have a good knowledge of Metatrader platform and substantial experience of currency trading. NeoTradEx software is NOT meant for users having no previous experience with currency markets and Metatrader software. NeoTradEx software offers a reasonable prediction for all currency pairs and time-frames. But the actual performance might strongly depend on the broker spreads and commissions. That is why a care should be taken in selecting the instruments and time-frames for using the software in autonomous (expert) mode. On the other hand, prognosis offered by the software in the form of technical indicators can be integrated in your manual trading routine irrespective of the currency pair and the time-frame.

Theoretical background
NeoTradEx package uses neural network ideas and digital filters approach to smoothing of the financial time series. The emphasis is on the using the most simple and reliable techniques such as multi-layer back-propagation neural network. Neural network approach has been used in financial series prediction since decades, and has proven itself to be relevant and consistent. Neural network approach is based on using a system of inter-connected elements (neurons) having non-linear properties. It is proven that a superposition of a large number of such basic elements is able to reproduce any correspondence between input and output data.

A basic neural network is organized in "layers" (see picture please). As it can be easily seen network layers can be split into three distinctive classes: Input layer, Hidden layers, and Output layer. Input data is applied at the input layer. The neurons of the input layer carry out the initial processing of the data. Output of the input layer is connected to the hidden layer which disentangles complicated dependencies in the data. After that the output layer produces the result of the neural network processing. Depending on the nature of the output data multi-layer networks can be divided in pattern recognition and regression networks. We use pattern recognition networks which are meant to predict the current market trend direction. The gist of the learning routine consists in the following. Using historical data, the raw time series are fed into the network. As the output of the neural network the local trend direction is taken, the trend direction is determined using a so-called ideal filter. Using the standard back-propagation technique, the network learns the connection between the input and the output data. After the network has been taught it can be used to predict the market trend for the new data, and thus can be used for trading and market analysis. Training procedure has to be launched by the user of the software. Also the user can assess the VALIDATION on the validation data. The learning quality is controlled by the Mean Square Error (MSE) which can also be controlled by the user. Raw financial time series exhibit a high level of non-regular behaviour. But the neural networks are able to extract signal from noise, and the smoothing of the input data is carried out by the networks itself. As the output for the network learning we use the current market trend. During learning procedure we determine it by using the historical data in order to obtain the real (not predicted) market trend. This approach is based on using so-called non-causal (ideal) filters, which are built using digital filters, suppressing noise, and providing for zero delay in market trend evaluation. This type of filters can be used only during learning procedure, due to its non-causality.

Installation
To install the software you must have Administrator Rights. Install the package, providing your serial number. When asked by the system confirm your Administrator Rights to continue the installation. During the installation you have to provide the Metatrader 4 software installation folder. After that, the installer will put all the necessary files in corresponding folders. The already prepared neural networks ane preset files containing in installation package as well as this USER'S GUIDE you may find in the corresponding folder (usually C:\NeoTradEx). Upon the installation procedure you should be able to see the expert NeoTradeEx in the list of expert advisors in your Metatrader 4 terminal. Remark: under Windows systems b efore than Windows Vista one must run the installation under account with Administrator Rights, since those Windows systems do not give an option to provide administrator password during the installation process. After the installation is complete you should enable Experts in your Metatrader software. Please go to Service Settings Experts and check the check-boxes "Enable Expert Advisors" , "Allow Live trading" and "Allow DDL imports", uncheck "Ask

manual confirmation ", uncheck " Confirm DLL function calls" (see please picture here).

Basic usage procedure


The software works in two distinctive modes, learning mode (external variable Learn = true) and trading mode, (external variable Learn = false) Also a set of technical indicators is unpacked during the installation procedure in Custom Indicators folder of your MT4 installation. NeoPrediction indicator shows neural network prediction. NeoVolatility indicator represents the characteristic size of time series fluctuations, which is important for determination of stop losses and trailing stops. Upon the installation of the software the user should use the already prepared networks, which are included in the installation package, or start the learning procedure himself.

Parameters of the expert


____________________________________________________________________________________________________________________

Parameters relevant for both Trading and Training modes:


learn: parameter to switch between modes, false for Trading mode, true for Training mode (advanced users only). Note: Training mode is only possib le in the Strategy Tester of the Metatrader. Verbosity: 0 is less, 1 is more output into journals and log files. Depth and ValidationLength: In the Trading mode: Depth: should correspond the Neural Network file names, i.e. if we have EURUSD-xx-xx-xx-xx-x-20000-0-xx-xx.x, then Depth should be 20000 to let the expert to choose correct Neural Networks files for trading. ValidationLength: should correspond to another number from the mask EURUSD-xx-xx-xx-xx-x-20000-0-xx-xx.x, i.e. 0 to let the expert to choose correct Neural Networks files for trading. 0 here is rather an exception to mark the network files provided with package from NeoTradEx.com. If one wants to train the network by himself, this number would be rather not 0 in order to evaluate the predictability on validation events. For example one uses ValidationLength 200, then the neural network files will be something like EURUSD-xx-xx-xx-xx-x-xxxxx-200-xx-xx.x. In the Training mode (advanced users only): Note: these two parameters are the most important parameters for Training Procedure. Depth: number of events in total used to training procedure. For the real trading we recommend at least 10000 ValidationLength: number of events for validation. So all data are divided into 2 parts: (Depth - ValidationLength) events are used to train Neural Networks, and ValidationLength events are used for validation. ____________________________________________________________________________________________________________________

Parameters relevant only for Trading mode:


Parameters responsible for opening and closing orders: DeltaOpen: threshold value to open an order by the signal produced by the neural networks (see also chapter "Trading mode"), i.e. if |Signal| > DeltaOpen then order will be open DeltaStop: threshold value to close an order by the signal, i.e. if |Signal| > DeltaStop then order will be closed. If DeltaStop is larger than 1, e.g. 2, than signals are not responsible for closing the order. Parameters responsible for Stop Loss, Trailing Stop and Take Profit: VolatilityStop: parameter to evaluate Stop Loss using the volatility (indicator NeoVolatility, see chapter Trading mode) VolatilityTrail: parameter to evaluate Trailing Stop using the volatility (indicator NeoVolatility, see chapter Trading mode) VolatilityTake: parameter to evaluate Take Profit using the volatility (indicator NeoVolatility, see chapter Trading mode). If it is 0, then take profit is not used.

Money management parameters:

Fixed: true to trade with a fixed lot, false to trade with a variable lot which is calculated as a fraction of the Free margin, capital available for trading. Lots: the value of fixed lot. Relevant ONLY in case Fixed=true Capital: the fraction of the Free margin, capital available for trading, to be a value below 1 (values around 0.1 are recommended). Relevant ONLY in case Fixed=false MaxOrders: the maximum number of orders your expert can open simultaneously. It is recommended to set at 1. _____________________________________________________________________________________________________________________

Parameters relevant only for Training mode (advanced users only):


Parameters controlling the training process: StopMSE: The training process stops after the error training MSE is smaller or equal to the value StopMSE. 0 is recommended. MaxTraining: manual restriction on the number of training iterations to stop the training process. Normally training stops by the reaching StopMSE. 10000 is default value. Must be changed only in exceptional cases. _____________________________________________________________________________________________________________________

Trading mode
After the installation you already have prepared Neural Networks supplied with NeoTradEx software. You can use them for prediction and actual trading. Choose the corresponding parameter file for your time-frame and currency pair. Before applying the expert to real trading you can test it in the Strategy Tester. You may also decide to train your own networks. This procedure is described in the next Chapter and addressed to advanced users. It is recommended to test these Neural Networks using the data which was not used during the learning procedure. To test that the learning procedure was successful you can also try to run the expert using the learning data. The neural network produces prediction of market trend, a digit between -1 and 1. -1 signifies a strong prediction of negative trend, +1 strong prediction of the positive trend. It is reasonable to use the same values of Stop Loss, Take Profit and Trailing Stop parameters which were included in the preset parameters files provided in the installation package. Please note that the parameters of Stop Loss , Trailing Stop and Take Profit are not in price points but in time steps, and the actual value of them is calculated based on the volatility (the average price movement). For example, if we set the stop loss parameter at H1 time-frame to be 24, it means that we use the daily average price movement to estimate the optimal stop loss position. The same applies for Trailing Stops, if set its parameter to be 1 it means that we use an average price movement in one hour as the measure of minimal price movement for which it makes sense to set TrailngStop. The parameter for the Stop Loss is called VolatilityStop, for the Trailing Stop is VolatiliyTrail and for the Take Profit is VolatilityTake In all three strategies you can also choose different level of network signal for opening the positions. The position will be opened if the absolute value of a signal is larger than variable DeltaOpen. The position will be closed if absolute value of a signal will be larger than variable DeltaStop. If DeltaStop is larger than 1, then positions are NEVER closed using the signals. You can also try to optimize these parameters using the validation data. The remaining parameters in the properties of the trading expert control the money management. You can choose to trade by a fixed lot. In this case you choose Fixed parameter to be True, and choose the fixed lot value in the Lots variable. You can also choose to trade with a variable lot which is calculated as a fraction of the Free margin, capital available for trading. In this case you should set Fixed to be False, and Capital variable to be a value below 1 (values around 0.1 are recommended). Parameter MaxOrders determines the maximum number of orders your expert can open simultaneously. It is recommended to set at 1. If you prefer to trade manually, you can still use the neural prediction by using the indicator NeoPrediction (see chapter Indicators). It has values between -1 and 1, negative values denoting the falling trend and positive values denoting the rising trend.

Indicators
The package NeoTradEx contains also three user indicators: NeoVolatility NeoTrend NeoPrediction The NeoVolatility indicator shows the average price movement, i.e. represents the characteristic size of time series fluctuations. This indicator is used in evaluation of Stop Loss, Trailing Stop and Take Profit (see chapter Trading Mode). Mathematical definition: Sum( |Price(i)-Price(i+Step)|, i=1...Length ) / Length Parameters of the indicator: Step: the number of events (bars on chart) the difference in price (i.e. movement of price) is calculated for. For example for the H1 timeframe, if Step=2, then we want to evaluate the average price movement for 2 hours, if Step=24, then we consider the price change during one trading day Length: the length for the averaging. For example, if one has 500 then we average the price movement over 500 events (approximately 1 month for H1 timeframe) During the trading by expert advisor NeoTradEx the order parameters Stop Loss, Trailing Stop and Take Profit are calculated with Length=500 and with Step set up as VolatilityStop, VolatilityTrail and VolatilityTake parameters respectively. The NeoTrend indicator shows us an output of a digital filter applied to the price time series. The output of the indicator is used as an input during the process of Neural Networks training. The indicator has no external parameters. The NeoPrediction indicator shows the trading signals produced by neural networks, i.e. shows the neural network prediction. The neural networks produce prediction of market trend, a number between -1 and +1. Negative values denoting the falling trend and positive values denoting the rising trend. The closer the signal to +1 (-1) the s tronger is a neural networks prediction of rising (falling) trend on a market. If preferred one may use the indicator to trade manually. Parameters of the indicator:

Verbosity: 0 is less, 1 is more output into journals and log files. Depth: should correspond the Neural Network file names used for prediction, i.e. if we have EURUSD-xx-xx-xx-xx-x-20000-0-xx-xx.x, then Depth should be 20000 to let the expert to choose correct Neural Networks files for predictions. ValidationLength: should correspond to another number from the mask EURUSD-xx-xx-xx-xx-x-20000-0-xx-xx.x, i.e. 0 to let the expert to choose correct Neural Networks files for prediction. 0 here is rather an exception to mark the network files provided with package from NeoTradEx.com. If one wants to train the network by himself, this number would be rather not 0 in order to evaluate the predictability on validation events. For example one uses ValidationLength 200, then the neural network files will be something like EURUSD-xx-xx-xx-xx-x-xxxxx-200-xx-xx.x. IndicatorDepth: the number of bars on chart the line for the prediction will be drawn. One should not take this number to high since it requires some RAM and CPU capacity of your PC. If you experience problems with the representation of the indicator on chart, then decrease IndicatorDepth to 100. After successful start of the indicator NeoPrediction, you should observe messages, similar to the one shown below, in the expert tab of your terminal, otherwise something is not correct:

Note: if you do not need indicators, we recommend to remove these from the chart to increase the performance of your PC!

Training Procedure (for advanced users)


The training mode is switched on by setting the parameter Learn = true. The learning process is carried out in the Strategy Tester part of the Metatrader software. Before launching the training process you have to select in the Strategy Tester the currency pair, time-frame, and the calendar days for the start and the end of the historical data used for training and validation of the training results. The start and the end days depend on your choice for Depth variable (see below). The "golden rule" is that for the time frame H1 for every 500 events in Depth one chooses at least 1 calendar month, i.e. if Depth=5000, then one takes at least 10 monthes between the start day and the end day. IT IS ALWAYS SAFE to take the start day in such a way that period of time is larger than the one calculated by the golden rule since data taking for the training begins from the end day and proceeds to the past. For other time-frames number of events must be corrected respectively: for H4 125 per month, M30 1000 events, M15 2000, M5 6000 and finally for M1 time-frame 30000 events per month. You should choose "Open price" model in the drop-down bar in the tester. After that choose the corresponding parameter file for your time-frame and currency pair. Before describing the training parameters and training process the notion of learning and validation data should be clarified. The learning data is fed into the network during the learning process. After the learning process is finished, the network has learned the data, and it reproduces the input output relation in the data with an error which can be made arbitrarily small. But this is not the case if we apply some new data to the network, not the data we have taught the network to reproduce. In order to evaluate the prediction quality on the new data we take a part of the recent historical data for validation. An example would be in place. Suppose you would like to use the network prediction for EUR USD pair, H1 (hourly) time-frame. You would like to validate the prediction quality on the last month data. Then you should choose the Depth parameter to be, for example, 5000, and parameter ValidationLength 500 (one month is approximately 500 bars on H1 timeframe). It is not recommended to use validation length below 100 or above 500-1000. In the first case the length is too short to carefully assess the results, in the latter case we neglect too much of the recent data in the learning process. If you set the validation length at zero all the data will be used for the learning procedure, including the most recent data. The learning length should be above 5000 for all time-frames, it is reasonable to have the length of the learning set to be at least 10 times the length of the validation set. You can also set the learning error in the parameters of the expert, the network will be taught until this error is reached, It is reasonable to set the error to be zero. Also you can choose the level of log details (variable Verbosity: "0" is less, "1" is more output) which will be shown in the Strategy Tester Journal during learning procedure. After all the parameters are set start the learning procedure. During the training you can see the training iteration number, the training error "training MSE", the prediction quality on the training data ("CORRELATION on training events") and on the validation data ("VALIDATION"). The training stops after training error reaches the preset value "StopMSE". If the preset value is zero, correlation on training events will be 1. You can stop and resume the learning procedure any time, it will be picked up after the relaunch. The VALIDATION should be above zero. Good value of the VALIDATION is around 0.10-0.20. If the VALIDATION is too small or negative it is recommended to adjust the length of the learning and validation data.

Conclusion, best practices


At the end of this manual it would be appropriate to offer some general recommendations to maximize the potential of the software usage. There's a great diversity of currency pairs and time-frames at which they can be traded. As it is well-known financial time series exhibit fractal properties. It would mean, in principle, that the trading at all the time-frames would be similarly profitable. But in real world brokers maintain "spread ", that is the difference between the current Bid and Ask prices. This spread does not depend on the time-frame, but the average Stop Loss naturally does. Therefore at smaller time-frames the effects which are imposed by non-zero spread are much more substantial than at higher time-frames. As a result of this we recommend to use our software in the trading mode starting from 15 minute time-frame. Also spread depends heavily on the given currency pair, and as a rule is much higher for less liquid currency pairs. That is why we do not recommend to use our software in the automated mode for "exotic" currency pairs. But you can still use the network prediction for your manual trading (which is shown in the indicator NeoPrediction). Also you can use this indicator for manual trading at lower time-frames. It is recommended to retrain the networks regularly. So we update our networks time to time. Customers are notified about current update via email and may download updates of the Neural Networks and the Preset Files (these always should be updated together) from the member area on the NeoTradEx web-page. If you train your own Networks it is up to your own responsibility to retrain Neural Networks regularly, we recommend at least once or twice per month. If you do not obtain satisfactory prediction using the validation data try to increase the learning data length (variable Depth). Besides, you can also optimize the trading parameters (instead of using the preset ones). Please note, that the parameters "Depth" and "ValidationLength" appear in names of files for Neural Networks to distinguish between various Neural Networks. So if you want to use some prepared networks you must use the same numbers for this parameters when starting trading. In such a way you allow the software to choose correct network files.

2012 - NEOTradEx - Trading Software

You might also like