Sei sulla pagina 1di 38

FOREX ANYWHERE

The company puts ultimate confidence in its products and services, offering a long-term guarantee.
Working Modes
Forex Tester has two working modes: History Mode and Testing Mode.
The diagram below shows the relationships between these two modes:

Import Export
history history
data data

Generate
tick data
History Testing
Mode Mode

History Mode is designed for the following purposes:


1. It stores complete historical data for all currency symbols.

2. In this mode you can edit the Symbol list, add or delete new currency
pairs and adjust their settings.

3. You can import/export historical quotes to/from the database. By default,


after installation of the program, 14 major currency pairs are already preset
and one month of history for each of them is already present. Only a
small amount of history was included in the installation for demonstration
purposes and to avoid making the installation package too large. You can
download a complete history on our site from Jan 1st, 2001 up to today.
We update this database every month.

4. Next, an important purpose for History Mode is to prepare data for


Testing Mode. You can choose whichever symbol(s) from the database that
you want to test and for what ever period of time. For example, if you may
want to test some strategy for EURUSD for a period from 2004 to 2006.
In this case you need to prepare this data for Testing Mode by generating
ticks for this currency for the selected period of time.

5. Finally, you can use this mode as a static mode to work with charts. You
cannot place orders and replay history in this mode, but all other functions
for formatting charts and for history analysis are available.

2
Testing Mode is designed to emulate a trading terminal for
practice and testing of trading strategies.
It allows to:

1. Replay historical data in “real time” at a user-selected speed. This enables


the trader to see how the market changes; he can pause the progression
and analyze the current situation or replay any period as many times as
he desires.

2. Make trades based upon historical data, just as in real life.


Observe changes of margin, balance and equity (and other statistical
information) and make trading decisions.

3. Test automated strategies.

You can switch between these two modes using this drop down list:

Symbol List
Symbol List is a list of all currency pairs and other symbols (such as stocks,
indices, futures) imported to the program. It stores all settings for each
symbol, and you can add, delete and modify symbols in this list.
These operations can be done only in History Mode; in Testing Mode, you
can only view settings but cannot modify them. Furthermore, in Testing
Mode, Symbol list represents only those symbols for which ticks were
generated in History Mode, while in History Mode you can view all of
them.

You can import historical data only for symbols which exist in the Symbol
list. For example, if you want to import new data for symbol EURGBP
and you do not have this symbol in the list, you first need to create this
symbol and then import history for it.

3
To open the Symbol list dialog go to Tools -> Symbol List menu:

or press the button on the toolbar:

4
Dialog:

You can Add, Delete and Edit symbols with this dialog.
To edit a symbol, select it and press the Edit symbol button:

With this dialog you can define a symbol name, its type, currency,
spread, swaps and other parameters. For more information about these
parameters press the Help button.

5
IMPORTING DATA
You can import historical data into Forex Tester from different sources in
text or in Meta Trader format.
We provide free historical data on our site from Jan 1st, 2001 up to today
(www.forextester.com/datasources.html). We recommend using this source
of data as one of the best and most high quality sources.
Also you can use other sources that can provide data in text format or
import history from MetaTrader (this however is not recommended as
there could be gaps in history).

It is highly recommended to use a 1 minute time slice for importing data


into Forex Tester, which will be used to recalculate all higher time spans. If
you import, for example, 15 minutes time slices, time spans lower than 15
minutes may be incorrect.

Importing history is enabled only in History Mode; to open the dialog


box go to the File -> Import History Data menu:

or press the button on the tool bar:

6
Then select a file to import. If you downloaded this file from our site
packed with ZIP, unpack it first and save it as a text file using Windows
Explorer.

When the file is selected, the program will try to find an appropriate
symbol to which to import this data. You can import history only to an
existing symbol in the Symbol list. If there is no such a symbol, you will
need to create it first. See Symbol list. Furthermore, you can define a time
shift for this data. On our site we provide data according to GMT + 1 time
(East European Time), but you may change the time zone by shifting the
quotes time by a number of hours.

7
After you pressed the Next button, the program will try to determine the
format of the source file. With data from our site you do not need to
make any changes, the format will be recognized automatically. But for
other sources you may need to adjust some settings, for example, the date
format or order of columns. In the preview window you can see results of
converting the first 100 lines. Sometimes it can report some converting
errors (probably due to a source file that has some extra header lines), if the
number of errors is not very big you can ignore them.

