Online Documentation
Getting Started
Main NAT Window Interface
Automatic Buy/Sell Button Location
Optimizing MT4 News Sources
About Log Files
Creating
News
Scripts
-
Getting Started,
Basics
-
Displaying Info in
Results Panel
-
Creating Additional
Labels
-
Using Regular
Expressions
-
Trade Signal
Functions
-
Other Useful
Functions
- Calling External DLL Functions
Custom News Sources
Getting Started
1. Setup the news sources (for MT4 news sources)
Some MT4 brokers
known to provide market news (for real accounts) are: FxPro, EXNESS,
NordFX, MIG Bank, Alpari UK/US. This is not a complete list of brokers with news,
you can try other brokers also. It is not required to trade with any of
these brokers, they can be used just for receiving the news. For trading
almost any broker can be used, it only needs to support one-click trade
execution.
If you don't have MT4 real accounts, investor logins/passwords which can be
often found on the web also work OK (have the news feed). Demo accounts
usually don't include the necessary economic news in the news feed.
Click "Options" in NAT and add the MT4 news sources (MT4 terminals need to be
installed first to add them). For news to be readable,
make sure in MT4 terminal options "Enable news" is checked.
For testing the news reader you can try the following MT4 broker
with investor access:
Broker name: EXNESS
MT4 download link:
http://files.metaquotes.net/exness.ltd/mt4/exness4setup.exe
Server: Exness-Real
Login: 19947
Password: j2tsf24r
Recommended Data Center (click on MT4 connection status image to
select): N/A
NAT settings:
Short name: EXN
Window title pattern (case sensitive): EXNESS
Be aware that the news tab in MT4 terminal may not appear immediately,
until any news are received for the first time. During weekend there may
be no new news. Also, the default charts in EXNESS won't load (EURUSD,
GBPUSD, etc.) and will display "Waiting for update". This is because
this broker uses different symbol names ("EURUSDm", "GBPUSDm", etc.).
All charts can be closed, they are not necessary to receive the news.
To receive info about all recommended news sources (access info, setup
instructions, settings), including one very fast custom news source,
please purchase the full version. All news sources are free, there are
no extra costs to setup and use them. Click here
for more info.
Launch the MT4 terminals. You can use the "Launch MT4s" button in NAT to
launch them all at once. It is not required for terminals to be visible,
you can click "Hide All" to hide the windows (terminals will run in
background).
Click "Start" in main window to check that the news headlines are
readable by NAT.
Read about optimizing the news sources here.
2. Find tradable news and
determine the triggers (consensus values and deviations) to use
The following sites can be useful:
http://www.forexpeacearmy.com/forex_news_calendar/ - you can also
view historical price action of news events (click the archive icons in
column "More" to view all history). Very useful for researching
tradable news, to select currency pairs, and to find the deviations to
use.
http://www.dailyfx.com/calendar/
http://www.easy-forex.com/financialcalendar.aspx
http://www.forexfactory.com/calendar.php - forecasts (consensus) can
be outdated.
NAT includes scripts for the following
economic indicators:
Canada Core CPI
Canada Core Retail Sales
Canada Employment Change (includes Unemployment Rate)
UK CPI
UK GDP
UK Interest Rate
UK Interest Rate + APF (Asset Purchase Facility)
UK Retail Sales
US ADP Report
US Consumer Confidence
US Core CPI
US Core Durable Goods Orders
US Core Retail Sales
US Existing Home Sales
US GDP
US Interest Rate
US ISM Manufacturing PMI (includes Prices Index)
US ISM Non-Manufacturing PMI
US Nonfarm Payrolls (includes Unemployment Rate)
US Unemployment Claims
To trade other news releases you can
create your own scripts, if the used news sources provide the necessary
economic data.
Note: for MT4 brokers news are usually
provided by the Dow Jones news agency. If you have news sources from
other providers the headline patterns used may be not be compatible and
may need to be updated.
3. Edit the news script(-s) and
setup the triggers using the News Script Editor (NSEditor)
WARNING:
be aware that you need to edit the scripts and update the triggers
(consensus numbers and deviations) for each trade!
Open the script for news event(-s) you want to trade and update the
consensus and (optionally) deviation numbers.
For existing scripts the recommended deviations are included and
recommended currency pairs to trade are provided in comments, but it is
advised to do your own research to determine the best settings. Usually
for US news good pairs to trade are USD/JPY and EUR/JPY, for UK news -
GBP/USD, for Canada news - USD/CAD and EUR/CAD. Be careful to not choose
the wrong currency pair to trade!
You can test the scripts with example,
made up headlines by using the "Testing sandbox" in the editor.
4. Trade the news
It is best to prepare about 10 minutes or
more before the news are released.
Stop all downloads and close all other unnecessary programs that use the
internet connection for best trade execution speed.
When the script(-s) are ready and according to the news calendar
schedule news are soon to be released, prepare for the trade:
4.1. In NSEditor, click "Attach" button
to activate and initialize the script you want to use.
4.2. Make sure all MT4 terminals used for news reading are launched.
4.3. Launch the trading broker platform, open the order window(-s),
select the currency pair you have chosen to trade and set trade size
(lots/units).
If these are your first news trades, it
is advised to trade on either demo account or use a small trade size.
4.4. Click "Coords" button in main NAT window and setup the broker order
window button coordinates (BUY/SELL, also BUY+/SELL+, if you want to
differentiate the trade size) by using the "Q", "E", "T", "U" hotkeys.
Example: move the mouse cursor over order window BUY button and press
"Q" to set the coordinates.
Coords or NAT window needs to be active for hotkeys to work. All
settings are applied immediately, you can close the Coords window when
done. Coordinate settings are not saved when NAT is closed, they need to
be reentered each time NAT is launched.
Note: In virtual machines (VMWare, Virtual PC) the simulated mouse
pointer movement may appear to not work, however the mouse clicks should
still be registered correctly.
4.5. Click "Start" in main NAT window to
start the news reader and process the incoming news.
4.6. About 1 minute before the news are
released:
- Click "autoexecute" checkbox to
enable the auto-clicker.
- Advised: hold the mouse cursor over
"autoexecute" checkbox and monitor the broker spread for the
selected pair and the price action. This way in case the spread is
increased too much or the price spikes before your get a signal (if
you receive news too late), you can disable the execution of the
trade by quickly clicking the "autoexecute" checkbox again to
disable automatic clicking and thus prevent a potentially bad trade.
- If you get a signal (this will
appear in NAT signal panel) and the trade is executed, use your
discretion to close the trade.
Main NAT Window Interface
In case some main window interface functions are not clear at first,
here it is fully explained:

1. Opens the Manual
Buy/Sell coordinate setup window (to setup the broker order window
button coordinates, where the auto-clicker should click when a trade
signal is generated).
2. Enables/Disables the
auto-clicker.
3. If a script is attached
to NAT the window title will show the title defined by script + time.
4. Starts/Stops the news
reader (all available news sources, including custom news sources in NAT
full version).
5. The "Results panel".
Scripts use it to display the economic indicator consensus numbers,
deviations, etc. Default label meanings: cns - consensus, act
- actual, dev - deviation, pre - previous, rev -
revision, rdev - revision deviation. Default labels can be
renamed or hidden by scripts, new labels can be also created.
6. The "Signal panel".
Displays the signal that was generated by script from processing the
incoming news. Supported signals: "BUY", "BUY+" (means strong buy),
"SELL", "SELL+" (means strong sell), "No Trade", "Cancel" (means "cancel
trade" - can be used to inform the trader about possible conflict in
later received news, suggest to close the trade as soon as possible).
7. Number of active news
sources. If news reader is stopped, value is 0.
8. Number of new news
headlines received. After 999 headlines the value is reset to 0.
9. The "Headline box".
Click right mouse button to copy the selected headline to clipboard or
clear all headlines/messages.
10. Launches the News
Script Editor (NSEditor). With right mouse click you can remove(detach)
the currently attached script.
11. Launches all MT4
terminals which are setup in options.
12. Closes all MT4
terminals.
13. Shows all MT4
terminals which were previously hidden.
14. Hide all MT4 terminal
windows (they will be running in background).
15. MT4 terminal selection
box (for showing/hiding specific terminals).
16./17. Show or Hide
selected MT4 terminal. Note: in Full version if you are using the
Console Application custom news source, console window can be also
shown/hidden.
18. Opens the options
window...
Automatic Buy/Sell Button Location
This feature allows to
automatically locate the buttons to click in broker platform when a
trade signal is generated, so you don't need to specify the coordinates
manually each time. However, it is limited to only a single mouse click
per trade signal.
It should work for most broker platforms.
How it works: order window(-s) are located by their window title and
classname, which need to be specified. Button locations are determined
by using the specified relative coordinates from within the window
(window client coordinates, not absolute coordinates of the screen). If
there are multiple order windows, correct window and button to click
(Buy/Sell/Submit/etc.) is determined according to horizontal window
placement on the screen/desktop.
There are 4 allowed order window placement configurations:
1. Single order window that contains both Buy and Sell buttons
(Example: MetaTrader 4). Window can be placed anywhere on the screen,
but Buy/Sell buttons need to be visible. X and Y coordinates specify the
Buy button location and X2 and Y2 the Sell button location within
window. In case of BUY+/SELL+ signals, the same Buy/Sell buttons of this
window will be clicked (if there is only one order window). Example:

2. Two order windows that each contain both Buy and Sell buttons.
The window which is positioned more to the left will be used for
clicking on BUY/SELL signals, the window more to the right on BUY+/SELL+
signals. Window vertical placement is irrelevant, but Buy/Sell buttons
need to be visible. X and Y coordinates specify the relative Buy button
location and X2 and Y2 the relative Sell button location within each
window and need to be the same for both windows. Example:

3. Two order windows that each contain a single button to open the
trade. Whether it's Buy or Sell order needs to be specified in each
order window or otherwise (Example: OANDA). The window which is
positioned more to the left will be used for clicking on BUY or BUY+
signal, the window more to the right for SELL or SELL+ signal. Window
vertical placement is irrelevant, but buttons to click need to be
visible. Relative X and Y coordinates which specify the button location
need to be the same for both windows. X2 and Y2 should not be specified,
"Buy and Sell buttons within the same window" needs to be unchecked.
Example:

4. Four order windows that each contain a single button to open the
trade (can be used with OANDA). Whether it's Buy or Sell order needs to
be specified in each order window or otherwise. The leftmost positioned
window will be used for clicking on BUY signal, next window to the right
- for SELL signal, next window again to the right - for BUY+ signal, the
rightmost window - for SELL+ signal. Window vertical placement is
irrelevant, but buttons to click need to be visible. Relative X and Y
coordinates which specify the button location need to be the same for
all 4 windows. X2 and Y2 should not be specified, "Buy and Sell buttons
within the same window" needs to be unchecked. Example:

NAT configuration
1. In
"Options->Clicker->Buy/Sell button location method" select "Custom".
2. Enter the info in section "Custom button location method (single
click limit)".
2.1. Open the broker platform order window.
2.2. For "Order window title pattern" enter the title (caption) of the
order window. If the title is not constant (for example, includes the
currency pair name), use partial title (the non-changing part of it).
2.3. Click "Show visible window titles and classnames" and find the
classname of the order window. Enter it in field "Window classname".
2.4. Specify the X,Y and, if necessary, also X2,Y2 coordinates of the
buttons within the order window. This will need to be done by trial and
error. Use the Buy/Sell test buttons with clicking disabled while the
order window is open to test the current coordinates and adjust the
coordinates (remember to click "Apply" each time), until the mouse
cursor is moved to desired location when using the test buttons.
Note: in virtual machines (VMWare, Virtual PC) the simulated mouse
pointer movement may appear to not work, however the mouse clicks should
still be registered correctly.
Warning: when not using the test buttons, order window placement
configuration is verified and remembered on enabling the auto-clicker ("autoexecute"
checkbox in main NAT window). Window configuration should not be changed
afterwards (or disable/enable the auto-clicker again). It's OK to change
the window positions slightly, but only if their left-right position
relations remain the same.
For MetaTrader 4 platform try these settings:
Order window title pattern: Order
Check "Allow only exact match"
Window classname: #32770
X position: 633
Y position: 230
Check "Buy and Sell buttons within the same window"
X2 position: 424
Y2 position: 230
For OANDA fxTrade platform try these settings:
Order window title pattern: Market Order
"Allow only exact match" unchecked
Window classname: SunAwtFrame
X position: 136
Y position: 442
"Buy and Sell buttons within the same window" unchecked
Note: Provided coordinates are for 96 DPI system setting. If you are
using other DPI setting or the platform interface is changed, they'll
need to be updated.
Optimizing MT4 News Sources
By default you may not
receive news from MT4 brokers optimally fast. Some suggestions:
1. Remove the unnecessary symbols (currency pairs) from MT4 "Market
Watch" window. You may need to close the open charts first to do this.
This decreases the incoming traffic and can improve the news latency
(receive news faster). Unfortunately if you remove all symbols MT4
(current versions), then on restarting the terminal the default symbols
will reappear. A solution is to leave just one symbol, and even better
one which is not very actively updated (for example, EUR/DKK).
2. MT4 brokers use multiple servers (Data Centers / Access Points) and
they can have different news delivery speed. If you click on Connection
Status image (on right-bottom side of terminal window), there is a
server selector. Unfortunately there is no easy way to find out which
server will deliver news the fastest without using multiple PCs or
virtual machines (to be able to compare). Usually the main server or one
which is close to it is the best.
Be aware that the server selection doesn't always stays. On reconnects,
platform restarts, etc. you may be reconnected to a different server! If
you know the Data Center hostname/IP address:port you can manually
specify the server address in the terminal (Tools->Options->Server).
About Log Files
Unless headline logging is
disabled in NAT options, each attached script will use a separate log
file with the same filename as the script, but with .txt extension. If a
log file already exists with the same filename, new entries will be
appended to it, the file will not be overwritten.
If no script is attached then headlines are still logged to file "newslog.txt"
(unless logging is disabled).
Test headlines used in "Testing sandbox" (NSEditor) are not logged.
Default log files directory can be changed in NSEditor (Options ->
Script & Log paths).