8
If the import was successful, you will see next message box:

Newly imported data will be correctly merged with previously imported


data. So, if you’ve already imported 8 years of history and then import new
data for last month, it will be merged with the existing data. If you import
some new data, part of which overlaps a section of the old data – the older
data part will be deleted and replaced with the new data.

generating ticks
Before starting on testing mode you need to prepare data for it. In History
Mode you can view the complete history for all of the imported symbols
and for the full time period. In many cases, testing all of them may be too
taxing; usually one needs 1 or 2 currencies to test and not from the very
beginning, rather, for example, only for 1 year. The speed of testing can be
improved and unused symbols hidden. Also you can use different styles of
price movement simulation.
History Mode stores data as 1 minute time slices, and most other data
sources provide data in this format as well. So, in order to prepare data for
testing, we need to convert these 1 minute time slices into ticks - a series
of small price changes within 1 minute slices.

You can generate ticks only in History Mode; to open the dialog box
go to File -> Generate Ticks menu:

or press the button on the tool bar:

9
In this dialog box, select the period of time, check symbols you want to
test (you can test one, or more symbols at the same time) and the method
of price interpolation. There are 3 methods available:
Generate randomly by real volume – the number of ticks within each 1
minute time slice will be equal to the volume of information for this bar
and will be distributed randomly inside this time slice;
Generate point by point – the number of ticks inside each time slice will
be defined by slice size and ticks will be generated with a 1 point increment
from open to close including beginning and end;
Generate by Open/High/Low/Close -each time slice will contain 4 ticks or
less equal to Open/High/Low/Close of this bar (in the case when Open =
High, or Low = Close there may be less than 4 ticks). We
recommend using the last method of tick generation; it is the fastest and
provides good quality for testing.

Results of generating ticks by different methods:

1. Ticks are generated randomly by real volume. There are many ticks and
they are spread randomly. Testing will be slow, but if your strategy uses
volume information it could be important.

10
2. Ticks generated point by point. Many ticks may be generated if you
have large 1 minute time slices; the advantage is that prices will go
smoothly through every point in the slice without discontinuities.

3. Ticks generated by Open/High/Low/Close. Less ticks are generated and


they are all important. Fast and good enough for most of cases.
We recommend using this method.

Note: all methods of tick generation will make absolutely the same bars during
testing; they affect only price movement inside the 1 minute slices

11
Start Testing
After importing history and preparing data for testing by generating ticks,
we can start testing some trading strategy. Switch to Testing Mode with
this drop down list and press the Start Test button;

the following dialog will be displayed:

You can start testing from the first date in the range of generated ticks (if
you’ve generated ticks from Jan 1st, 2005 to Feb 31st, 2005, testing will
start from Jan 1st, 2005). This dialog has 2 more options with which to
start testing:

12
or, you can define the starting date, which could be useful if you generated
a large tick history and want to test some situations on different dates.

The last two options are enabled only in the registered version and
unavailable in the demo version. After you’ve selected the preferred option,
press the “Start testing” button. If you did not select “Set Pause mode after
connect” option, then you will see how the price changes and forms new
bars. If the “Pause” option was set, the program will wait until you press
the “Pause” button again to continue.

13
Now you can test your trading strategy by placing orders and observe how
your strategy works (this will be discussed in subsequent tutorials). You
can regulate the testing speed with the folowing control bar:

1. Pause button - you can set pause mode to pause price changing in
order to analyze the current situation. Furthermore, Pause mode enables
buttons 4, 5, 6. Pause can be set and released with the right-SHIFT key.

2. Speed of price change. You can define how fast your testing time
progresses using this track bar.

3. Tick package size. Here you can set how often to update charts, if you
set “Every tick” - charts will be updated after the processing of every
tick, if you set 15 minutes - charts will be updated after processing 15
minute tick packages. This also affects speed.

4. Move back by a single bar. This button is available only when Pause is
in effect. It will delete 1 bar in terms of the current timeframe. If current
timeframe is 1 hour - you will go back 1 hour, if you had some closed
trades they can be restored. You can also use the BACKSPACE key for
this.

14
5. Move forward a single bar. This button is available only when Pause is
set. You will move forward 1 bar in terms of the current timeframe.
If the current timeframe is 1 hour - you will move forward 1 hour. It
affects all the charts. You can also use the SPACE key for this.

6. Move forward by tick package size. This button is available only when
Pause is in effect. You will move forward according to the time defined
by the tick package size (3). You can use the F11 key for this.

This is visual testing mode when you can see your trades and place them
manually. Forex Tester also can test automated strategies written with C++
and Borland Delphi. You can find API and examples for how to write
custom indicators and strategies in <Forex Tester>\Examples\ folder after
installation. API help is enabled over Help -> Indicators API/Strategies
API menu in Forex Tester. You can backtest automated strategies with the
Fast Test option or with the Strategy Optimizer tool.

15
Placing orders

After starting to test you can place orders. There are 2 types of orders
- market orders (when you immediately open a position according to
current market price) and pending orders (when you place an order at
some price and it will be triggered when the market price hits this level).
You can place, modify or delete orders with this tool bar:

1. Place market order - opens market order dialog. (F2)

2. Place pending order - opens pending order dialog. (F3)

3. Modify order - you first need to select the order in Open Positions or
Pending Orders lists. (F4)

4. Close position - closes open position. You first need to select the order
in the Open Positions list. (F5)

5. Delete pending order. You first need to select pending order in


Pending Orders list. (F6)

These buttons are duplicated in the Orders menu:

16
Market order dialog. With this dialog you can place a new market order.
Use drop/let buttons to pick up price directly from the chart. You can also
type in the price directly or use a simple calculator on the right define
calculation mode - Sell or Buy. The trailing stop bookmark allows you to
define trailing stop parameters for this order.

Pending order dialog. With this dialog you can place a new pending order.
Use drop/let buttons to pick up price directly from the chart. You can also
type price directly or use a simple calculator on the right to calculate Stop
Loss and Take Profit values (order type will affect these calculations).
The trailing stop bookmark allows you to define trailing stop parameters
for this order.

17
In addition, you can place orders by means of a right mouse click on the
chart, which brings up the following popup menu:

This menu allows you to pick up a price from the chart at that point,
where you clicked with right mouse button. As you can see it shows this
price in menu (0.7003). In this example you have 3 choices - you can Buy
with predefined stop loss at 0.7003, place a Buy Limit order at this price
or place a Sell Stop order at this price.

18
There are 2 other options to place orders - you can make a quick buy or sell
with predefined parameters. It is better to use hot keys for this (Ctrl+B and
Ctrl+S), it allows placing orders quickly with many predefined parameters
such as stop loss/take profit, trailing stop, lot size. You can define these
parameters in the Tools -> Options -> Trading menu:

If you set only 1 order in the list, then after pressing Ctrl+B/Ctrl+S the
order will be set immediately, otherwise you will be asked to choose which
order to execute:

Open the order dialog box by clicking on icons or in context menus within
bottom panel or price chart.

19
Modifying orders
After placing some orders (market or pending orders) you can change
some of their settings.
For market orders you can change only stop loss and take profit levels, for
pending orders you can also change the price. You can also modify trailing
stop parameters for both types of orders. First select an order in the Open
Positions or Pending Orders list:

Then, use the Modify order button on the tool bar (F4):

or right-click on the order and use the drop down menu:

20
or double click with mouse on the order; in this case the chart will be
moved to the time when the order was placed; this time will be highlighted
with a vertical line and the modify dialog will be opened. This is a dialog for
market order; you can modify parameters with this dialog (parameters that
cannot be modified will be grayed out); you can also close this position:

This dialog is for pending orders; you can modify parameters or delete
pending orders with this dialog:

You can also use tool bar buttons, hot keys or drop down menus to close
a position or delete pending orders.

21
Modifying INDICATOR
Insert Indicator into the price chart by choosing it from the drop-down
menu. You may modify indicator properties in the dialog box.

Edit indicator properties or delete them from the price chart by opening
the Indicators List.
Indicators are added separately for every timeframe - different timeframes
have individual indicator bundles.

22
DRAWING BAR
Use the special menu bar for drawing.

Select graphical instruments on the price chart by double-clicking on


them.

For editing properties of graphical elements (lines, Fibonnaci etc.) double-


click on them and select the section from the context menu.

Define parameters of graphical elements in the properties window.

23
LEFT PANEL
The left panel contains 3 subpanels:

1. Currency - shows currency name, bid, ask and spread values for visible
currencies.
2. Tick chart - shows every tick diagram for the selected currency.
3. Stats - trading statistics.

The currency panel shows currency name, bid, ask and spread values for
visible currencies during the testing process in Testing mode. This panel is
unavailable in Edit mode.

The Tick chart panel displays a tick diagram for the selected currency. You
can select a currency from the Currency panel or by selecting currency
from the tab in the main chart.

The Stats panel contains many trading process statistical parameters.

24
BOTTOM PANEL
The Bottom panel consists of 4 subpanels:

Open Positions - you can view opened positions here, initial deposit,
balance, equity, margin and free margin.

Pending Orders - you can view list of pending orders here.

Account History – a list of closed positions.

Journal - system messages, logs and strategy messages.

Note: To hide/unhide bottom panel press Ctrl + Enter.

25
DEFINE PARAMETERS
Define the start capital for testing.

Define parameters for quick-put trades.

Define horizontal scrolling speed of price chart using the mouse. Define
mouse sensitivity to lines (for clicking and dragging). Define magnet
sensitivity of graphical elements to OHLC of price bars when magnet
mode is active.

26
INSTANT ORDER EXECUTION
There are two basic approaches to develop and test trading strategies in
Forex Tester.

The first approach, and an essential one for the majority of traders - is
manual testing. Traders can make virtual trading decisions based upon
historical data. Several kinds of orders are supported: market order, limit
order and a stop order, breakeven stop order, predefined set of “packet”
orders.

All of these trading decisions are made in nearly true “real life” conditions
- updating historical prices. But the trader gets additional advantages.
He/she can choose the period of testing and regulate the speed of price
updates. The trader can even backstep and “replay” the history once again.

All executed trades are documented and stored in “Account history”.


Continuously updated Equity, Balance, Margin and Drawdown graphs
display the result of trading decisions to provide the trader with effective
feedback. In addition, Statistics are updated in real-time to show values
such as “Total trades”, “Profit Trades”, “Average Profit”, “Profit Factor” and
others. All executed trades can be monitored on charts.

27
INSTANT EXCUTION ORDER

The second approach is developing mechanical trading systems. This


approach is somewhat complicated and requires that the trader be familiar
with programming languages; the process of writing such a system assumes
a programming environment; testing a trading algorithm with strict rules
in a prompt and precise manner can be useful. Our testing engine provides
“tick by tick” calculations, 3 different types of tick generation, portfolio
testing of one strategy on many currencies and moreover - portfolio testing
of several trading strategies simultaneously.

There are 2 working modes in the program - Edit Mode and Testing Mode.

Edit Mode is designed to store all imported history, allowing the importing
and exporting of history, editing the currency list and preparing data for
Testing mode.

Testing Mode is designed for working with pregenerated data arrays in


Edit mode, trading on historical data, testing trading strategies, reviewing
statistics and profit diagrams.
This diagram shows the relationship between two modes:

Import Export
History History
Data Data

Generate
Tick Data
History Testing
Mode Mode

28
DRAW HORIZONTAL
Draw simple horizontal or vertical lines, trendlines (ray), polylines and
parallel lines - it’s all very convenient.
Fibonacci retracements/extensions, Fibonacci fan, Fibonacci arcs &
Fibonacci Cycles are useful for determining turning points.

Andrew’s Pitchfork uses the concept of the action/reaction principle.


Line properties, such as color, style, width can be modified. A line “snap
to bar” option is available.

29
INDICATORS LIST
ForexTester has an open interface to add user indicators (API). You can
read about it in our forum in the “about indicators” topic

Currently there are more than 30 most popular indicators that are
included in Forex Tester:

• AC (Accelerator Oscillator)
• AMA (Adaptive Moving Average)
• ADX (Average Directional Movement Index)
• Alligator
• ATR (Average True Range)
• Awesome Oscillator
• Bear’s Power
• Bollinger Bands
• Bull’s Power
• CCI (Commodity Channel Index)
• Envelopes
• FATL
• Fractals
• FTLM-STLM
• Ichimoku Kinko Hyo
• Keltner Channel (original)
• Linear Regression Channel
• MACD (Moving Average Convergence Divergence)
• MA Crossover Signals
• Momentum
• Moving Average (Simple, Exponential, Weighted, Smoothed)
with shift option
• OBV (On Balance Volume)
• PCCI
• PFE (Polarized Fractal Efficiency)
• Pivot Points
• Price Channel
• Price Daily Range
• ROC (Rate of Change)
• RSI (Relative Strength Index)
• Stochastic Oscillator
• Range Expansion Index
• Ultimate Oscillator
• W%R (Williams’ Percent Range)

30
INDICATORS LIST

Indicators can be added to different timeframes independently, so every


timeframe can have its own set of indicators.

We are constantly working on increasing the number of indicators in our


program.

31
STATISTICAL VALUES
Statistical values are updated on every executed trade, so by monitoring
them you’ll get actual information about the trading process, which allows
you to modify your trading behavior according to risk – and money
management.

Statistics include: Total Trades, Profit/Loss Trades, Trades/Day, Trades/


Month, Max Profit Trade, Max Loss Trade, Net Profit, Gross Profit, Gross
Loss, Average Profit, Average Loss, Max Drawdown, Profit Factor, Profit/
Loss Expectancy.

In addition, the Equity and Balance graphs are updated in real-time.

32
FOREX TESTER
Forex Tester Safesky Software allows you to import an unlimited number
of currency pairs and years of history data almost in any possible text
format (ASCII *.csv, *.txt) and in MetaTrader 4 history format (*.hst).
We strongly recommend to import 1 minute data for accurate testing
(it is possible to import higher timeframes but testing results may not be
as reliable).
Here you can download history data for the most common currency pairs
Source: Forexite Ltd
Price: Bid
Time: GMT+1 Central European Time
Quality: one of the best from sources

Symbol Data Range Size


AUDJPY Jan 2001 - 01 Sep 2009 16.5 MB
AUDUSD Jan 2001 - 01 Sep 2009 14.5 MB
CHFJPY Jan 2001 - 01 Sep 2009 16.5 MB
EURCAD Jan 2001 - 01 Sep 2009 19.1 MB
EURCHF Jan 2001 - 01 Sep 2009 16.6 MB
EURGBP Jan 2001 - 01 Sep 2009 14.0 MB
EURJPY Jan 2001 - 01 Sep 2009 19.1 MB
EURUSD Jan 2001 - 01 Sep 2009 17.1 MB
GBPCHF Jan 2001 - 01 Sep 2009 21.0 MB
GBPJPY Jan 2001 - 01 Sep 2009 21.1 MB
GBPUSD Jan 2001 - 01 Sep 2009 17.9 MB
NZDJPY Jan 2001 - 01 Sep 2009 13.2 MB
NZDUSD Jan 2001 - 01 Sep 2009 11.7 MB
USDCAD Jan 2001 - 01 Sep 2009 14.9 MB
USDCHF Jan 2001 - 01 Sep 2009 18.0 MB
USDJPY Jan 2001 - 01 Sep 2009 17.2 MB
XAGUSD

33
SCREEN SHOTS

Multi-window interface

Placing orders from screen

34
Market Orders

Modifying orders

Drawing tools

35
Indicators

Statistics, Equity and Balance graphs

Trade History on Charts

36
A Description of How the Forex System Operates
Data Gathering:

The data gathering is performed by API connections to 50,000 different


links in various places and a wide range of brokers around the world.
In effect, we generate data gathering up to eight years back and the
system learned how the market behaves and how the brokers behave
during essential periods in the Forex market, and this is over a decided
time period that can be set by the program. After gathering the data over
time, the system creates special files that are based on unique protocols
which grant an advantage in analyzing events that took place and how
the market and its managers behaved during the given time, during real
market conditions.

In effect, we’ve created one enormous broker based on 500,000 pieces


of data every second and for every event that is received during the data
gathering all over the world. The new files are managed by the system in
a unique work environment based on artificial intelligence, statistics and
mathematical algorithmic processing, thus the accuracy in the
results is remarkable and true in relation to the market which is conducted
in real time. After the data gathering stage has concluded, the stage of data
analysis begins, all in relation to the state of the market during that day of
data gathering.

The System:

The system is capable of connecting to Linux API & Windows API.


The data analysis system works in real time by means of algorithmic
directing of advanced mathematical analyses and of course is based on
artificial intelligence according to data gathering during the first stage of
the systems operation. The system operates in a synchronization of 24
prime per second.

It is installed at 2000MS – this prevents seconds of delay in performing


system synchronization. After data analysis, the system buys and sells
through an automatic strategy and this is with a low number of operations.
This lowers the level of activity for the Forex system.
The system can be set according to any model that exists in the Forex market.
The Forex Anywhere system, despite the complicated mathematical aspects
which it’s based on, is robust and does not require excessive resources from
the server system which it is installed on.

37
w w w. s a f e s k y s o f t w a r e . c o m

Potrebbero piacerti anche