[vc_row content_placement=”middle”][vc_column el_align=”center”][dt_sc_simple_heading text=”TRADING PLATFORM INFORMATIONS” class=”aligncenter head”]Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi[/dt_sc_simple_heading][vc_row_inner][vc_column_inner][ultimate_spacer height=”5″][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row][vc_column][dt_sc_tabs type=”vertical”][dt_sc_tab title=”Quick Start Guide” tab_id=”def1686579260-1-55″][dt_sc_toggle_group][dt_sc_toggle title=”Quick Start Guide”]

Log In

To log into ActTrader, select the Login tab on the application launcher, enter your username, password, account type, and language, and click Login.

 

 

Forgot Your Password – click this link to receive your password on your e-mail.

 

Read more about:

• Preview

• Register

• Loader Settings

 

Windows Vista Compatibility

ActTrader is completely compatible with Windows Vista. To avoid potential problems, however, make sure you run ActTrader as the administrator.

(Right-click on the program file, and then click “Run as administrator”.)

 

View Dealing Rates

You can view dealing rates in the Dealing Rates window. If you can’t see the Dealing Rates window, click the Windows tab on the FXVoyager toolbar and click the Dealing Rates button.

 

 

Make a Trade

The quickest way to make a trade is to click the Sell or Buy buttons under the Home tab of the FXVoyager toolbar. (You can also click on a rate in the Dealing Rates window.)

 

 

From the Home tab, you can also open a chart, subscribe to instruments, load a desktop profile, or launch an algorithmic trading strategy.

Choose the instrument and the order amount in the dialog box, and click OK to submit the market order.

 

 

Once the position is opened, it will appear in the Open Positions window.

Set a Stop or Limit order

To set a Stop or Limit order, open the Trade tab of the FXVoyager toolbar, and click the Stop or Limit button.

 

 

Choose your position from the dialog box and click OK to set the order.

Read more about Stops and Limits…

Close a Position

On the FXVoyager toolbar, click the Close Position button under the Trade tab. A dialog will appear containing a list of currently open positions. Select the position you wish to close, and click OK. The Close Position dialog will appear. (You can also right-click on the position line in the Open Positions window, and select Close Position from the menu. The Close Position dialog will appear.)

Click OK to close the position.

 

Please see the full Trading Guide section for information on:

• Subscribing to Trading Instruments

• Opening Positions

• Stop and Limit Orders

• Closing/Hedging Positions

• Entry Orders

• OCO Orders

• One-Click Trading

• Price Alerts

• Monitoring your Account(s)

Also, read about:

• Configuring your workspace

• Charts

• ActFX (Algorithmic Trading)

• Windows and Commands

• Settings

[/dt_sc_toggle][dt_sc_toggle title=”Preview Mode”]Preview Mode allows any user to run ActTrader without registration. In order to run the platform in this mode, just select the Preview tab in the Login dialog and click Start.

 

 

 

After clicking the Login button, ActTrader will be loaded in the Preview Mode which will be indicated in the application header:

 

In the Preview Mode, you can perform all actions except for the following:

-Create, modify and remove any order

– Change Time Zone

– Save, modify and delete a profile

– Run a strategy

– Organize a managed account

– Deposit Funds

– Edit comment for position or order

– Subscribe to an instrument

– Rename and delete Chart Templates

 

You can open any dialogs and use any controls available for the real trading, but when trying to submit an order or make any other prohibited operation, you will receive the following message from the system:

 

 

Clicking on Login opens the standard Login dialog, where you can enter your credentials and login normally.

Clicking on Register opens a Registration dialog (or registration web-site) if the registration has been enabled on a system

Clicking on Continue Preview closes the dialog and the application remains in the Preview Mode.

In the Preview Mode you can see the Register button on all tabs of the FXVoayger, if the registration is enabled on a system.

Clicking on the Register button opens the built-in Registration dialog or a registration web-page, depending on your platforms configuration.

 

[/dt_sc_toggle][dt_sc_toggle title=”Register”]You can register for a new account directly from the Login dialog by selecting the Register tab. The built-in Registration dialog or link to a web-page will open (depending on platform configuration)

 

 

Select the Account Type, fill in all required fields and click Submit.

 

In case of successful registration your login and password will be displayed in the dialog. Click the Start Trading button – you will be automatically logged in to application with the created credentials.

In addition, you will receive an email confirming the successful registration with the login information in it.

 

[/dt_sc_toggle][dt_sc_toggle title=”Loader Settings”]

 

Run the program in Off-line mode

If you logged in to ActTrader at least once, you can run ActTrader platform without internet connection by checking the checkbox “Run the program in Off-line mode”.

All the information used during the last online session will be available in the off-line mode. In this mode you can analyze charts using all graphical instruments, create ActFX strategies (including VAT strategies) and indicators, test strategies etc.

You cannot perform any trading operations and run ActFX strategies (including VAT strategies) in real mode.

In offline mode only the chart data loaded during the pervious online sessions will be available.

You can see transactions history as it appeared at the moment you logged off from online mode last time.

You can customize the ActTrader except for the settings requiring synchronization with the server: instrument subscription, saving desktop profile etc.

 

Skin Settings

You can run the application in different skins. When switching between the skins, the view of the launcher updates accordingly. On the next login, ActTrader will be launched in the previously selected skin.

Skin can also be selected in the Main Settings > Skins drop-down box and in the View tab of the FXVoyager toolbar[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”Configuring your workspace” tab_id=”def1686579260-2-91″][dt_sc_toggle_group][dt_sc_toggle title=”Configuring your workspace”]ActTrader offers unlimited freedom to configure a layout that fits your preferences and trading needs.

 

Find out how to:

        • Load a preset Profile to get started quickly
        • Open and arrange windows to set up your trading station
        • Create multiple workspaces to organize your windows and maximize your space
        • Use tabbed windows to group similar windows and save space
        • Undock windows to take advantage of multiple monitors
        • Quickly find open windows anywhere in the application
        • Manage Profiles to save your configurations or load default desktops
        • Minimize Windows within ActTrader

[/dt_sc_toggle][dt_sc_toggle title=”Open and arrange windows”]

Open a window

To open a window, click the Windows tab in the FXVoyager.

 

 

Under the Windows tab, click the name of the window you want to open. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)

Arrange windows

Auto-Arrange

The quickest way to arrange all your currently open windows is with the Auto-Arrange tool. In the View tab of the FXVoyager, click the Auto-Arrange Windows button. This will arrange all windows that are open in the current workspace in order to fill the screen.

 

 

Arrange windows manually

While the auto-arrange tool will quickly arrange your windows, you may want to resize and arrange your windows manually (and then save your configuration as a profile).

For best results, press the Grid button on the View tab of the FXVoyager and select the grid size. Using the grid makes arranging windows very easy.

If you have many windows open, you should set up multiple workspaces.[/dt_sc_toggle][dt_sc_toggle title=”Create multiple workspaces”]Workspaces are a great tool for organizing your trading application. They allow you to use multiple screens to display and arrange application windows. You can create unlimited workspaces, which means you never have to over-clutter any one screen with too many windows. You can quickly switch between your workspaces using the workspace tabs.

 

Create workspaces

To create a workspace, go to the View tab in the FXVoyager and click the New Workspace button. You can also right-click on an existing workspace tab, and select New Workspace.

 

 

When prompted, give the workspace a name:

 

 

Click OK to create the workspace. The new (empty) workspace will appear as a tab underneath the toolbar:

 

 

You can now populate the workspace with windows.

 

Hint: Once you are done configuring your workspaces, you should save your layout as a profile.

 

Rename or Close a Workspace using the FXVoyager

1.To rename the active (selected) workspace, go to the View tab of the FXVoyager and click Rename Active Workspace.

2.To close the active (selected) workspace, go to the View tab of the FXVoyager and click Close Active Workspace

 

Rename or Remove a Workspace using the right-click menu

1.To rename the active (selected) workspace, right-click on the workspace tab, and click Rename Active Workspace.

2.To close the active (selected) workspace, right-click on the workspace tab, and click Close Active Workspace.

 

Move windows between workspaces

 

To move a window from one workspace to another, left-click on the icon in the upper left corner of the window, click Move To Workspace, and choose the workspace name.[/dt_sc_toggle][dt_sc_toggle title=”Tabbed Windows”]It is possible to group multiple windows into a single, tabbed window.

 

  1.   Placing one window inside another

To place Window A inside Window B:

1)  Move the cursor over the header of Window A. Right-click on the header, and hold down the right mouse button.

 

2)  While holding down the right mouse button, drag Window A across the screen. The window itself will remain in place; you will be dragging a gray outline of the window.

 

3)  While still holding the right mouse button, position the cursor in the center of Window B. The gray outline will become smaller and “snap” into the center of Window B. This indicates that Window A is ready to be dropped into Window B.

 

 

4)  Release the mouse button. Windows A and B are now grouped into one window, with Window A on top. Use the tabs to toggle between the windows. The header of the tabbed window will display the word “Tabs”, followed by the name of the currently selected window.

 

 

You may combine an unlimited number of windows into one tabbed window. If the width of all the tabs exceeds the width of the window, two arrows will appear next to the tabs, allowing you to scroll them horizontally.

 

2.   Removing an individual window from a tabbed window

There are two ways to remove a window from a tabbed group window:

1)  Click on the red X button of the window’s tab. This will close the selected window.

     -OR-

2)  Right-click on the window’s tab, and drag it outside the window. A gray window outline will appear. Release the mouse button. The window will move out of the tabbed group and become a standalone window.

 

3.   Changing tab location

The tabs can be configured to appear on either the top or the bottom of the tabbed window. Right-click on any tab, and then select Top or Bottom from the pop-up menu.

 

4.   Window functionality

Windows’ functionality is not affected in any way as a result of their being grouped into a tabbed window.

 

Note1: If you close the main tabbed window, all the individual windows within it will also be closed.

Note2: The following windows cannot be tabbed windows (i.e. cannot be inserted into other windows nor have other windows inserted into them): Dealing Rates window, Individual Dealing Rates window, HTML content windows.

[/dt_sc_toggle][dt_sc_toggle title=”Undock Windows”]There are three available modes of docking windows in ActTrader. They determine the positioning and behavior of individual windows relative to the main application window.

To access a window’s docking mode, left-click on the system icon in the top left corner of a desired window.

 

The following menu will appear:

 

 

Docked: The window is anchored to the main application window.

Undocked: The window can be dragged and positioned outside of the main application window. When the main application window is minimized/maximized, the undocked window is also.

Detached: The window can be dragged and positioned outside of the main application window. The window will appear as a separate item on the Windows Taskbar. Minimizing/maximizing the main application window will not affect the detached window. If the main application window is closed, the detached window will also be closed.[/dt_sc_toggle][dt_sc_toggle title=”Quickly find open windows”]You can quickly find any currently open windows in the application by using the Application Map under the Windows tab of the FXVoyager.

 

 

The application map is a list of all windows currently open in your application, organized by workspace. If you ever need to find an open window, just click the Application Map button and browse through all the windows in a single list. Click a window name to switch to that window.[/dt_sc_toggle][dt_sc_toggle title=”Profiles”]Desktop profiles are a convenient way of organizing different layout configurations of ActTrader. You can use one of the default system profiles offered by your broker, or you can configure and save your own desktop profile.

An application profile includes a list of workspaces, windows (their size, columns, and positioning on the screen) and application settings, including the “skin” settings.

 

Selecting a Profile

 

To select a profile go to the Home tab of the FXVoyager and click the Desktop Profile button.You will see a list of profiles. Default profiles are shown under the System heading. User-created profiles are shown under the Custom heading. Select the desired profile from the list to change to that profile. The currently active profile is checked.

 

 

Creating a New Profile

 

To create a new profile, first configure your windows/workspaces/settings to your liking. Then click the Desktop Profile button and select Save Current Profile As.

 

 

Name the new profile, and click OK. The new profile will appear in the list of Custom profiles.

 

Rename/Remove a Profile

 

To rename or remove a profile, click the Desktop Profile button and select Manage Existing Profiles.

 

 

The Manage Existing Profiles dialog allows you to rename or remove existing custom profiles by selecting a profile and clicking Rename or Delete. (you may not rename or remove System profiles)

Note: If changes are made to the profile and you attempt to switch to another profile, the following message will appear:

 

[/dt_sc_toggle][dt_sc_toggle title=”Minimize Windows”]You can minimize individual windows within ActTrader.

 

To minimize a window in ActTrader, left-click the Minimize button in the window caption bar:

 

The minimized window is represented as a small tab in the panel at the bottom of the application window. The panel appears only if you have at least one minimized window in the workspace.

 

 

Click the Restore button on the tab to restore the window to the previous size in the same workspace. You can also restore the window by double-click on the tab.[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”FXVoyager” tab_id=”1686823756785-2-2″][dt_sc_toggle_group][dt_sc_toggle title=”FXVoyager”]A new navigation feature, the FXVOYAGERTM, is replacing the existing toolbar and application menus.

 

The FXVOYAGER toolbar makes it easy to quickly locate the tools and options necessary for trading and for performing other common application tasks.

 

The FXVOYAGER is intuitively constructed to allow the trader to navigate the trading application with maximum efficiency. The commands in the FXVOYAGER are organized into logical groups, and each group is found under a tab. Each tab relates to a unique activity, such as Trading or working with Charts, or to a specific application module, such as Forwards or Options.

 

Minimizing the toolbar

  1.   To save space on your screen, you can minimize the toolbar. To do this, double-click the name of a tab.
  2.   You can keep using the toolbar even after it’s minimized. Click the name of the tab you want to use, and the FXVOYAGER will appear. Once you click elsewhere in the application, the toolbar will be minimized again.
  3.  Double-click the name of a tab again to restore the toolbar.

[/dt_sc_toggle][dt_sc_toggle title=”Application Button”]The Application Button contains a dropdown menu with several options.

 

 

Change Password

Click to change your password. You will be required to enter your current password and then to enter the new password.

 

Diagnostic Tool

Click to open the Diagnostic Tool, which collects system data and sends it to the server, in case of technical problems.

 

Settings

Click to open the application Settings.

 

Exit

Click to exit the application.[/dt_sc_toggle][dt_sc_toggle title=”Home Tab”]The Home tab contains the most commonly-used actions. These include creating a market order, opening a new chart, subscribing to instruments, loading a desktop profile, and launching an algorithmic trading strategy.

 

 

Trading Group

 

 

Sell: Click to open a Sell position.

Buy: Click to open a Buy Position.

 

Chart Group

 

New Chart: Click to open a new chart window.

 

Instruments Group

 

 

Instrument Catalog: Click to open the Instrument Catalog window, where you can choose which instruments are visible in your application.

 

Profiles Group

 

 

Desktop Profile: Click to manage desktop profiles, or to choose from a list of saved system or custom profiles.

 

Algorithmic Trading Group

 

 

Indicators and Strategies: Click to open theIndicators and Strategies dialog, which will allow you to select and run an algorithmic trading strategy.

New Visual Strategy: Allows you to create a visual strategy directly on chart. Clicking this button opens the New Chart dialog for selecting the instrument and time scale on which the strategy will be created.

 

FXApps Group

 

 

FXApps: Click to open FXApps window.

 

Autochartist Group

 

Trading Opportunities: Click to open the Trading Opportunities window[/dt_sc_toggle][dt_sc_toggle title=”View Tab”]The View tab contains controls for customizing the application look and feel.

 

The buttons are highlighted when pressed – this indicates that corresponding function is enabled.

 

 

Screen Space Group

 

Full Screen: Clicking this button maximizes the application screen space:

•  Expands ActTrader to the full screen

•  Hides the Account Information Bar and Status Bar

•  Minimizes the FXVoyager toolbar

•  Enables the Hide toolbar and Use embedded chart labels checkboxes for all currently open charts     and in the Chart Default Settings – i.e. for all newly open charts these options will also be enabled.

As a result ActTrader looks as follows:

 

 

In order to restore ActTrader to the previous view, click View > Restore Screen:

 

 

Auto-Arrange Windows: Click to arrange all windows that are open in the current workspace in order to fill the screen.

 

Workspaces Group

 

New Workspace: Click to open a new workspace.

Rename Active Workspace: Click to rename the currently active workspace.

Close Active Workspace: Click to close the currently active workspace.

 

Interface Type Group

 

 

FX Voyager Toolbar: Click to enable standard FXVoyager interface.

Application Menu: Click to enable top-level menu interface

Disable Skins: Click to turn off the FXVoyager interface and go back to the older look and feel of the application, which will include mini tick charts inside the dealing rates.

 

Skins Group

 

 

Classic: Click to switch to the Classic skin (standard ActTrader skin; all screenshots in this manual are made in this skin).

Modern: Click to switch to the Modern skin.

Note: Switching to another skin requires restart of the platform.

 

Show Group

 

 

Status Bar: Click to show/hide the Status Bar at the bottom of the main application window.

Account Information Bar: Click to show/hide the Account Information Bar at the bottom of the main application window.

When the button is pressed (highlighted), the corresponding bar is shown; when the button is depressed, the corresponding bar is hidden.

Grid: Press the button to show the grid on the application background; you can change the grid size in the edit box. When moving windows within the application they snap to the grid, which helps to organize your layout more efficiently. The grid can also be customized in the Main settings > Windows section.[/dt_sc_toggle][dt_sc_toggle title=”Trade Tab”]The Trade tab contains commands related to trading. It allows you to create market and conditional orders, to edit or remove orders, and to manage price alerts.

 

 

Market Order Group

 

 

Sell: Click to open a Sell position.

Buy: Click to open a Buy Position.

Close Position: Click to close an open position. A list of positions will appear, allowing you to choose the one you want to close.

Hedge Position: Click to hedge an open position.

 

Entry Order Group

 

 

Entry Sell: Click to create an Entry Stop or Entry Limit Sell order.

Entry Buy: Click to create an Entry Stop or Entry Limit Buy order.

 

Stop/Limit Order Group

 

 

Stop: Click to create a Stop or Trailing Stop order on an existing open position.

Limit: Click to create a Limit order on an existing open position.

 

Selected Order Group

 

 

Modify: Click to modify an existing order. If an order is currently selected in the Orders window, it will be preselected in the Modify Order dialog.

Remove: Click to remove an existing order. If an order is currently selected in the Orders window, it will be preselected in the Remove Order dialog.

 

Price Alerts Group

 

 

Price Alerts: Click to set a Price Alert.[/dt_sc_toggle][dt_sc_toggle title=”Forwards Tab”]The Forwards tab contains commands relating to Forex forward trading. It allows you to create forward market and conditional orders and to edit or remove forward orders. You can also open forward-specific windows and a dedicated forwards workspace.


Note:
The Forwards Tab will only appear if Forex Forward trading is enabled on your platform.

 

 

Fwd. Market Order Group

 

 

Sell: Click to open a Forward Sell position.

Buy: Click to open a Forward Buy Position.

Close Position: Click to close an open Forward position. A list of positions will appear, allowing you to choose the one you want to close.

Hedge Position: Click to hedge an open Forward position.

 

Fwd. Entry Order Group

 

 

Entry Sell: Click to create a Forward Entry Stop or Forward Entry Limit Sell order.

Entry Buy: Click to create a Forward Entry Stop or Forward Entry Limit Buy order.

 

 

Fwd. Selected Order Group

 

 

Modify: Click to modify an existing Forward order. If an order is currently selected in the Forward Orders window, it will be preselected in the Modify Order dialog.

Remove: Click to remove an existing Forward order. If an order is currently selected in the Forward Orders window, it will be preselected in the Remove Order dialog.

 

Forwards Windows Group

 

Forward Orders: Click to open the Forward Orders window. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)

Forward Open Positions: Click to open the Forward Open Positions window. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)

Forward Closed Positions: Click to open the Forward Closed Positions window. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)

Forward Interest % Rates: Click to open the Forward Interest % Rates window. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)

Open Forwards Workspace: Click to create a dedicated Forwards workspace. The workspace will be populated with the four dedicated Forwards windows.

 

Read more about Forex Forwards…[/dt_sc_toggle][dt_sc_toggle title=”Options Tab”]For a complete description of Options functionality, please see the Options Trading section.

The Options Tab contains commands related to Options trading.

Note: The Options Tab will only appear if Forex Options trading is enabled on your platform.

 

 

Options Group

 

Buy Put: Click to buy a Put option.

Buy Call: Click to buy a Call option.

Options Window: Click to open the Options window. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)[/dt_sc_toggle][dt_sc_toggle title=”Binary Options Tab”]For a complete description of Binary Options functionality, please see the Binary Options Trading section.

The Binary Options Tab contains commands related to Binary Options trading.

Note: The Binary Options Tab will only appear if Binary Options trading is enabled on your platform.

 

 

Binary Options Bets: Click to open the Binary Options Bets window. The Binary Option Bets window is used for selecting and placing a bet.

Active Bets: Click to open the Active Bets window. The Active bets window displays bets that are awaiting for the expiration date/time.

Expired Bets: Click to open the Expired Bets window. The Expired Bets window displays bets that have been already expired.[/dt_sc_toggle][dt_sc_toggle title=”Windows Tab”]The Windows tab contains commands related to windows in the application. From this tab you can open or switch to any window.

 

 

Note: Clicking a window name will open that window. If the window is already open, clicking will switch focus to the window. (If the window is open in a different workspace, then that workspace will become active.)

Dealing Rates: Click to open the Dealing Rates window.

Dealing Rates Table: Click to open the Dealing Rates Table window

Open Positions: Click to open the Open Positions window

Orders: Click to open the Orders window

News: Click to open the News window

Reports: Click to open the Reports window

Closed Positions: Click to open the Closed Positions window

Price Alerts: Click to open the Price Alerts window

Instruments: Click to open the Instruments window

Accounts: Click to open the Account Information window

Summary: Click to open the Summary window

Events and Messages: Click to open the Events and Messages window

Risk Exposure: Click to open the Risk Exposure window

Trading Opportunities: Click to open the Trading Opportunities window

Application Map: Click to view the application map – a list of open workspaces, each one with a submenu with a list of open windows within that workspace. Selecting any window will switch to that workspace and set focus on the selected window.

 

Read more about Configuring your Workspace…[/dt_sc_toggle][dt_sc_toggle title=”Charts Tab”]The Charts tab contains commands related to Charts. From this tab you can create a chart, configure default chart settings, switch between currently open chart windows, as well as open the previously saved charts and chart templates, and create a visual strategy on the chart.

 

 

Charts Group

 

New Chart: Click to open a new chart.

Saved Charts: Click to see a list of the previously saved charts.

Open Charts: Click to see a list of currently open charts. Select a chart to switch focus to that chart window.

 

Settings Group

 

 

Set Defaults: Click to configure default chart settings.

Templates: Click to see a list of previously saved chart templates.

 

New Visual Strategy Group

 

 

New Visual Strategy: Allows you to create a visual strategy directly on chart. Clicking this button opens the New Chart dialog for selecting the instrument and time scale on which the strategy will be created.

Read more about Charts…[/dt_sc_toggle][dt_sc_toggle title=”ActFX Tab”]The ActFX tab contains commands related to algorithmic trading and custom user technical indicators. From this tab you can open the indicator and strategy editors, as well as to manage or launch your algorithmic trading strategies.

 

 

ActFX Group

 

Indicator Editor: Click to open the ActFX User Indicator Editor.

Strategy Editor: Click to open the ActFX User Strategy Editor.

Indicators and Strategies: Click to open the Indicators and Strategies window

Strategy Summary: Click to open the Strategy Summary window.

ActFX Online: Click to open ActFX forum.

Open Strategies: Click to see a list of currently open strategies. Select a strategy to switch focus to that strategy’s window.

MQL4->ActFX Converter: This button allows you to choose an MQL4 expert adviser file on your computer to convert it into ActFX strategy.Read more…

 

FXApps Group

 

 

FXApps: Click to open FXApps window.

 

Read more about Algorithmic Trading or User Indicators[/dt_sc_toggle][dt_sc_toggle title=”FXApps Tab”]The FXApps tab gives you the access to our strategies market and all applications purchased from it.

 

 

Click the FXApps button to open FXApps window

 

In the MyApps group you can find all purchased applications. All indicators and strategies downloaded/purchased from FXApps are automatically added to the Indicators and Strategies window in the MyApps group.[/dt_sc_toggle][dt_sc_toggle title=”Help Tab”]The Help tab contains a link to the user manual, as well as information about the application.

 

 

 

Help Group

 

Trader Manual: Click to open the Trader Manual in a browser window.

About: Click to show the system name and the application and system version numbers.[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”Trading Guide” tab_id=”1686824635114-3-5″][dt_sc_toggle_group][dt_sc_toggle title=”Trading Guide”]This Trading Guide will describe everything you need to know about trading in ActTrader. Click a link below to get started.

 

Read about:

 

• Subscribing to Trading Instruments

• Opening Positions

• Stop and Limit Orders

• Closing/Hedging Positions

• Entry Orders

• OCO Orders

• One-Click Trading

• Price Alerts

• Trading From Charts

• Monitoring your Account(s)

• Viewing Closed Positions

• Managed Accounts

• Options Trading

• Forward Trading

[/dt_sc_toggle][dt_sc_toggle title=”Subscribe to Trading Instruments”]ActTrader allows you to subscribe to trading instruments that you want to trade and unsubscribe from instruments you don’t want to trade. When you unsubscribe from an instrument, it will not appear in any windows, and you will not receive its price feed. This helps you to keep your trading station tailored to your trading needs.

 

Instrument Catalog

To configure instrument subscription, click the Instrument Catalog button under the Home tab of the FXVoyager.

 

 

The Instrument Catalog displays all the instruments that are available to you. You can subscribe to/unsubscribe from instruments from this window.

 

 

The Instrument Catalog contains a list of all instruments available for subscription. To subscribe to one or more instruments, select them with the mouse and click “Subscribe”. To unsubscribe from one or more instruments, select them and click “Unsubscribe”. You may select a folder to subscribe to all instruments in that folder.

Once you have subscribed to an instrument, it will appear in the following windows:

•  Dealing Rates window

•  Individual Dealing Rates window

•  Dealing Rates Table window

•  Instruments window

•  Chart windows (drop down instrument boxes)

 

If the selected instrument is unsubscribed, the “Unsubscribe” button is inactive; if the selected instrument is subscribed, the “Subscribe” button is inactive. Subscribed instruments are denoted by a fuller, 3D icon; unsubscribed instruments are denoted by a smaller, 2D icon of the same color.

 

 

If several instruments are selected, some of them subscribed, the others not, both the “Subscribe” and “Unsubscribe” buttons will be active.

Note 1. If there are open positions or orders on at least one of the selected instruments, then after clicking the “Unsubscribe” button, you will receive the following message: “Instrument (instrument name) in use”, and none of the selected instruments will be unsubscribed.

 

Instrument Search

Instrument search capability has been implemented in the Instrument Catalog window. You can search for an instrument by typing a letter(s) that the instrument name contains into the search field:

 

 

The found instrument will be highlighted in light grey color and the relevant “Subscribe” or “Unsubscribe” button will be active. You may scroll up or down through more search results by clicking the up/down arrows next to the search field.

 

Instrument Sorting

It is possible to sort the instruments in the “Instrument Catalog” window alphabetically. In order to do it you must click the “AZ” button to the left from the search field:

 

 

All the instruments will be sorted alphabetically inside each instrument group. The instrument groups themselves will also be sorted alphabetically.

When the instruments are sorted alphabetically, the AZ button will remain depressed. Click the button again to return all instruments to the default sorting.[/dt_sc_toggle][dt_sc_toggle title=”Open a New Position (Market Order)”]

Open a position from the Dealing Rates window

To open a position from the Dealing Rates window, right-click on a buy or sell rate, and click Market Order Buy or Market Order Sell. (If forwards trading is enabled, then you will first have to select Spot or Forward.) This will open the New Position dialog.

Note: You can also right-click on the rates in the Dealing Rates Table window or the Instruments window and get the same menu.

 

Open a position from the FXVoyager toolbar

To open a position from the FXVoyager toolbar, just click the Buy or Sell buttons in the Home or Trade tabs. This will open the New Position dialog.

 

 

New Position Dialog

The New Position dialog allows you to configure your market order.

 

 

1.  Select the Instrument to trade

 

2.  Select the account you want to trade from (if you have multiple accounts.

 

3.  Enter the amount to trade into the “Amount” field.

Note: The default pre-set amount is determined by the account’s Default Amount setting.

Note: You may use the following hotkeys: Press K to multiply the amount by 1,000. Press M to multiply the amount by 1,000,000. Press Ctrl-K to add 1,000 to the amount. Press Ctrl-M to add 1,000,000 to the amount.

 

4.  Enter the Trader Range measured in pips.

Note: The Trader Range is your tolerance for price change. It is a range (in pips) from your original order price within which you would still be willing to place the order. If the market shifts while you are placing an order, you will receive the notification message offering you to ‘Accept New Price’ or ‘Remove Order’ within a certain time period. If the new price is within the Trader Range, then the order will automatically go through at the new price.

If the market shifts while you are placing an order, the dealer may reject your order and offer you the new market price. If the dealer’s new price is within the Trader Range, the order will automatically go through at the dealer’s new price.

 

Note: The default value of Trader Range can be set in the the Main Settings.

 

5.  To preset a stop/limit on this market order, check the “Set Predefined Stop/Limit” check box. Read more about predefined stops/limits…

 

6.  Press OK to submit the order.

Note: Once you submit your order, it is sent to the Dealer, who can confirm, reject, or remove it due to a change in market price. While your order is being processed, it will appear in the Orders window, designated as an I (Initiate) order.

Note: You cannot open a new position on an account with insufficient usable margin. However, you can hedge an existing unhedged position on an account with insufficient usable margin.

 

7.   The “Slider” in the Order creation dialog window allows to see which part order amount represents in the maximum order amount.

When MC occurs on the account or an account has insufficient usable margin to open 1 lot position, then slider will display 0 on the right and left sides.

 

If you use one-click trading, then in the Dealing Rates window there are sliders for Bid and Ask buttons correspondingly and the Amount field:

 

 

Once open, the new position will be shown in the Open Positions window, and you will receive the audio alert “Order Entered”. The account information will be updated. (In certain circumstances, as a result of placing an order, an offsetting position could be closed).[/dt_sc_toggle][dt_sc_toggle title=”Predefined Stop and Limit orders”]When creating a market order, you can predefine a stop/limit order. When the market order becomes a position, it will have the stop/limit order on it.

 

 

When you check the “Set Predefined Stop/Limit” check box, the dialog box expands, allowing you to set a predefined stop and/or limit.

 

 

To set a predefined stop, trailing stop, or limit, click on the check box next to the desired order type. When you select the checkbox, the order rate becomes editable. The rate constraints to the right of the rate fields are based on the type of order and the condition distance setting.

Note: It is not possible to set both a predefined stop and a predefined trailing stop. Only one or the other may be checked.

 

Select the relevant check box and adjust the order rate. If you change your mind and decide not to place that order, simply uncheck the check box. If you uncheck the “Set Predefined Stop/Limit” check box, the dialog box will collapse to its previous size and any predefined stops/limits you selected will be discarded.

 

Once you have edited the predefined stop/limit orders to your satisfaction, click OK to place the order.

 

The market order will appear as an “I” order in the Orders window, with the predefined stop and/or limit already entered.

 

 

Upon order confirmation, the position will open with the stop and/or limit in place.

 

 

Note: The application will remember whether the Predefined Stop, Predefined Trailing Stop or Predefined Preset Limit check box was checked at the moment the “New Position”” dialog box was closed. The next time the dialog box is open, the corresponding checkbox will be also checked. You can also determine beforehand which Predefined orders to set when creating a Market or Entry order using the Set Predefined order at position opening setting located in the Main Settings

 

Rejected Market Orders

If the you create a market order with a predefined stop/limit, and the order is rejected because of a price change, the predefined stops/limits will be automatically canceled. This information will be reflected in the “Rejected order” message.

 

If you choose to open the position anyway (Accept New Price), you will have to set the stop/limit manually in the Open Positions window.

Note: If the dealer chooses to confirm your order at a different rate from the order rate, predefined stops/limits will not be affected.

 

Predefined Stop/Limit constraints explained

The constraints on the possible rates of predefined stops and limits depend on the projected closing price when the position opens and on the condition distance setting. The projected closing price is calculated by taking the entry order price and adding/subtracting the current spread. Condition distance is then added to/subtracted from this projected closing price to determine the maximum/minimum possible rate for stops/limits.

 

Example: The current Bid rate is 28 and the current Ask rate is 33. The spread is 5. Condition distance = 1. You place an entry stop order to buy at Ask = 40. The projected closing price of the position (when it opens) is 40 – 5 (the spread) = Bid 35. Factoring in condition distance, we find that the maximum predefined stop rate is Bid = 34 (35 – 1). The minimum predefined limit rate is Bid = 36 (35 + 1).

 

Multiple Accounts

It is possible to place market orders with predefined stops/limits from multiple accounts using the multiselect feature. In the event that the selected accounts have different condition distance settings, the largest of the settings will be used for all accounts.

 

Example:

 

Bid=1.4215 Ask=1.4220

 

Acct. 153 condition distance = 5: Acct. 154 condition distance = 7

 

 

For both accounts, the larger condition distance of 6 will be used to calculate the constraints on the predefined stop/limit:

1.4215 – 7 = 1.4208; Stop at 1.4208 and lower.

1.4215 + 7 = 1.4222; Limit at 1.4222 and higher.[/dt_sc_toggle][dt_sc_toggle title=”Market order for managed accounts”]There are three ways to distribute lots among individual accounts when performing transactions with managed accounts.

•  Fixed Default Amount (DA): Lots/Amounts will be distributed according to the individual DA of each account. The DA of a managed account is the sum of the individual accounts’ DAs. Managed accounts can only be traded in amounts that are multiples of the sum of all individual participating accounts’ DAs.

•  Proportional: Lots/Amounts in the group order will be distributed in proportion to the maximum number of lots that can be open on individual participating accounts.

•  Proportional – one minimal increment minimum: Lots/Amounts in the group order will be distributed in proportion to the maximum number of lots that can be open on individual participating accounts, but each account with sufficient usable margin will receive at least one minimal increment

Note: Only accounts with sufficient usable margin will be included in transactions

The allocation mode can be changed by going to Menu а Settings а View and Edit а Main Settings

 

[/dt_sc_toggle][dt_sc_toggle title=”Additional managed account order options”]Note: The following descriptions apply only if Proportional or Proportional – One Lot Minimum allocation modes are used.

 

There is a modification to the “New Position” (shown), “Close”, ”Hedge”, and “Close with hedge” windows when they involve managed accounts/positions.

 

 

The amount (shown as a link) can be clicked to show a detailed distribution of lots among individual accounts.

 

Clicking Create Order will finalize the order, while clicking Ok or Cancel will return you to the previous window. Click on the individual amount links to make adjustments.

 

 

If you modify two accounts with equal maximum amounts to have unequal individual amounts, you will receive the following notification:

 

 

Note: This notification will only appear if the accounts have equal balances.

 

Please note that by default when you create an order, you are offered the maximum amount of lots that the managed accounts can hold (with existing usable margin). To prevent the accidental order of the maximum number of lots, you are asked to verify your intention to execute the order.

 

[/dt_sc_toggle][dt_sc_toggle title=”Rejected Market Orders”]If you create a market order, and the order is rejected because of a price change, then depending on your system settings, you can receive the following reject message.

 

Reject Message without Timer

 

 

The Remove Order button includes a countdown timer that indicates how many seconds are left for the trader to accept the new price before the order is automatically removed.

 

Reject Message with Timer

 

•    The message contains constantly changing market price on a specific instrument.

•    It offers the choice to either “Re-Submit Order” at the current market price or “Remove Order”.

•    This message does not have a timer.

•    The message allows setting Trader Range before re-submitting the order.

 

 

Reject in STP

The systems connected to STP can have any reject message type for all orders which they process internally. For example, all orders processed internally have the “reject with the timer and option to accept” mode.

While orders sent directly to the STP provider receive a special reject message if they get rejected by the STP provider.

When a reject occurs in STP, trader of the TH system receives a message as in the example below:

 

“Your order # 1282 to Buy USDCASD at 1.0071 could not be processed. Please click OK to remove the order from the Orders window and try again”.

 

In the Events and Messages window, trader sees a message with the same text.[/dt_sc_toggle][dt_sc_toggle title=”Stop and Limit Orders”]A Stop order (sometimes known as a stop-loss order) is a conditional order aimed at closing a position after a certain price is reached. A stop is triggered when the market moves in an unfavorable direction for the trader. It is designed to prevent further losses when a position is losing money.

 

A Limit order (sometimes known as a take-profit order) is a conditional order aimed at closing a position after a certain price is reached. A limit is triggered when the market moves in a favorable direction for the trader. It is designed to realize the profit made by the position.

 

Set a Stop/Limit Order from the Open Positions Window

Right-click on a position in the Open Positions window, and click Stop, Limit, or Trailing Stop (if trailing stops are allowed). The Stop or Limit dialog box will appear.

 

Set a Stop/Limit Order from the FXVoyager Toolbar

In the FXVoyager toolbar, click the Stop or Limit button under the Trader tab

 

 

A dialog will appear with a list of positions. Select the position on which you wish to set the Stop/Limit on, and click OK. The Stop/Limit Dialog will appear.

 

 

Enter the desired order rate and press OK.

Note: You can also configure the order by editing the “Distance in pips” and “Projected PL” boxes.

 

The Stop/Limit will be shown in the Orders window:

 

 

It will also be shown in the Open Positions window in the Stop or Limit column.

 

 

 

Stops and Limits can also be set for existing Entry Orders. This means that whenever an Entry Order is executed, the resulting open position will have a preset Stop/Limit order.

Right-click on the existing ES/EL order in the Orders window and choose Stop or Limit from the pop-up menu. The dialog box will appear. Enter the desired rate and press OK.

 

The Stop/Limit will be shown in the Orders window:

 

 

Trailing Stop Example (click to expand)

In this example, a BUY position is opened. A Trailing Stop is set with a trailing distance of 20 pips. (Figure 1)

Market price = 1.0045

Stop price = 1.0025

 

Figure 1

 

As the market price moves up, the Stop order will follow the market price at a distance of 20 pips. In the image below, the market price has moved up to 1.0054. The Stop order price is now 1.0034. (Figure 2)

 

Figure 2

 

If the market price begins to move down, the Trailing Stop order price remains fixed. In the image below, the market price has gone down to 1.0042. The trailing stop order price has remained at 1.0034. (Figure 3)

 

Figure 3

 

At this point, if the market continues to descend, the trailing stop order will be triggered when the market reaches 1.0034.

If, on the other hand, the market begins to rise, the trailing stop will remain at 1.0034 UNTIL the market price passes 1.0054 (20 pips away). At this point, if the market continues to rise, the trailing stop order price will start to rise as well, trailing the market price by 20 pips.

 

Right-click on the desired open position in the Open Positions window or on the existing ES/EL order in the Orders Window and choose Trailing Stop from the pop-up menu. The dialog box will appear:

 

 

To set the Trailing Stop Distance check the “Set Trailing Stop Distance” check box in the “Stop Order” dialog box and enter the distance value in pips. Press OK. The Trailing Stop Distance value will appear in the “Tr.Stop” field of the position record and a Trailing Stop Order will appear in the Orders window.

 

 

Remove non-triggered Orders

Right-click on the desired order in the Orders window and select Remove from the pop-up menu.[/dt_sc_toggle][dt_sc_toggle title=”Close and Hedge Positions”]

Close a Position

 

Close a Position from the FXVoyager toolbar

On the FXVoyager toolbar, click the Close Position button under the Trade tab. A dialog will appear containing a list of currently open positions. Select the position you wish to close, and click OK.

 

 

Close a Position from the Open Positions window

Right-click on the position line in the Open Positions window, and select Close Position from the menu. The Close Position dialog will appear.

 

 

Enter the desired amount you wish to close into the “Amount” field. You can enter a smaller amount if you want to only partially close position.

 

Note: By default you are offered to fully close the position.

 

Press OK to confirm the order. The position will be closed. Account information will be updated. The closed position will appear in the Closed Positions window.

 

 

Note, that the system will not allow you to close the position which already has existing C order waiting for the dealer’s confirmation.

If you select a position with a C order created earlier, you will receive the following message: “There is an existing C order [order number] to close [order amount] in ticket [ticket number]”.

A new C order will not be created

If you select several positions to close, the C orders will be created only for those positions which do not have existing C orders. The system will check your positions one by one, and if it finds a position with a C order created earlier, it sends the message described above, and stops checking the remaining positions.

Note: On the NFA regulated systems, position closing is done in a different way. See details here.

 

Hedge a Position

“Hedging” refers to the opening of a new position in the opposite direction of an existing position on the same instrument.

Note: Hedging may not be allowed on some platforms.

 

Hedge a Position from the FXVoyager toolbar

On the FXVoyager toolbar, click the Hedge Position button under the Trade tab. A dialog will appear containing a list of currently open positions. Select the position you wish to hedge, and click OK.

 

 

Hedge a Position from the Open Positions window

Right-click on the position line in the Open Positions window, and select Hedge Position from the menu. The Hedge Position dialog will appear.

 

 

Enter the desired number of lots into the “Amount” field. You can hedge a position partially or fully.

 

Note: By default, you are offered to fully hedge the position.

 

Press OK to confirm the hedge.

 

Note: You can hedge an existing unhedged position on an account with insufficient usable margin. You, however, cannot open a new position on an account with insufficient usable margin.[/dt_sc_toggle][dt_sc_toggle title=”Entry Orders”]Entry Stop and Entry Limit orders are orders to open a new position at an off-market price. If that price is reached, the entry order will be triggered and the trader will enter the market (a new position will open).

 

Entry Limit orders aim at opening positions in the future, when the market price has moved DOWN for a Buy order/UP for a Sell order. Entry Stop orders aim at opening positions in the future, when the market price has moved UP for a Buy order/DOWN for a Sell order.

 

Create an Entry Stop/Limit from the Dealing Rates window

To create an entry stop/limit from the Dealing Rates window, right-click on a buy or sell rate, and click Entry Stop Buy or Entry Limit Buy. (If forwards trading is enabled, then you will first have to select Spot or Forward.) This will open the Entry Order dialog.

Note: You can also right-click on the rates in the Dealing Rates Table window or the Instruments window and get the same menu.

 

Create an Entry Stop/Limit from the FXVoyager toolbar

To open a position from the FXVoyager toolbar, just click the Entry Buy or Entry Sell button under the Trade tab. Each button opens a dropdown menu allowing you to choose Entry Stop or Entry Limit.

 

 

Entry Order Dialog

 

 

1.   Enter the amount in lots.

Note: The default pre-set amount is equal to the account DA setting

2.  Enter the rate in the “Rate” field.

Note: The allowed price range is shown to the right of the “Rate” field.

Note: You can also adjust the “Distance in pips” box to set up your order. (Distance in pips = The difference in pips between the proposed entry order rate and the current market rate.)

3.  If you are creating this entry order as part of an OCO pair, select the “Create as OCO for order” box. You will then be able to select an existing entry order from a pull-down menu.

4.  To preset a stop/limit order on this entry order, check the “Set Predefined Stop/Limit” box. More about predefined stops/limits…

5.  Press OK. A new order marked ES or EL will be created and shown in the Orders window.

Note: This order will be executed when the market price matches the order price.

 

Since the market continues to fluctuate while you are placing an entry order, certain fields in the Entry Order creation dialog will update in real time:

 

•   If you set a specific entry rate and the market rate changes before the order is finalized, then ‘Distance in pips’ will update accordingly, while the selected entry rate will remain fixed.

•   If you modify the ‘Distance in pips’ field and the market rate changes before the order is finalized, then the entry rate will update accordingly, while the ‘Distance in pips’ will remain fixed.

•   If you do not modify any field and the market rate changes before the order is finalized, then the entry rate will update accordingly.

Note: Some systems may allow Trailing Entry orders. Read more…

 

A new order marked ES (Entry Stop) or EL (Entry Limit) will be created and will appear in the Orders window.

 

 

This order will be executed at the time when the trader’s price matches the order price.[/dt_sc_toggle][dt_sc_toggle title=”Trailing Entry orders”]Trailing Entry Stop works as follows: if the market price moves UP for sell orders/DOWN for buy orders, then the Trailing Entry Stop moves with the market price, following it at a pre-set distance; if the market price moves DOWN for sell orders/UP for buy orders, then the Trailing Entry Stop price remains fixed and, if the market price reaches the Trailing Entry Stop order price, the order will be executed and a new position opened.

 

Trailing Entry Limit works as follows: if the market price moves DOWN for sell orders/UP for buy orders, then the Trailing Entry Limit moves with the market price, following it at a pre-set distance; if the market price moves UP for sell orders/DOWN for buy orders, then the Trailing Entry Limit price remains fixed and, if the market price reaches the Trailing Entry Limit order price, the order will be executed and a new position opened.

 

Trailing Entry Stops/Limits have the same logic as Trailing Stop orders on a position. For a specific example of how a trailing order behaves in relation to the market price, please see the Trailing Stop Example.

 

To place a Trailing Entry order, check the “Trailing Distance” check box in the order window.

 

[/dt_sc_toggle][dt_sc_toggle title=”Predefined Stop/Limit”]This functionality enables you to preset a stop/limit order when creating an entry order.

 

When you check the “Set Predefined Stop/Limit” check box, the dialog box expands, allowing you to preset a stop and/or limit on your entry order.

 

 

To set a predefined stop, trailing stop, or limit, click on the check box next to the desired order type. When you select the checkbox, the order rate becomes editable. The rate constraints to the right of the rate fields are based on the type of order and the condition distance setting.

Note: It is not possible to set both a predefined stop and a predefined trailing stop. Only one or the other may be checked.

 

Select the relevant check box and adjust the order rate. If you change your mind and decide not to place that order, simply uncheck the check box. If you uncheck the “Set Predefined Stop/Limit” check box, the dialog box will collapse to its previous size and any predefined stops/limits you selected will be discarded.

 

Once you have edited the predefined stop/limit orders to your satisfaction, click OK to place the order.

 

The entry order will appear in the Orders window with the predefined stop/limit already entered.

 

 

Upon order execution, the position will open with the stop and/or limit in place.

 


Note:
The application will remember whether the “Set Predefined Stop/Limit” check box was checked or not at the moment the Entry Order dialog box was closed. The next time the dialog box is open, it will be expanded or contracted, depending on its most recent state.[/dt_sc_toggle][dt_sc_toggle title=”OCO Orders”]OCO (One Cancels the Other) orders are two conditional orders created with an OCO link.When either of the orders is triggered, the other order is automatically removed by the system.

 

Only Entry orders can be OCO Orders.

 

OCO orders must be placed:

•  From the same account

•  On the same instrument

•  In the same direction (Buy/Sell)

•  On different sides of the market (Entry Stop/Entry Limit)

 

Example: An EL order to BUY EURUSD on account #105 can only be bound to an ES order to BUY EURUSD on account #105.

 

•  Creating OCO pair from scratch

•  Creating a new Entry order as an OCO to an existing Entry order

•  Binding two existing Entry orders into an OCO pair

•  Unbinding OCO orders

•  Trailing Entry orders

[/dt_sc_toggle][dt_sc_toggle title=”Creating OCO pair from scratch”]

It is possible to create an OCO pair “from scratch”, i.e. create two linked orders simultaneously.

Right-click the Buy or Sell rate in the Dealing Rates window, Instruments window, Dealing Rates Table window, or an Individual Dealing Rate window, and select Entry OCO from the menu.

 

 

The “Entry OCO Order” dialog box will appear:

 

 

Set the rate for the Entry Stop order and the rate for the Entry Limit order. Click OK to create both orders.

 

Note 1: Since there is only one Amount field, both orders will be for the same number of lots. If you want an OCO pair to have different numbers of lots, you must create the orders separately.

 

Note 2: You cannot set trailing distances from this window. You can set them manually later by right-clicking on the order record in the Orders window, and selecting Change order rate. Or, you can just create the orders separately.[/dt_sc_toggle][dt_sc_toggle title=”Creating a new Entry order as an OCO to an existing Entry order”]There are two ways to create a new Entry order to bind to an existing Entry order.

1.Create a new Entry order and then select an existing Entry order to link it with.

2.Select an existing Entry order and set an OCO link to a new order from the right-click menu.

 

Method 1: Create an Entry Stop or Entry Limit order as you normally would. The “Entry Order” dialog box will appear:

 

 

Check the “Create as OCO for order” check box. If there are OCO linkable Entry orders already open, they will be listed in the drop-down box. You can also type in an order number.

Note: The drop-down box contains all possible OCO order candidates for the type of order you have selected.

 

Method 2:

Right-click on an existing Entry order in the Orders window, select OCO Link, and then select Set To New Order.

 

 

The Entry Order dialog box will appear:

 

 

The “Create as OCO for order” check box will be checked. The order on which you clicked will be automatically selected. All other orders which can be OCO pairs with the new order are also available in the drop-down box.

 

In either case, if you try to bind a new Entry order to an existing Entry order that is already part of an OCO pair, the system will display a warning:

 

[/dt_sc_toggle][dt_sc_toggle title=”Binding two existing Entry orders into an OCO pair”]Right-click on an Entry order in the Orders window, select OCO Link, and then select Set To Existing Order.

 

 

The dialog box will appear:

 

 

If there are existing OCO linkable orders, they will be listed in the drop-down box.

 

If the original order is already part of an OCO pair, the dialog box will contain a warning:

 

[/dt_sc_toggle][dt_sc_toggle title=”Unbinding OCO orders”]To unbind an OCO pair, right-click on one of the OCO orders in the Orders window, select OCO Link, and then select Unbind OCO.

 

 

You will receive a confirmation pop-up

 

 

Click OK to unbind the orders.

 

Note: If you right-clicked an Entry order that is not part of an OCO pair, the Unbind OCO command will be grayed-out.[/dt_sc_toggle][dt_sc_toggle title=”Trailing Entry orders”]You can bind two trailing entry orders, or a trailing entry order and a regular entry order, into OCO pairs. Simply check the “Trailing Distance” check box when creating an OCO order.

 

 

However, when creating an OCO pair “from scratch” using the Entry OCO command, you only have the option to create regular Entry orders. If you want to make these into trailing orders, you can do it manually later by right-clicking on the order record in the Orders window, and selecting Change order rate.[/dt_sc_toggle][dt_sc_toggle title=”One-Click Trading”]As its name implies, One Click Trading allows you to open a new position in just one click.

One click trading can be enabled through the application main settings.

 

 

The “One Click Trading” setting adds an “Amount” field and sliders to every instrument’s cell in the Dealing Rates window. Furthermore, when you click on Bid or Ask, a position will immediately open for the number of lots indicated in the “Amount” field (by default, the DA of the selected account).

 

 

Sliders under each Bid and Ask button shows minimum and maximum amount that can be sold or bought from the currently selected account.

You can also determine beforehand whether to set Predefined orders when opening positions in one-click trading mode, using the Set Predefined order at position opening setting located in the application main Settings

 

One Click Trading with managed accounts

The following options are available when:

1.  A managed account is selected, AND

2.  The current managed account order allocation mode is set to “Proportional” or “Proportional-One lot minimum”

 

The Amount caption in each instrument’s cell becomes a link

 

 

Clicking the Amount link opens the “Amount Details” window, which enables you to review and re-distribute the number of lots for each individual account within the managed group.

 

 

Each amount can be modified.

 

 

In the One-Click Trading mode you can also close a position in one click – by clicking the Close Rate (Close column) in the Open Positions window. In this case the selected position is always fully closed.[/dt_sc_toggle][dt_sc_toggle title=”Price Alerts”]Price Alerts can be of two types: price alerts (rate alerts) and chart alerts. Rate alerts let you know when the rate on an instrument has reached or crossed a predefined level. Chart alerts are intended to notify the trader of trend reversals, breaking through support/resistance levels, and other important changes of the chart pattern.

When a Price Alert is triggered, the system displays a pop-up message and plays an audio alert.

 

•Setting Price Alerts

•Setting Chart Alerts

•Viewing, Editing, and Removing Price Alerts

•Triggered Price Alerts

•Changing Audio Alert Setting

[/dt_sc_toggle][dt_sc_toggle title=”Setting Price Alerts”]The quickest way to set a price alert is to click the Price Alert button under the Trade tab of the FXVoyager toolbar.

 

You can also set a price alert by right-clicking on an instrument in these windows:

 

•  Dealing Rates window

•  Individual Dealing Rate window

•  Dealing Rates Table window

•  Instruments window

 

 

Select Price Alert from the pop-up menu. The “Set Price Alert” box will pop up.

 

 

Set the rate at which you wish the Price Alert to be triggered. Click OK.[/dt_sc_toggle][dt_sc_toggle title=”Setting Chart Alerts”]View Tutorial

 

You can set a chart alert in two ways:

1) Select a trendline on the chart and select the option Set Alert On Penetration from the lines menu on the chart toolbar (this option is grayed out for any other lines except for trendlines)

 

 

2) Right-click on a trendline and select Set Alert On Penetration from the context menu (this option appears only in the context menu of a trendline):

 

 

After this option is selected, the Set Chart Alert window opens:

At the top of the window the chart instrument, interval, and the name of the trendline are indicated. Select the direction and the penetration conditions using the radio buttons.

 

Note 1: The ‘Upon candle close’ option is unavailable on tick charts. If ‘Tick’ is selected as the chart interval, ‘Upon penetration’ will be preselected, and both options of the Send Alert setting will be grayed out.

Note 2: If the ‘Upon candle close’ option is selected, the condition will be checked each time when a new candle opens in the chart.

 

Click OK to create the alert. It will immediately appear in the Price Alerts window in the dedicated Chart Alerts table:

Note 3: You cannot create several Chart Alerts on a single trendline.[/dt_sc_toggle][dt_sc_toggle title=”Viewing, Editing, and Removing Price Alerts”]You can view, edit, and remove untriggered Price Alerts using the right-click menu in the Price Alerts window.[/dt_sc_toggle][dt_sc_toggle title=”Triggered Price Alerts”]When the rate of an instrument reaches or crosses the rate of the Price Alert, a sound is generated and a pop-up message appears:

 

When a chart’s candle penetrates the trend line, a sound is generated and a pop up message appears:

 

 

Each Price Alert is triggered only once, and is automatically removed after you press OK.[/dt_sc_toggle][dt_sc_toggle title=”Changing Audio Alert Setting”]You can change the sound that is played when a Price Alert is triggered in the sound settings.[/dt_sc_toggle][dt_sc_toggle title=”Trading from Charts”]You can place trades and create conditional orders and price alerts directly from a chart.

Read the section on Trading From Charts.[/dt_sc_toggle][dt_sc_toggle title=”Monitor your Account(s)”]All necessary information about your account(s) can be found in the Account Information window.The window also allows you to view Margin Call and Rollover rates, set your default order amount, and combine multiple accounts into a single managed account.

 

 

In the FXVoyager toolbar, click the Accounts button under the Windows tab.

 

In addition, the Account Information bar give you an at-a-glance view of your account.

 

Click Reports under the Windows tab of the FXVoyager toolbar to run an Account Statement or Trader Statistics report.[/dt_sc_toggle][dt_sc_toggle title=”View Closed Positions”]You can view your position history in the Closed Positions window.

To open the Closed Positions window, open the Windows tab in the FXVoyager and click the Closed Positions button.

 

 

Read more about the Closed Positions window…[/dt_sc_toggle][dt_sc_toggle title=”Managed Accounts”]If you have multiple accounts, you can combine them into a group of managed accounts. Once combined into a managed account, the accounts can be traded as one.

 

Setting Up a Managed Account

If you have 2 or more accounts, you can set up a managed account.

Right-click inside the Account Information window, and select Organize Managed Accounts.

 

A dialog will open with two lists of accounts. You can select a group account by choosing the appropriate account number from the drop down box at the top of the list. The list under the drop down box contains all of the accounts that are a part of the group specified in the drop down box. You can move accounts between the two lists by selecting the account or several accounts and using the buttons > and <. You can move accounts from the Non-Managed pool to a group account, from a group account to the Non-Managed pool, or from one group account to another group account.

 

 

You can create a new group account by clicking the button “Create New Group”. The new group is created empty. You cannot create a new group if you already have an empty group.

 

You can add new accounts to the group or remove accounts from the group even if there are open positions/orders on account/group.

Please note:

1. Newly added account will NOT participate in the existing group positions/orders.

2. When removing account from the group, existing group positions and orders will remain open. But open position on this account will no longer be part of the group position.

Existing group order will be reduced by the amount allotted to this account. Existing order on this account that was a part of the group order will be removed.

 

Trading From a Managed Account

To trade from your managed account, make sure that it is highlighted in the Account Information window, or selected in the Account Information bar.

 

Order amounts are allocated among the accounts in the group based on the Managed Order Amount Allocation Mode setting, found in the Main Settings of the application.[/dt_sc_toggle][dt_sc_toggle title=”Options Trading”]Note: Options trading may not be available on your platform.

 

An option is a contract that gives the buyer the right to buy or sell the underlying commodity at the strike price on the expiration date. Strike price and expiration date are determined by trader. Options are used for speculative trading and for hedging spot positions.

 

Quick Start Trading Guide

 

Open (buy) a New Option

You can buy an option by right-clicking on a dealing rate (Dealing Rates, Dealing Rates Table, Instruments windows), or by clicking one of the buttons on the Option toolbar:

Buy Put: Click to buy a Put option.

Buy Call: Click to buy a Call option.

If you have only one trading account, this account is selected automatically; otherwise, select the account that you want to trade from in the Account Information window or in the Account Information bar. Option trading is not available from group accounts, or from a selection of multiple accounts.

The selected account will be highlighted.

Right-click on the rate for the option you want to buy in the Dealing Rates window. Right-click on the Bid (Sell) button for a put option, and for a call option click on an Ask (Buy) button. Select “Buy Option” from the pop-up menu.

The “New Option” dialog box will appear:

Enter the order amount in lots into the “Amount” field.

Select the expiration date for the option in the “Expiry” field.

Select the strike price in the “Strike”.

You can also select the option parameters via the convenient table listing strikes and the corresponding deltas, premiums and volatility for the selected expiration date.

Clicking on Table of Strikes button brings up a table in a pop-up window.

When you finish selecting options parameters, click OK to submit the order. Your order appears in the Options window with I status.

Note 1: Once you click OK your order is sent to the Dealer, who can confirm, reject or remove it (due to a change in market price).

Upon the dealer’s confirmation, a new option will be opened and the status of the option in the Options window will change to O.

Note 2: 20 strikes up and 20 strikes down from the current price are available for trading. Strike prices are 50 pips apart.

Close (sell) an Option

Select the option that you wish to close in the Options window. Right-click on the option, and select “Close Option” from the pop-up menu. Click OK on the confirmation message to submit the close option order.

Note: Once you click OK your order is sent to the Dealer, who can confirm, reject or remove it (due to a change in market price).

Upon the dealer’s confirmation, the option will be closed and the option value will be added to the account balance.

Monitoring Options Orders and Positions

Options orders and positions are displayed and managed in the dedicated Options window. You can open this window through the Options tab on the main panel:

Expiration of Options

Options expire at 12:00 Midnight on their expiration date.

‘Out of the Money’ and ‘In the Money’ options are automatically removed by the system upon expiration.

In the Money options result either in the opening of a spot position or in the option’s value added to the account balance between 12:00 midnight and 11:00 AM on the expiration day.

 

Monitoring Exposure from Options

The Summary and Currency Risk Exposure windows can be configured to reflect Options, Spot Positions, or both. (Or neither, if only “View Forwards” is activated.)

The options ‘Show Spot’ and ‘Show Options’ in the right click menu of the Summary window allow you to see the summary information:

•  Only for spot positions (‘Show Spot’ option active, ‘Show Options’ option inactive);

•  Only for options positions (‘Show Options’ option active, ‘Show Spot’ option inactive);

•  For both spot and options positions (both ‘Show Spot’ and ‘Show Options’ options active);

 

The options ‘View Spot’ and ‘View Options’ in the right click menu of the Currency Risk Exposure window allow you to define, which trades to be considered:

•  Only spot positions (‘View Spot’ option active, ‘View Options’ option inactive);

•  Only options positions (‘View Options’ option active, ‘View Spot’ option inactive)

•  Both spot and options positions (both ‘View Spot’ and ‘View Options’ options active)

Note 1: The exposure from options displayed in Risk Exposure and Summary windows is based on the “Exposure Amount” figure. This figure is displayed in Options window for each option position.

Note 2: Due to rounding rules difference in Risk Exposure, Summary, and Options windows, the last few digits of the figures might differ slightly.

Options in Account Statement

Opening and closing of Options positions and expirations of options are reflected in the Account Transactions table of the Account Statement report. Open Options positions are displayed in the Open Options Positions table of the Account Statement report.

Type

Transaction type

OOP – option opened

OCP – option closed

OEX – option expired

 

Ticket

The option number.

 

Option Prem

The amount per unit of currency that an option buyer pays to the seller.

The option premium is primarily affected by the difference between the stock price and the strike price, the time remaining for the option to be exercised, and the volatility of the underlying stock.

 

Option#

The option number

 

Instrument

Instrument name. This is the name that can be set and customized by the administrator in the Instruments section of the ActAdmin. For example, for GBPUSD, the instrument name may read “Cable”.

 

Expiration Date

Option expiration date.

 

Strike Price

The specified price on an option contract at which a call option buyer can buy the underlier or a put option buyer can sell the underlier.

The buyer’s profit from exercising the option is the amount by which the strike price exceeds the spot price (in the case of a put), or the amount by which the spot price exceeds the strike price (in the case of a call).

 

Call/Put

A Call is an options contract that gives the buyer the right to buy the underlying commodity at the strike price on the expiration date.

Put is an options contract that gives the buyer the right to sell the underlying commodity at the strike price on the expiration date.

 

Lot

Number of lots in the option. If the system is set in amounts (rule Show Trade/Order Size as), the column is titled Amount and displays the amount in the option.

 

Open Date/Time

The date and time of opening of the option.

 

Open Premium

Premium at opening of the option. Premium is calculated by the system using the volatility data specified in ActAdmin->Options-> Market volatility or Static Volatility. If negotiation on opening of an option is “Full”, dealer may manually change the open premium of the option before confirming the transaction.

Premium is used to calculate open cost of the option.

 

Open Cost

Total cost of opening of the option position. The open cost is subtracted from the account balance at the time of the transaction.

Open cost is calculated by the system via the following formula:

Cost = Premium*Contract size*Number of lots

Note: If negotiation on opening of an option is “Full”, dealer may manually change the open premium of the option before confirming the transaction, thus altering the calculated open cost of the option.

If the resulting open cost is less than the Minimum Cost, then the Minimum Cost will be applied instead of the above formula. The Minimum Cost is equal to the Number of Lots*Minimum Cost per Lot specified in ActAdmin for this instrument. In this case, the Premium is not used to calculate the open cost of the option.

 

Current Premium

Premium at the end of report period. Premium is calculated by the system using the volatility data specified in ActAdmin->Options-> Market volatility or Static Volatility. If negotiation on closing of an option is “Full”, dealer may manually change the close (current) premium of the option before confirming the transaction.

Current Premium is used to calculate the option value.

 

Option Value

The value the trader would receive for closing of the option position at the end of report period. Option value would be added to the account balance at the time of the transaction.

Option value is calculated by the following formula:

Option Value = Current Premium*Contract size*Number of lots.

Note: If negotiation on closing of an option is “Full”, dealer may manually change the close (current) premium of the option before confirming the transaction, thus changing the options value.

The Minimum Cost per lot setting has no effect on determining the option value.

 

User

The login of the trader or dealer that confirmed the buy option transaction.

Trader’s login appears in this column if the negotiation on buying an option was AUTO at the time of the transaction and the transaction did not require dealer’s confirmation.

Dealer’s login appears in this column if the negotiation on buying an option was FULL at the time of the transaction and the dealer confirmed the order without changing the option premium (cost).

Trader’s login appears in this column if the negotiation on buying of an option was FULL at the time of the transaction, the option was re-priced by dealer (set new open premium and open cost), trader accepted the new cost.

Glossary of Terms


Open Premium

Premium is the price of opening (buying) of an option per one unit of currency.

Premium is used to determine the open cost of the option.

 

Open Cost

Total cost of opening of an option. The open cost is subtracted from the account balance at the time of the transaction.

 

Current Premium

Current or close premium is the current close price of an option per one unit of currency.

Premium is used to determine the close value of the option.

 

Option Value

The value the trader would receive for closing an option. The option value is added to the account balance at the time of the transaction.

 

Option Number

The unique number that identifies the option in the system.

NOTE: ticket numbers for spot positions and option numbers for options are not the same, as spot and option transactions are tracked separately. Therefore, there may exist a spot position and an option in the system that may potentially have the same number.

 

Call

An option giving the owner the right (not the obligation) to buy the specified instrument at strike price on the expiration date.

 

Put

An option giving the owner the right (not the obligation) to sell the specified instrument at strike price on the expiration date.

 

Strike Price

The price at which an option can be exercised. Strike price is fixed in the option contract. For call options, the strike price is the price at which the instrument can be bought at the expiration date, while for put options the strike price is the price at which the instrument can be sold. Strike Price is one of key determinants of Option Premium.

 

Expiration date

The date when an in-the-money option may be exercised, or an out-of-the-money option expires worthless. The amount of time left until the option’s expiration date is one of the key determinants of Option Premium.

 

 

European option

An option that may only be exercised on expiration. European options are the only type of options available in the system.

 

[/dt_sc_toggle][dt_sc_toggle title=”Forward Trading”]

What is Forward Trading?

Forward trading is a way of trading Forex instruments, in which the delivery date of the contract is later than the 2 days of spot Forex trading. Forwards are not instruments in their own right, in the same way that options are not instruments – rather they are a different way of trading currencies. The spot Forex market has a set delivery date of 2 days. In Forex forwards, the delivery date (also known as the Value Date) is at some predefined point in the future, between 3 days and 6 months from the current day. The forward price on a Forex instrument differs from the spot price because it takes into account the annual interest rates of each currency as well as the duration between now and the selected value date. This information is plugged into a formula that determines the swap rate. The swap rate, added to the spot rate, results in the forward rate. As a result, forward trading can be an opportunity to take advantage of interest rate differentials between two currencies.

Forwards may be most beneficial to traders who know they are planning to keep a Forex position open longer than a few days, because overnight rollover charges are not applied to forwards.

How Forward Rates are Calculated

Overview

The forward rate is different than the spot rate and depends on the spot rate, interest rate and number of days between the current day and the Value Date. Forward rates are displayed with 2 more digits after the decimal than spot rates.

 

Note: If a forward position has not been closed by the end of the Value Date, then the forward will expire and be closed automatically at the end of the trading day. The P/L will be added to the account balance.

 

The Spot Rate is modified by a new component in the price, the Swap Rate. The Swap Rate is added to the Spot Rate in order to calculate the Forward Rate.

Forward Rate Formula

Buying a forward instrument:

Selling a forward instrument:

where

____ = Swap Rate

n = Number of calendar days between the current day and the end of the value day

R = Resulting % rate (the difference between the annual % rates of the two currencies, adjusted by +/- % spreads)

Clarification and Examples

Every Forex forward trade actually consists of two operations: Buying one currency and selling another currency:

BUY EURUSD means: BUY EUR / SELL USD

SELL EURUSD means: SELL EUR / BUY USD.

Annual % rates. For the purpose of forward interest rate calculation:

The annual rate of the bought currency is taken with the positive sign. This is what the trader receives. The annual rate of the sold currency is taken with the negative sign. This is what the trader pays.

Spreads +/- %. The purpose of the % spread is to decrease the rate that the trader receives and to increase the rate that the trader pays. Thus the % spread is subtracted from the annual rate that the trader receives, and added to the annual rate that the trader pays.

Example 1: Calculating the Resulting Rate (R)

The 1-month spread for EUR and for USD is 0.15%

EUR annual rate = 4.25%

USD annual rate = 2.00%

 

Example 1a: The trader BUYS EUR / SELLS USD:

For EUR, take clip0383clip0384. Trader receives 4.10%, less than the annual 4.25%.

For USD, take clip0385clip0386. Trader pays 2.15%, more than the annual 2.00%.

The resulting rate (R) is clip0387clip0388. Positive result, the Trader receives.

 

Example 1b: The trader SELLS EUR/ BUYS USD:

For EUR, take clip0389clip0390. Trader pays 4.40%, more than the annual 4.25%.

For USD, take clip0391clip0392. Trader receives 1.85%, less than the annual 2.00%.

The resulting rate (R) is clip0393clip0394. Negative result, the Trader pays.

 

Applying % spreads from the table:

1)   If the time difference between the current day and the end of the value date is less than or equal to the time interval specified in the table, the % spread specified for this interval is used;

2)  If the time difference between the current day and the end of the value date is larger than the time interval specified in the table, the % spread specified for the next interval is used.

3)  If there is no % spread specified for a given interval, the system will attempt to use the % spread from the nearest later interval. If no such spread is available, then the latest value date will be constrained by the nearest available % spread.

Example 2: Calculating the Swap % Rate

Swap % rate formula:

Today is Wednesday September 03, time is 16:00

Value Date = October 1 (less than 1 calendar Month):

n = 27 (27 calendar days until the value date)

 

If we BUY EUR/ SELL USD:

R = + 1.95%

 

If we SELL EUR/ BUY USD:

R = – 2.55 %

 

Example 3: Calculating the Swap Rate to get the Forward Rate

Current spot price for EURUSD: BID 1.4570 / 1.4575 ASK

 

Example 3a: BUY EUR / SELL USD (Using ASK price of 1.4575)

Swap Rate: 0.14625% of Ask rate of 1.4575 = 0.002132

Trader Receives, meaning he buys lower; This means the swap rate is subtracted from the ASK price.

Example 3b: SELL EUR / BUY USD (Using BID price of 1.4570)

Swap Rate: – 0.19125% of Bid rate of 1.4570 = – 0.002787.

Trader Pays, meaning he sells lower; This means the swap rate is subtracted from the BID price.

Placing a Forward Order

You can create forward market orders, entry orders, and stop/limit orders, or even OCO orders, just like with spot instruments.

You can place a forward order by right-clicking on a dealing rate (Dealing Rates, Dealing Rates Table, Instruments windows), or by clicking one of the buttons on the Forward toolbar:

When forward trading is available on a Forex instrument, the dealing rate right-click menu will include Spot and Forward order sub-menus:

Note: Since forwards are only available on Forex instruments, the ‘Spot’ and ‘Forward’ sub-menus only appear for Forex instruments.

Creating a Forward Market Order

The New Forward Position (market order creation) dialog resembles the one for spot orders, with three additions: Value Date, Swap Rate, and the resulting Forward Rate.

Once you select a Value Date, the Swap Rate and Forward Rate are calculated automatically.

FORWARD ORDER

SPOT ORDER

The Swap Rate is displayed with a +/- symbol depending on if it’s added or subtracted from the Spot Rate. If the Swap Rate improves the trader’s rate, it is displayed in green. If the Swap Rate worsens the trader’s rate, it is displayed in red.

To place a Forward order, you must enter a value date in the Value Date field, or select a value date from the calendar by clicking on the arrow next to the date.

Note: The Value Date for forwards is a delivery date at some predefined point in future. If the forward position has not been closed by end of trading on the value date, then the forward will expire and the position will be closed automatically. A trader defines Value Date himself (from 3 business days to 6 months), while creating a forward order. Value Date directly affects the forward rate (see Forward Rate Calculation)

Value Date constraints

The Value Date cannot be on a weekend. Because spot trades have a settlement date of 2 days, the earliest available Value Date for a forward trade is a weekday 3 business days from the current day. (If today is Tuesday, the nearest Value Date is Friday. If today is Wednesday, the nearest Value Date is Monday.)

This video clip shows how to select the value date and create a forward order.

Monitoring Forward Orders and Positions

Forward orders and positions are displayed and managed in dedicated forward windows: Forward Orders, Forward Open Positions, Forward Closed Positions. You can open these windows through the Forwards tab on the main panel:

The Forward Orders, Open and Closed Positions windows are similar to the analogous Spot versions of these windows, only with the addition of Swap Rate and Value Date columns.

Forward Interest % Rates window

The Forward Interest % Rates window is a table of forward interest rates for the currency pairs:

 

Forwards Workspace

 

There is a quick and easy way to create a dedicated Forwards workspace. On the Forwards tab, select Open Forwards Workspace.

This will create a new workspace and populate it with the four dedicated forwards windows.

 

Monitoring Exposure from Forwards

The Summary and Currency Risk Exposure windows can be configured to reflect Forward Positions, Spot Positions, or both. (Or neither, if only “View Options” is activated.)

The options ‘Show Spot’ and ‘Show Forward’ in the right click menu of the Summary window allow you to see the summary information:

•  Only for spot positions (‘Show Spot’ option active, ‘Show Forward’ option inactive);

•  Only for forward positions (‘Show Forward’ option active, ‘Show Spot’ option inactive);

•  For both spot and forward positions (both ‘Show Spot’ and ‘Show Forward’ options active);

 

The options ‘View Spot’ and ‘View Forward’ in the right click menu of the Currency Risk Exposure window allow you to define, which trades to be considered:

•  Only spot positions (‘View Spot’ option active, ‘View Forward’ option inactive);

•  Only forward positions (‘View Forward’ option active, ‘View Spot’ option inactive)

•  Both spot and forward positions (both ‘View Spot’ and ‘View Forward’ options active)

[/dt_sc_toggle][dt_sc_toggle title=”Binary Options Trading”]Note: Binary Options trading may not be available on your platform.

 

Binary Options are named so because they could have only two results: a holder either receives nothing or some predefined sum. Technically, buying a Binary Option is like placing a bet on further instrument price movement (hereinafter Binary Option = bet). Binary Option gives its holder the right to receive a fixed sum if the current asset’s price at the expiration date and time is higher/lower than the strike price.

 

As with other option transactions, buyer pays a bonus (premium) for acquiring an optional right. If he wins, he receives his premium back plus certain percentage of this sum (this percentage is called payout or return). If buyer loses, he receives a consolation payout, which is also a percentage of the premium paid. Thus, trader never loses all of his money – he is always refunded at least a part of his investment. Furthermore, trader doesn’t have to pay any commissions or fees for transactions with Binary Options.

 

There are two types of Binary Options that can be traded on the platform:

•   High/Low – strike rate is always the current instrument rate

•   Spread – trader can choose between two possible strikes – several pips above and several pips below the current rate

 

Important Notes for Binary Options Transactions


Important notes for Binary Option transactions:

 

• When you buy the Binary option, the Premium value is withdrawn from your account balance.

• No commissions, markups or other charges are applicable for buying a binary option.

• When the binary option position opens, it receives a unique id (Bet#). This number will be used in reports.

• It is not possible to buy a binary option, if there is not enough money on the account balance or usable margin is insufficient.

• There is a limit on the amount any trader can invest in Binary option at any given time. It is measured as the total amount of premium for all open binary options of the trader. This parameter is regulated by the Administrator.

• It is not possible to buy a binary option on an instrument during a non-trading interval

• It is not possible to buy a binary option when trading is closed

• It is not possible to buy a binary option during a feed timeout

• It is not possible to buy a binary option using a non-tradeable price (in case of the invalid external rates)

 

Expiration procedure:

• When a binary option expires, the user receives his winning payout or consolation payout, depending on whether he wins or loses:

The winning payout is paid:

*For Call(Up) – if the Bid rate at expiration is HIGHER than the strike rate (the Bid rate at the moment of placing the bet)

*For Put(Down) – if the Bid rate at expiration is LOWER than the strike rate (the Bid rate at the moment of placing the bet)

Note: Depending on the system configuration, either Bid, Ask or Middle rate is used in binary options trading.

• If the Bid rate at expiration is EQUAL to the strike rate, then trader can receive either consolation payout or premium paid for placing the bet, depending on the system configuration

• The non-trading intervals have no effect on the option expiration process – the current rate is taken as the expiration rate

• Closed trading doesn’t have any effect on the option expiration process – the current rate is taken as the expiration rate

• Feed timeout doesn’t have any effect on the option expiration process – the last active rate is taken as the expiration rate

• A non-tradable price in case of an invalid external rate has no effect on the option expiration process – the current rate is taken as the expiration rate.

Placing a Binary Bet

You can buy a binary option by clicking the Binary Options Bets button on the Binary Option toolbar:

In order to select the binary option type – High/Low or Spread, click on the corresponding tab at the top of the Binary Options window. Clicking on a tab opens controls for the specific options type trading

If you have only one trading account, this account is selected automatically; otherwise, select the account that you want to trade from in the Account Information window or in the Account Information bar.

Note: Binary Option trading is not available from group accounts, or from a selection of multiple accounts.

High/Low Binary Options window


The Binary Options window
is used for selecting and placing a bet in ActTrader. This window combines all instruments and expirations, as well as bet placement controls.

High/Low Binary Options provide only one strike price which is always equal to the current instrument rate.

The BO Bets window is divided into three sections:

Instruments

Chart

Bet placement controls

 

The title of the BO Bets window contains the Net P/L value for all currently open bets (of all available types), calculated as a difference between sum of all premiums of the active bets, and the current payouts for these bets. The Net P/L is updated every second, taking into consideration whether the bets are currently winning or losing.

Example:

Two bets placed:

Bet#

Instrument

Premium

Condition

Payout

Current rate

Current payout

1

EURUSD

100

Put 1.29500

174.00/15.00

1.29512

15.00

2

USDJPY

100

Call 94.301

172.00/15.00

94.353

172.00

Net P/L = (Current Payout1 + Current Payout2) – (Premium1 + Premium2) = $187 – $200 = -$13

Instruments Section

The top of the window contains tiles which display the information about available binary options. Clicking on tile displays a large chart in the main part of the window and enables trading controls at the bottom.

You can filter out the instruments by clicking the button in the Instruments control and selecting the desired instrument(s) in the dialog box:

The button displays the list of selected instruments, or “All” in case all available instruments are selected.

It is also possible to hide some expirations by unchecking the corresponding checkboxes at the top of the window:

Note: System will hide expiration choice, if it is not available on any of the displayed instruments.

Each instrument cell contains the following elements:

Instrument name

Payout value for active options; if the option trading hasn’t started yet, then Payout is not displayed:

Current rate (bid) displayed using the Large Pips Shift Offset setting for the instrument, with large pips colored in red or green if the last price update decreased or increased the previous price, respectively

Expiration Date/Time

Time till expiration. If the option is not open for trading yet, the cell shows: Will open in [time]

Current P/L – total P/L for all active bets for this option across all accounts. Shown in red if zero or negative, and in green if positive. Current P/L is calculated as a sum of all “current” payouts minus sum of all premiums. “Current” payout for each bet is taken depending on whether the bet is winning or losing. If no options are bought for the option, the P/L is not shown (hence when the option expires, Current P/L for it is reset to 0)

The list of the Binary Options can be scrolled horizontally by clicking the left/right arrow buttons at the edges of the list.

Chart section

 

The chart section displays the price chart for the selected instrument

The left top of the chart displays the instrument name, rate used for trading and creating the chart (Bid, Ask or Middle – depends on the system configuration) and period (for candle charts).

In the upper right corner of the chart you can find the buttons for selecting the chart view: tick, candle, with/without fill.

Current rate is displayed on chart as a dot and highlighted on the rates scale

White vertical line indicates the time when the trading opened for this particular bet (Start time).

Yellow vertical line indicates the time when the bet expires (End time)

Gray vertical line indicates the time before the expiration when bets can no longer be accepted

The price chart is displayed for a selected option only when the trading is open. If trading is closed, the empty pane is shown with the following caption in the upper left corner: “This Binary Option will be available at [first contract start date/time]”.

If there are active bets for a current option on any accounts, they are displayed as horizontal lines on chart: red for the “below” bets, and green for the “above” bets.

At the point of bet creation there is a triangle pointing down (for “below” bets), or up (for “above”)

Bet amount (Premium) is displayed at the opposite side of the triangle

At the lower left corner below the chart you can see Current P/L for all currently active bets for the option across all accounts, which is the difference between all current (potential) payouts and paid premiums. When the option expires, Current P/L for it is reset to 0.

At the lower right corner below the chart the option expiration date/time is displayed

Right-click menu on chart

Right-click menu allows to customize the chart view

 

Tick Chart – chart created by ticks. This option is selected by default

Candle Chart – chart created by candles. Chart period depends on the selected expiration:

Intraday: 1min

Daily: 30min

Weekly: 4hrs

Monthly: 1day

Fill Chart – if this option is enabled, the area below the chart is filled with the chart color. Enabled by default

Show Bet Amounts – if this option is enabled, the amount of each bet is displayed on the chart. Enabled by default

 

Below is the chart with Fill Chart and Show Bet Amounts options disabled:

 

 

Note: when the option expires, all bet information is erased from the chart, and the chart itself starts over from the left.

Bet placement Controls

Payout

Shows possible trader’s payout (in percent of the premium) if he/she wins. This is non-editable value which depends on the selected instrument and expiration date; recalculated with every tick.

Rate

Current  price of the selected instrument (also named strike price). This could be Bid, Ask or Middle rate – depends on the system configuration. The chart header indicates which rate is used for trading (see above).

Rate is updated every tick.

 

Above and Below buttons

These buttons are used for selecting the type of binary option. Click Above if you expect that at the expiration date and time the  bid rate of the instrument will be higher than the current rate. Click Below if you expect that at the expiration date and time the bid rate of the instrument will be lower than the current rate.

Amount

Bet premium in the system base currency. The trader’s payout directly depends on this parameter.

Maximum and minimum bet amount, as well as the increment for changing amount are regulated by the Administrator.

If you manually enter the value not compatible with the amount limitations, the field is highlighted in red. Hovering the mouse over it shows the following hint:

 

 Possible trader’s payout in system base currency is displayed below the Amount field:

– The first value is a Winning Payout received in case the trader wins. This value is recalculated every tick based on the current payout and entered Amount

– The second value is a Consolation Payout received in case the trader loses

 

Note: Consolation may not be used for an instrument.In this case the second value will not be displayed.

 

Time left to trade

Time left for placing the bet is displayed in red above the Invest button. If the bet cannot be placed anymore (interval between Stop Trading and End time), the timer is displayed in grey, and shows the time until the actual expiration

 

Invest

Click the Invest button to place the bet. The button is active only when the following conditions are met:

Valid Amount is entered

Above or Below is selected

Trading is open on instrument and binary option

Stop Trading interval is not reached

One individual account is selected

Note: If you have only one trading account, this account is selected automatically; otherwise, select the account that you want to trade from in the Account Information bar.

After clicking the Invest button confirmation message will pop-up with the binary bet details:

Click OK to confirm the bet – the placed bet will appear in the Active Bets window and will be marked on the chart as a red or green line.

You can check the box “Don’t show this message again” if you do not want to receive this confirmation every time when placing a bet.

You can enable/disable the confirmation message with the new checkbox “Buy Binary Option confirmation (Combined View)” in the Settings->Notifications and Messages:

Spread Binary Options window

Spread Binary Options provide two possible strikes for every instrument and expiration: Strike-up and Strike-down (above and below the current rate, respectively). When placing a bet of this BO type trader wins if at the expiration date/time the instrument rate is higher than the “strike-up” or lower than the “strike-down”. The spread between strikes increases the risk, but it also leads to a higher winning payout (up to 100%) compared to the High/Low BO.

The spread (difference between Strike-up and Strike-down) depend on time left till expiration and volatility of the instrument rate:

The more time left till expiration, the wider the spread

The higher the current volatility, the wider the spread

Normally, if the volatility remains unchanged, the spread narrows down as the time goes by.

The BO Bets window is divided into three sections:

Instruments

Chart

Bet placement controls

 

The title of the BO Bets window contains the Net P/L value for all currently open bets (of all available types), calculated as a difference between sum of all premiums of the active bets, and the current payouts for these bets. The Net P/L is updated every second, taking into consideration whether the bets are currently winning or losing.

Example:

Two bets placed:

Bet#

Instrument

Premium

Condition

Payout

Current rate

Current payout

1

EURUSD

100

Put 1.29500

174.00/15.00

1.29512

15.00

2

USDJPY

100

Call 94.301

172.00/15.00

94.353

172.00

Net P/L = (Current Payout1 + Current Payout2) – (Premium1 + Premium2) = $187 – $200 = -$13

Instruments Section

The top of the window contains tiles which display the information about available binary options. Clicking on tile displays a large chart in the main part of the window and enables trading controls at the bottom.

You can filter out the instruments by clicking the button in the Instruments control and selecting the desired instrument(s) in the dialog box:

The button displays the list of selected instruments, or “All” in case all available instruments are selected.

It is also possible to hide some expirations by unchecking the corresponding checkboxes at the top of the window:

Note: System will hide expiration choice, if it is not available on any of the displayed instruments.

Each instrument cell contains the following elements:

Instrument name

Payout value for active options (displayed as either percentage of  the premium e.g. 100%, or a multiple of the premium e.g. x2.0). If the option trading hasn’t started yet, then Payout is not displayed:

Current rate (depending on the System settings, it can be Bid, Ask or Middle). The rate is colored in red or green if the last price update decreased or increased the previous price, respectively

Strike-up and Strike-down

Expiration Date/Time

Time till expiration. If the option is not open for trading yet, the cell shows: Will open in [time]

Time progress bar – shows the elapsed time as a percentage of the entire option’s lifetime

Current P/L – total P/L for all active bets for this option across all accounts. Shown in red if zero or negative, and in green if positive. Current P/L is calculated as a sum of all “current” payouts minus sum of all premiums. “Current” payout for each bet is taken depending on whether the bet is winning or losing. If no options are bought for the option, the P/L is not shown (hence when the option expires, Current P/L for it is reset to 0)

The list of the Binary Options can be scrolled horizontally by clicking the left/right arrow buttons at the edges of the list.

Chart section

 

The chart section displays the price chart for the selected instrument

The left top of the chart displays the instrument name, rate used for trading and creating the chart (Bid, Ask or Middle – depends on the system configuration) and period (for candle charts).

In the upper right corner of the chart you can find the buttons for selecting the chart view: tick, candle, with/without fill.

Current rate is displayed on chart as a dot and highlighted on the rates scale

White vertical line indicates the time when the trading opened for this particular bet (Start time).

Yellow vertical line indicates the time when the bet expires (End time)

Gray vertical line indicates the time before the expiration when bets can no longer be accepted

The price chart is displayed for a selected option only when the trading is open. If trading is closed, the empty pane is shown with the following caption in the upper left corner: “This Binary Option will be available at [first contract start date/time]”.

If there are active bets for a current option on any accounts, they are displayed as horizontal lines on chart: red for the “below” bets, and green for the “above” bets.

At the point of bet creation there is a triangle pointing down (for “below” bets), or up (for “above”)

Bet amount (Premium) is displayed at the opposite side of the triangle

At the lower left corner below the chart you can see Current P/L for all currently active bets for the option across all accounts, which is the difference between all current (potential) payouts and paid premiums. When the option expires, Current P/L for it is reset to 0.

At the lower right corner below the chart the option expiration date/time is displayed

In addition, there are Above and Below buttons directly at the strikes levels, with the amount displayed on them. Clicking on one of the buttons sends a bet placement request for the corresponding direction and strike. The amount can be changed in the Trade Control section. When a bet is placed, the trader receives a confirmation dialog (see below)

Right-click menu on chart

Right-click menu allows to customize the chart view

 

Tick Chart – chart created by ticks. This option is selected by default

Candle Chart – chart created by candles. Chart period depends on the selected expiration:

Intraday: 1min

Daily: 30min

Weekly: 4hrs

Monthly: 1day

Fill Chart – if this option is enabled, the area below the chart is filled with the chart color. Enabled by default

Show Bet Amounts – if this option is enabled, the amount of each bet is displayed on the chart. Enabled by default

 

Below is the chart with Fill Chart and Show Bet Amounts options disabled:

 

 

Note: when the option expires, all bet information is erased from the chart, and the chart itself starts over from the left.

Bet placement Controls

Payout

Shows possible trader’s payout if he/she wins (displayed as either percentage of  the premium e.g. 100%, or a multiple of the premium e.g. x2.0) is non-editable value which depends on the selected instrument and expiration date; recalculated with every tick.

Rate

Current  price of the selected instrument (also named strike price). This could be Bid, Ask or Middle rate – depends on the system configuration. The chart header indicates which rate is used for trading (see above).

Rate is updated every tick.

 

Spread

Distance between the current rate and up- and down strikes (in pips, can be fractional)

 

Above and Below buttons

These buttons are used for selecting the type of binary option. Click Above if you expect that at the expiration date and time the instrument rate will be higher than the rate inscribed on the button. Click Below if you expect that at the expiration date and time the instrument rate will be lower than the rate inscribed on the button.

Amount

Bet premium in the system base currency. The value is replicated on the Above and Below buttons on the chart.The trader’s payout directly depends on this parameter.

Maximum and minimum bet amount, as well as the increment for changing amount are regulated by the Administrator.

If you manually enter the value not compatible with the amount limitations, the field is highlighted in red. Hovering the mouse over it shows the following hint:

Above and Below buttons on the chart are inactive (grayed out) in this case.

 

Possible trader’s payout in system base currency is displayed below the Amount field:

– The first value is a Winning Payout received in case the trader wins. This value is recalculated every tick based on the current payout and entered Amount

– The second value is a Consolation Payout received in case the trader loses

 

Note: Consolation may not be used for an instrument.In this case the second value will not be displayed.

 

Time left to trade

Time left for placing the bet is displayed above the Invest button. If the bet cannot be placed anymore (interval between Stop Trading and End time), the timer is displayed in grey, and shows the time until the actual expiration

Above and Below buttons on the chart are also inactive (grayed out) in this case.

Invest

Click the Invest button to place the bet. The button is active only when the following conditions are met:

Valid Amount is entered

Above or Below is selected

Trading is open on instrument and binary option

Stop Trading interval is not reached

One individual account is selected

Note: If you have only one trading account, this account is selected automatically; otherwise, select the account that you want to trade from in the Account Information bar.

After clicking the Invest button confirmation message will pop-up with the binary bet details:

Click OK to confirm the bet – the placed bet will appear in the Active Bets window and will be marked on the chart as a red or green line.

You can check the box “Don’t show this message again” if you do not want to receive this confirmation every time when placing a bet.

Please note: If you disable the message, each click on the Above or Below button on the chart will place a bet.

You can enable/disable the confirmation message with the new checkbox “Buy Binary Option confirmation (Combined View)” in the Settings->Notifications and Messages:

Monitoring Active Bets

The Active Bets window displays currently active bets of all types that are awaiting their expiration date and time.

Account

Account number

Owner

Last name or login of the account money owner

Bet #

The unique number that every bet receives. This number is also used in reports.

Instrument

The name of the underlying instrument.

 

Creation

The creation date and time

Expiration

The expiration date and time

Type

Binary Option type (“Spread” or “High/Low”)

Premium

The bet premium (cost)

Condition

Displays the strike rate, and a triangle in front of it: a green triangle, pointing up, if the user placed the Call option, or a red triangle, pointing down, if the user placed a Put option.

Payout

The values which have been displayed in the Buy Binary option window: Winning payout and Minimum payout, separated by ‘/’.

Note: If consolation is not used for this instrument, the Minimum payout will not be displayed.

Pending bets (with yellow background)

 

If at the moment of bet expiration the price is not available in the system due to technical reasons, the system sends corresponding message to trader, and this bet remains in the Active Bets window highlighted in yellow.

This bet will expire only after the system retrieves the expiration price (price which had been sent from the external feed during the first minute after expiration time). Otherwise the bet will be automatically removed by the system, and the option’s premium will be refunded to the trader. In this case the system sends the following message to the trader: “The binary option #[option_id] has been removed from the system. The premium has been reimbursed to you. Please contact the broker for details”

Monitoring Expired Bets

The Expired Bets window displays the bets of all types that have already expired.

Account

Account number

Owner

Last name or login of the account money owner

Bet #

The unique number that every bet receives. This number is also used in reports.

Instrument

The name of the underlying instrument.

 

Creation

The creation date and time

Expiration

The expiration date and time

Type

Binary Option type (“Spread” or “High/Low”)

Premium

The bet premium (cost)

Condition

Displays the strike rate, and a triangle in front of it: a green triangle, pointing up, if the user placed the Call option, or a red triangle, pointing down, if the user placed a Put option.

Expiration Rate 

The underlying instrument rate at the moment of the option’s expiration

Payout

The resulting payout.

This window can be accessed in the right-click menu of the Expired Bets window.

The Expired Bets Settings window provides you with several display settings: You can display expired bets for a specific account or for all accounts assigned to you. You can also specify a number of recent expired bets to show (default=30).

[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”Charts” tab_id=”1687521777638-4-10″][dt_sc_toggle_group][dt_sc_toggle title=”Types of Charts”]Select one of the available types of charts: line, bar, or candlestick.

Line Chart

A Line Chart draws a line from one closing price to the next closing price. The resulting chart shows the general price movement of a currency pair over a specified time period.

Below is an example of a line chart for USDCHF taken for a one-day time period:

 

A segment is green if the next closing price is higher than the previous closing price.

A segment is red if the next closing price is lower than the previous closing price.

Green and Red are the default settings; you can change them in Chart Settings: Colors section.

 

Bar Chart

A Bar Chart shows the opening and closing prices, as well as highest and lowest prices of the time period.

Below is an example of a bar chart taken for a one-day period:

A vertical bar indicates a specified time period,  for example, 1 minute, 5 minutes, 15 minutes, 1 hour, etc.

You can specify the time period by selecting it from the Time Scale drop-down box on the Chart Toolbar:

 
You can also specify the number of bars to be displayed on a chart by entering the desired number into the Load Candles field in the Chart Settings dialog > Common > Chart Field section:

A vertical bar indicates the currency pair’s range as a whole for a specified time period.

High indicates the highest traded price of the specified time period.

Low indicates the lowest traded price of the specified time period.

Open indicates the opening price.

Close indicates the closing price.

 

A bar is blue if the closing price is higher than the opening price.

A bar is red if the closing price is lower than the opening price.

Blue and Red are the default settings; you can change them in Chart Settings: Colors section

Candlestick Chart

A Candlestick Chart shows the opening and closing prices, as well as highest and lowest prices of the time period.

Below is an example of a candlestick chart taken for a one-day period:

A candle indicates a specified time period, for example, 1 minute, 5 minutes, 15 minutes, 1 hour, etc.

You can specify the time period by selecting it from the Time Scale drop-down box on the Chart Toolbar:

 
You can also specify the number of candles to be displayed on  a chart by entering the desired number into the Load Candles field in the Chart Settings dialog > Common > Chart Field section:

A candlestick chart shows the same information as a bar chart but in a different format.
The Body of a candlestick indicates the range between the opening and closing prices.

The Shadows indicates the high-to-low range.

High indicates the highest traded price of the specified time period.

Low indicates the lowest traded price of the specified time period.

Open indicates the opening price.

Close indicates the closing price.

 The Body of a candlestick is green if the closing price is higher than the opening price.

 The Body of a candlestick is red if the closing price is lower than the opening price.

 

Green and Red are the default settings; you can change them in Chart Settings: Colors section.

 

[/dt_sc_toggle][dt_sc_toggle title=”Create New Chart”]

To open a chart window on your trading workspace, choose Charts on the Upper Panel Menu, and then choose New Chart.

 

You may also right-click on an instrument in the Dealing Rates window, Instruments window, Dealing Rates Table window or Individual Dealing Rate window, and select Open Chart.

 

Select the instrument and the time scale from the New Chart menu and press OK. (If you right-clicked on an instrument to reach the New Chart dialog, then that instrument will be pre-selected.

 

 

To search for instruments,enter one or more characters of the instrument name in the Find Instrument box and click the up/down arrows to toggle through the results.

 

 

A new chart window will appear.

 

 

Note: Maximum number of charts that can be open simultaneously in ActTrader is limited to 100. When you try to open an extra chart, the system will generate the following message:

 

 

This restriction does not affect charts in Binary Options Bets window.

[/dt_sc_toggle][dt_sc_toggle title=”Chart Toolbar”]

Click here to view a video overview of the chart toolbar.

1) Select Instrument

Pull-down box that allows you to select the instrument in the chart. The instrument and interval settings are changed individually and independently of each other. As soon as one of these parameters is altered, the chart will refresh to reflect the change.

2) Select Time Interval

Pull-down box that allows you to select the time interval of the chart. The instrument and interval settings are changed individually and independently of each other. As soon as one of these parameters is altered, the chart will refresh to reflect the change.

3) Zoom buttons

These buttons allow you to zoom in, zoom out, and reset the zoom to the default chart display.

4) Vertical Auto-Scale

The Vertical Auto-Scale button determines whether the vertical scale of the chart will automatically change in order to fit in all vertical data, whenever the chart is scrolled or zoomed.

5) Crosshair

The crosshair tool turns the cursor into a crosshair, allowing you to pinpoint exact locations on the chart.

The Measure tool offers a convenient way to  quickly determine the distance and measurements between two points on a chart.

To access this tool, click on the crosshair icon on the chart toolbar, and select Measure Crosshair from the list box:

Point the center of the crosshair anywhere on the chart; press the left mouse button to set the start point of your measurement. Without letting go of the left mouse button, drag the cursor across the chart. A rectangle will be plotted from the start point to the current cursor location showing the outline of the measured chart area.  At the same time you will see the following information to the right of the cursor, above the horizontal line: Distance in pips / Profit per lot /Distance in Bars /Time difference between the start point and the current cursor location. This information changes continuously as you move the cursor:

 

Calculation of distance between point A and point B:

Distance in pips = |<Price B> – <Price A>|[in pips]

Distance in bars = | <Bar number of B> – <Bar number of A>|

Distance in time = | <Time of B> – <Time of A>|

Profit per lot = <Distance in pips> * Pip value

The location of the text will change for a better view if the crosshair moves too close to the outside of the chart:

When you release the left mouse button, the rectangle and the text label will disappear.

 

The Details window displays candles and indicators parameters at the current mouse pointer location.

This window can be shown/hidden by pressing “i” key or can be briefly displayed while “Tab” key is being pressed.

To see pop-up hint (showing details/values)  hover mouse over an indicator or a candle

 

6) Indicator Setup

Opens the indicator setup menu, where you can configure the indicators appearing in the chart.

8) Print Chart

Prints the chart

9) Save and Export chart data

This feature lets you export data from the current chart in the form of a table. After you click the save icon, a dialog will appear, allowing you to customize the exported data:

 

You can select which of the 6 columns you wish to include in the table (Date, Time, Open, High, Low, Close). You can also choose to export all available time data or specify a specific time interval. When you are satisfied with the column and interval settings, click Next.

 

On the following screen, you can choose the file format, file name, and save location. The following export formats are available:

Microsoft Excel Spreadsheet (*.xls)

Web Pate (*.html)

XML Document (*.xml)

Plain Text (*.txt)

 

 

10) Open Chart Table

This button will open the chart in the form of a table:

 

The Chart Table is a tabular representation of a chart. It contains 5 columns:

 

Time                

The time of the chart update

 

Open                

Open price

 

High                

High price

 

Low                

Low price

 

Close                

Close price

 

Updating

The Chart Table updates in real time. The frequency of updates depends on the interval setting.

 

Instrument and Interval

Just like in a graphical chart window, the instrument and time interval may be selected from the pull-down menus at the top of the window.

 

11) Save Current Chart as Picture

This button allows you to save a chart as an image. Only part of the chart visible on a chart window will be saved to a file.

12) Save Current Chart

This button allows you to save current chart.

13) Drawing Tools

This is a pull-down menu allowing you to choose from several drawing tools:

Drawing tools can be used on the chart and on indicators appearing below the chart.

14) Show Linked Objects

Allows you to display linked objects

15) Delete Object(s)

This button allows you to remove a selected object, or all objects, from the chart.

16) Show/Hide Positions, Orders, Price Alerts

This button allows you to show/hide Open and Closed Positions, Orders, and Price Alerts on the chart. You can click on the arrow next to the button to hide/show these items separately.

17) Chart Type

Allows you to select the type of the chart: candlestick, bar, or line.

18) Chart Settings

Opens the chart settings menu.

19) Create Visual Strategy

Allows to create visual strategy

Positioning the toolbar:

To move the toolbar, move the mouse toward the left edge of the toolbar, when the cursor turns into a crosshair, you can click and move the toolbar.

 

[/dt_sc_toggle][dt_sc_toggle title=”Trading From Charts”]

Click here to view video tutorials on trading from charts.

 

You can place, modify, and remove market orders, conditional orders, and price alerts directly from a chart window.

 

Trading from the right-click menu:

 

Placing a Market Order at the current rate

From the chart toolbar:

To buy or sell the instrument at the current price, click the buy or sell button in the chart toolbar. This will open the New Position dialog.

 

From the chart right-click menu:

Right-click somewhere on the body of the chart, and then select one of the following options:

 

Buy [GPBUSD] at 1.7049

This option is to buy the current instrument at the current market rate (regardless of the rate near which the mouse was clicked). It will open the New Position dialog.

 

Sell [GPBUSD] at 1.7048

This option is to sell the current instrument at the current market rate (regardless of the rate near which the mouse was clicked). It will open the New Position dialog.

 

Placing an Entry Order

To place an entry order, right-click on the body of the chart at the desired rate for the order, and then select one of the following options:

 

Entry Order BUY at 1.7080

This option is to place a BUY entry order at the rate where the mouse was clicked. It will open the Entry Order dialog, where you can fine-tune the order parameters, if necessary.

 

Entry Order SELL at 1.7080

This option is to place a SELL entry order at the rate where the mouse was clicked. It will open the Entry Order dialog where you can fine-tune the order parameters, if necessary.

 

Creating a Price Alert

To place a price alert, right-click on the body of the chart at the desired rate for the price alert, and then select the following option:

 

Place Alert at 1.7080

This option is to place a price alert at the rate where the mouse was clicked. It will open the Set Price Alert dialog where you can fine-tune the price alert parameters, if necessary.

 

Displaying and modifying orders, positions, and price alerts

 

The display of orders, positions, and price alerts is optional. There are 2 ways to activate/deactivate this feature:

In chart settings

1.Right-click on the chart and select Chart Settings, or just click the chart settings icon on the toolbar ().

2.In the Common settings, check the relevant boxes for the items (orders, positions, price alerts) you wish to display.

 

From the chart toolbar

1.Click on the  icon on the chart toolbar to show/hide all orders, positions, and price alerts.

2.Click on the arrow next to the icon to show/hide the different items separately.

 

 

 

General display information

Open positions, orders, and price alerts are represented as horizontal lines in the chart. Each has its own triangle marker. The triangles allow the user to review and modify positions, orders, and price alerts.

 

Upward triangles indicate a BUY direction for the position/order/alert. Downward triangles  indicate a SELL direction for the position/order/alert.

 

Note: The triangle colors displayed and referred to here are system defaults. Triangle color settings can be changed in the chart menu.

 

Open Positions

Open positions are marked by a horizontal green line with a green triangle at the rate where the position was opened. The moment the position was opened is marked by a green dot. The line to the right of the dot is solid; the line to the left of the dot is dotted. An upward triangle indicates a buy position; a downward triangle indicates a sell position. The number inside the triangle is the number of lots in the position. Triangles representing positions with a negative P/L have a red border.

 

View position Information: Hover the cursor over the position triangle to view information about the position, including: Ticket number, number of lots, buy/sell, open rate, open date, profit/loss, and any stop/limit orders on the position.

 

Quickly find position in Open Positions window: When you double-click on a position triangle, that position record will be highlighted in the Open Positions window. Also, if there is a stop and/or limit order on the position displayed on the chart, its triangle marker will flash 3 times when the position is double-clicked.

 

Place a Stop/Limit/Trailing Stop:

1)By right-click menu: Right-click on the position triangle and then select Stop, Limit, or Trailing Stop from the menu. A dialog will appear, allowing you to set the parameters for the order.

 

 

2)By dragging: Another way to place a Stop or Limit order on the position is by dragging the position up or down to the desired order rate. To drag the triangle vertically, hold down the CTRL key and drag the position triangle up/down. You will see a faint dotted line representing a conditional order, with a translucent triangle pointing in the opposite direction from the position. Drag this line to the desired rate for the stop/limit order, and release the mouse button. A Stop/Limit order dialog will appear, allowing you to set the parameters for the order.

Note: Whether the order will be a stop or limit depends on the rate at which the mouse button is released. For example: You have a buy position that is below the current rate. If you release the mouse button below the current rate, you will create a stop order. If you release the mouse button above the current rate, you will create a limit order.

 

In the event that you drag the position to create an order, and an order of that type already exist for this position, the following message will be displayed:

 

 

Clicking Yes will allow you to modify the order. Clicking No will cancel the operation.

 

Close/Hedge Position: To close or hedge the position, right-click on the position triangle, and select the appropriate command.

Reverse position: This option allows closing the selected position and opening a new position in the opposite direction for the same number of lots.

Lock In Profit: This option allows closing the selected position and opening a new position in the same direction for the same number of lots.

Dragging horizontally: You may left-click on the triangle and drag it along the position line to prevent it from obstructing your view of the chart.

 

 

Conditional Orders

Entry orders are marked with a pink line and triangle marker. Stop/limit orders are marked with an orange line and triangle marker. The point of order creation is marked with a dot. The line to the left of the dot is perforated; the line to the right of the dot is solid. An upward triangle indicates a buy order; a downward triangle indicates a sell order.

 

View conditional order information: Hover the cursor over the order triangle to view information about the order, including: Order number, number of lots, buy/sell, order rate, and date of order creation. The hint for S/L orders also includes the number of the parent position.

 

Quickly find order in Orders window: When you double click on an order triangle, that order record will be highlighted in the Orders window. In addition, double-clicking on an S/L order will make the parent position triangle flash 3 times.

 

Preset a Stop/Limit/Trailing Stop on an Entry order: Right-click on an entry order triangle, and then select Stop, Limit, or Trailing Stop from the menu.

 

Modify a conditional order:

1)By right-click: Right-click on the order triangle and select Modify Order from the menu. A dialog will appear, allowing you to set the parameters for the order.

 

 

Entry order:

 

S/L order:

 

 

2)By dragging: Another way to modify a conditional order is by dragging the order triangle up or down to a new rate. To drag the order triangle vertically, hold down the CTRL key and drag the triangle up/down. You will see a translucent outline of the order record, while the original order record remains in place. Drag the order to the desired rate, and release the mouse button. An order modification dialog will appear.

 

Note: When dragging an existing S/L order vertically, you will not be able to drag the order to a rate that is disallowed by the current rate/condition distance setting.

 

Remove a conditional order: Right-click on the order triangle, and then select Remove Order from the menu.

 

Dragging horizontally: You may left-click on the order triangle and drag it along the order line to prevent it from obstructing your view of the chart.

 

 

Market (I and C) orders

Orders to open a position (I orders) that have not been confirmed by the dealer are marked as a translucent open position triangle.


Orders to close a position (C orders) are shown as a translucent open position triangle attached to the triangle of the position that is to be closed, and pointing in the opposite direction.

 


Market order information:
Hover the cursor over the I or C order to view information about the order, including: Order number, number of lots, buy/sell, order rate, and the date/time of order creation.

 

Quickly find order in Orders window: When you double click on an I or C order triangle, that order’s record will be highlighted in the Orders window.

 

Remove market order: Right-click on the I or C order triangle, and then select Remove Order from the menu.

 

Dragging horizontally: You may left-click on the I or C order triangle and drag it along the order line to prevent it from obstructing your view of the chart. Since C order triangles are attached to the parent position triangle, dragging the C order triangle will drag the parent position triangle as well.

 

Dragging vertically: I and C order triangles cannot be dragged vertically.

 

 

Price Alerts

Price alerts are marked with a black dotted line and a gray triangle marker. An upward triangle indicates an alert for a sell rate; a downward triangle indicates an alert for a buy rate.

 

Price alert information: Hover the cursor over the price alert triangle to view information about the alert, including: Buy/Sell, rate.

 

Quickly find price alert in Price Alerts window: When you double click on a price alert triangle, that price alert record will be highlighted in the Price Alerts window.

 

Edit price alert:

1)By right-click: Right-click on the price alert triangle and then select Edit Alert from the menu.

 

 

2)By dragging: Another way to modify a price alert is by dragging the price alert triangle up or down to a new rate. To drag the alert triangle vertically, hold down the CTRL key and drag the triangle up/down. You will see a translucent outline of the alert record, while the original alert record remains in place. Drag the alert to the desired rate, and release the mouse button. A price alert modification dialog will appear.

 

Dragging horizontally: You may left-click on the price alert triangle and drag it along its line in order to prevent it from obstructing your view of the chart.

[/dt_sc_toggle][dt_sc_toggle title=”Saving Charts and Chart Templates”]

View Tutorial

Saving a chart means that all the graphical objects, chart settings (common and color), indicators, instrument and interval are saved under a specified name, and may later be accessed and used.

Saving the chart template means saving the chart settings (common and color) and indicators, so that these parameters may be quickly applied to another chart, without having to set them manually.

Saved charts and templates are not part of user profiles. You can access them only if you created them, even if you log into the application from another computer.

Saving a chart

There are two ways to save a chart:

Clicking the Save Current Chart button on the chart toolbar or

Selecting the Save Current Chart option from the right-click menu of the chart

 

After you select this option, the Save Chart As dialog box, where you can enter a new name of the chart or choose one of the existing names (names of the previously saved charts) from the drop-down box will appear:

If you try to save a chart that has not been saved before, the dialog box will open with an empty name field.

If the chart has been saved before, the value in the name field will be preselected.

If you select the name of the previously saved chart, the saved chart will be replaced with the current one.

Click OK to save the chart with all its properties, indicators, and manually plotted objects.

You can open a previously saved chart by clicking the Saved Charts button in the Charts tab:

The Manage Saved Charts window with a list of all saved charts will appear:

Select a chart and click Open to open the window of the selected chart. Click Rename to open a dialog box where you can change the name of the selected chart. Click Delete button to delete the chart. The following message will be displayed:

Click OK to confirm or Cancel to discard the deletion of the saved chart.

Saving a Chart as a Picture

There are two ways to save a chart as an image:

Clicking the Save Current Chart As Picture button on the chart toolbar  or

Selecting the Save Current Chart As Picture option from the right-click menu of the chart

Only part of the chart visible on a chart window will be saved to a file.

See below the image that saved to the file:

Creating a Chart Template

When you select Save Current As Template option, all the settings of the current chart will be saved (with the indicators applied).

 

Note: If you try to save a template without any indicators applied to the chart, the warning message will be displayed:

Click Yes to save the template without indicators. The Save Template As dialog box will appear:

You can enter a new name or select the name of a previously created template from the drop-down box. Click OK, and a new template will be created (or the existing one will be modified).

If you try to save an existing template, the Save Template As dialog box will appear with this template name preselected.

Note: When you save a template, the only chart settings that are saved are those which differ from the default chart settings (the settings adjusted in the Set Defaults window that are applied to all new charts). If a common or color setting value in the template coincides with a common or color setting value in the Set Defaults window, and then this value is changed in the Set Defaults window, the value in the template is changed correspondingly.

To view the previously saved template, click the Templates button in the Charts tab:

The Manage Templates window will appear with the list of all the previously created templates:

In this window, you can change the name of the selected template (by clicking the Rename button) or delete the created template (by clicking the Delete button). When you try to delete a template, the following message will be displayed:

Click OK to confirm or Cancel to discard the deletion of the template.

Applying a Template

There are three ways to apply a template to a chart:

Clicking the Apply Template button on the chart toolbar and selecting one of the available templates:

 

      

Selecting Apply Template in the context menu on the chart and choosing one of the available templates:

 

 

Choosing a template in the Apply Template column in the New Chart dialog box:

 

 

None of the templates created by you is selected by default. If you do not select any template, the new chart will have the default settings. Click on a template once to select it; click on it again to deselect it.

When a template is applied to a chart, this chart changes immediately (or opens) according to the settings of the selected template.

[/dt_sc_toggle][dt_sc_toggle title=”Chart Sidebar”]

Click here to view a video tutorial on the chart sidebar.

 

The chart sidebar contains the triangle markers for orders, positions, and price alerts whose rates are outside of the rate range currently displayed in the chart. The sidebar is marked by a  icon.

 

The sidebar is invisible unless the user has chosen to display orders, positions, and/or price alerts in the chart; once the display feature is enabled, the sidebar will appear automatically. (The user can choose to display these items in the Chart Settings or by using the  icon on the chart toolbar.) The sidebar only displays the items that the user has selected to show in the chart. If the user turns off the display feature altogether, the sidebar will disappear automatically.

 

Functionality

In most respects, a triangle marker in the sidebar has the same functionality as a triangle marker on the chart body. The user can hover the cursor over it to read the mouse-over hint; the user can right-click on it to access various functionalities; the user can double click on it to highlight that record in the relevant window. However, the user cannot drag a triangle that is displayed in the sidebar.

 

Position divider

The sidebar features a divider  that serves as an indicator of the rates of the items listed in the sidebar relative to the current chart view. All triangles above the divider represent records whose rates are higher than the currently displayed rate range (meaning that they are located above the current chart view). Triangles below the divider represent records whose rates are lower than the currently displayed rate range (placing them below the current chart view).

Positioning the sidebar

The sidebar can be extracted from the chart window and dragged in the same way as the chart toolbar. The sidebar can also be snapped into the chart window horizontally. It is recommended that the sidebar remain vertical, however, as that makes it more clear which triangles are above the chart view, and which are below.

[/dt_sc_toggle][dt_sc_toggle title=”Manipulating the Chart View”]

Click here to view a video tutorial on manipulating the chart view.

Scrolling and Dragging Charts

There are 2 modes of horizontal scrolling: one in which the vertical scale adjusts automatically to fit all chart data, and one in which the vertical scale remains the same. It is also possible to scroll the chart horizontally and/or vertically by clicking and dragging the body of the chart.

1.Two horizontal scrolling modes

The default scrolling mode is called Vertical Auto-Scale. In this mode, the vertical scale of the chart will automatically change in order to fit in all vertical data, whenever the chart is scrolled or zoomed. Vertical Auto-Scale is enabled when the  button on the chart toolbar is pressed down. When Vertical Auto-Scale is disabled (the  button is pressed again), the vertical scale remains fixed regardless of scrolling/zooming (unless, of course, the user changes the scale manually). This means that some or even all bars may end up outside the chart window when scrolling.

 

Note: There is a horizontal scroll bar but no vertical scroll bar. This means that the only way to scroll vertically is by clicking and dragging the chart body.

2.Ability to click and drag chart body

It is also possible to scroll the chart horizontally and/or vertically by clicking and dragging the body of the chart. Move the cursor over the chart body. The cursor will turn into a hand (unless the cursor is hovering over a position/order/price alert triangle). Click and hold the mouse button and move the mouse to scroll the chart. If the Vertical Auto-Scale is enabled, you will only be able to drag the chart horizontally. If Vertical Auto-Scale is disabled, you will be able to drag the chart in any direction.

 

 

 

Adjusting Chart Scales

It is possible to individually adjust the vertical and horizontal scales of charts using the mouse.

1.Adjusting the horizontal scale

To adjust the chart’s horizontal scale, hover the mouse cursor over the scale markers. The cursor will turn into a  symbol. Hold down the mouse button and drag horizontally to adjust the scale. Dragging to the right will zoom in on the scale; dragging to the left will zoom out from the scale.

2.Adjusting the vertical scale

You cannot adjust the vertical scale if the Vertical Auto-Scale mode is engaged. The Vertical Auto Scale mode is toggled on/off by the button on the chart toolbar. Once the Vertical Auto-Scale mode is disabled, move the mouse cursor over the vertical scale markers. The cursor will turn into a  symbol. Hold down the mouse button and drag vertically to adjust the scale. Dragging up will zoom in on the scale; dragging down will zoom out from the scale.

[/dt_sc_toggle][dt_sc_toggle title=”Technical Indicators”]There are numerous Technical Indicators available in the charting application. In addition, you can also design your own
indicators with the User Indicator Editor.

 

To apply an indicator, click the f(x) button on the chart toolbar, or select Setup Indicators from the chart right-click
menu.

 

In the Chart Indicators window, you can select indicators from the general indicators list in the left section of the
window, and add them to the Active Indicators box by double-click or using the > button. Active indicators will
appear on your chart. The right section of the window allows you to configure individual indicators.

 

You can search for an indicator by typing its name (or part of it) into the search box at the bottom of the window.

 

System indicators are divided into following sections:

 

J. Welles Wilder
Average Directional Movement

Average Directional Movement
(ADX)
is an indicator used to determine the strength of the current trend. This indicator
is a derivation of two different Direction Momentum Indicators (DI). The difference between ADX and
DI is that the latter is used to trace the direction of the trend, while ADX measures the strength
of the trend.

 

ADX is mostly used on trending markets and is measured on a scale from 0
to 100. When the indicator is below 20 it means that the trend is weak and is probably changing
direction. When it is above 40, the trend can be treated as a strong one with a possibility of
future change. The ADX is frequently used in conjunction with DI in making trading decisions.

 

Methods of use:

 

1.When +DI (blue) is
above -DI (red), it is a signal to buy.

2.When
+DI (blue) is below -DI (red), it is a signal to sell.

 

Note: ADX measures the strength of the trend but not its
direction. Wait until DI cross each other before making any trading decisions.

 

Average True Range

Average True Range (ATR) is an
indicator that measures the volatility of the market. It is usually a 14-day Moving Average of the
True Range. True Range (TR) in its turn is defined as the largest difference of today’s high and
today’s low, today’s high and yesterday’s close and today’s low and yesterday’s close. The larger
the TR, the greater the volatility of the instrument; the lower the TR, the lower the volatility.

 

Methods of use:

 

1.The
value of this indicator is usually high when prices change sharply.

2.  If the value of this indicator is not high, the prices stay stable.

3.  Before a significant rise/fall in prices, the value of this
indicator is usually low/high.

 

Note: Since ATR shows volatility as an absolute level,
low price instruments have lower ATR levels than high price instruments.

Parabolic SAR

Parabolic SAR
(stop-and-reversal)
is an indicator used for analyzing trending markets. It has much in
common with MA, but, unlike MA, Parabolic SAR moves with higher acceleration and may change its
position in terms of the price. This is an ideal indicator for providing exit points.

 

Parabolic SAR is mostly used on the trending markets for the creation of
closing orders and trailing stop orders. It is also used for defining the trend: if the parabola
goes below the price line, the market is bullish; if the parabola goes above the price line, the
market is bearish.

 

Methods of use:

 

1.Long positions should
be closed when the price falls below the SAR line.

2.Short
positions should be closed when the price rises higher than the SAR line.

3.Each
point of SAR defines the level of stop-order for the current & not the following trading period
(day, hour, etc.).

 

Note: This indicator is valid
only for the trending markets; it is not useful in sideways phases.

 

Relative Strength Index

Relative Strength Index (RSI)
a price-following oscillator that ranges between 0 and 100. There are 3 distinct zones in the chart
of this indicator: the upper (overbought) zone ranges from 70 to 100; the lower (oversold) zone
ranges from 0 to 30; the middle zone ranges from 30 to 70.

 

RSI is mostly used in day trading to determine the state of the market –
whether it is oversold, overbought, or stable. If the RSI tops out in the upper zone (overbought,
> 70) and then returns to the middle zone, the price would move in the same direction. If the RSI
bottoms out in the lower zone (oversold, < 30) and then returns to the middle zone, the price
would move in the same direction.

 

Method of use:

overbought zone, the price is expected

1.When the RSI peaks in
the to follow it; this is a signal to sell.

1.When
the RSI peaks in the oversold zone, the price is expected to follow it; this is a signal to buy.

2.Divergence: when the
price reaches a new minimum/maximum but is not confirmed by a new minimum/maximum on the RSI chart,
the price correction takes place in favor of the direction of RSI.

 

Note: On the RSI chart, levels
of support/resistance and reversal patterns are sometimes visible more distinctly than on the price
chart.

 

Stochastic RSI

Stochastic RSI represents a combination of
two frequently used indicators: Stochastic and Relative Strenght Index. All in all, this is the
Stochastic indicator of the RSI indicator. Stochastic RSI is similar to the regular Stochastic, but
calculated based on the RSI values, instead of the price values.

Stochastic RSI concists of two lines: the main line is called %K (green), and its
Moving Average is called %D (navy).

 

Methods of use:

1.When
one of the lines of the Stochastic RSI falls below 20% and then rises above that level (A) or when
the %K line rises above the %D line (B), it is a signal to buy.

2.When
one of the lines of the Stochastic RSI rises above 80% and then falls below that level (C) or sell
when the %K line falls below the %D line (D), it is a signal to sell.

3.Divergence: if rates
produce a series of new minimum/maximum and the oscillator does not, then some rate correction is
possible in the direction of the oscillator’s movement.

St RSI

Moving Average
Alligator

Alligator is an indicator
that consists of three Moving Averages with different numbers of bars for smoothed MA. The blue
line (Alligator jaw) is a Balance Line for the timeframe that was used to build the chart (13
bar smoothed average offset by 8 bars). The red line (Alligator teeth) is also a Balance Line,
but a level lower than the blue one (8 bar smoothed average offset by 5 bars). The green line
(Alligator lips) is also a Balance Line, a level lower than the red one (5 bar smoothed average
offset by 3 bars).

 

The Alligator is mostly used to determine the presence/absence of
the trend and its direction. It can also be used together with Eliot waves: if the price is
outside the Alligator’s mouth, an impulse wave is being formed; if it is inside the Alligator’s
mouth, a correcting line is being formed.

 

Methods of use:

 

1.When the blue, red,
and green lines are crossed or intertwined, there is a flat market; the Alligator is sleeping.
The longer this period, the more the market will move after.

2.When all three
lines are not crossed or intertwined and the price is above the Alligator’s mouth, there is an
uptrend in the market. At this period the Alligator is awake and hunting.

3.When all three
lines are not crossed or intertwined and the price is under the Alligator’s mouth, there is a
downtrend in the market. At this period the Alligator is also awake and hunting.

4.When the lines are
crossed or intertwined, it means that the market is flat again. At this period the Alligator is
full and it is time to fix the profit.

 

Dual Moving Averages

Dual Moving Averages is an indicator
consisting of two moving averages with different periods. Their crossovers are used as trading
signals. The MA with the longer period determines the overall trend. The MA with the shorter period
is used for generating buy or sell signals. You can specify the type of average for each line
(Simple, Exponential, Weighted).

Methods of use:

1.When the shorter MA
rises above the longer MA, it is a signal to buy.

2.When the shorter MA
falls below the longer MA, it is a signal to sell.

Perry Kaufman’s Adaptive MA

The definite advantage of Perry Kaufman’s Adaptive
Moving Average
is its capability to respond to the market conditions changes. Unlike the
other types of Moving Averages, Adaptive MA does not use a fixed Period value, but adjusts it
depending on the price volatility.

 

Developed by Perry Kaufman, this indicator is a variation of the Exponential Moving
Average. The smoothing constant ranges from a minimum of Fast Period to a maximum of Slow Period,
depending of the nature of the price graph.

By adjusting the smoothing constant, the indicator adapts itself to the market
volatility. It moves slower in the sideways market and faster in the trending market. Thus, the
Adaptive MA helps to distinguish the trend right after it is formed, and does not give false signals
on minor price moves.

Methods of
use
:

1.When the instrument
price rises above the Perry Kaufman’s Adaptive MA, it is a signal to buy.

2.When the price falls
below the Perry Kaufman’s Adaptive MA, it is a signal to sell.

3.The direction of the
Perry Kaufman’s Adaptive MA gives an idea of whether there is a bearish or bullish trend on the
market.

Moving Average

Moving Average (MA) is an
indicator that shows the average price within a defined time period.  There are four types of Moving
Averages: Simple MA, Exponential MA, Smoothed MA, and Weighted MA. They differ from each other only
in terms of the weight coefficients that are assigned to the latest data.

 

Moving averages are mostly used to define areas of support and
resistance, to emphasize the direction of a trend, and to smooth out price and volume fluctuations.
The direction of the indicator shows whether a bullish or bearish trend is present in the market at
the moment. The intersection of the indicator and the price chart confirms the change in a trend. It
is only a confirmation because the change of this indicator is late in comparison with a price
change.

 

Methods of use:

 

1.When the instrument
price rises above its MA, it is a signal to buy.

2.When
the price falls below its MA it is a signal to sell.

3.The
direction of MA gives an idea of whether there is a bearish or bullish trend on the market.

 

T3 Tilson

T3 Tilson is a variation of Moving Average,
developed by Tim Tilson. It is smoother and less lagging than most types of moving averages.

As a Moving Average, T3 Tilson is used to define the areas of support and
resistance, to emphasize the direction of the trend, and to smooth out price and volume
fluctuations. The direction of the indicator shows whether a bullish or bearish trend is present in
the market at the moment. The intersection of the indicator and the price chart confirms the change
of the trend.

Methods of use:

1.When the instrument
price rises above theT3 Tilson, it is a signal to buy.

2.When the price falls
below the T3 Tilson, it is a signal to sell.

3.The direction of the T3
Tilson gives an idea of whether there is a bearish or bullish trend on the market.

T3 Tilson

Oscillators
Accelerator Decelerator

Accelerator/Decelerator (AC) is
an oscillator that measures activation or deactivation of the driving force on the market. It
changes its direction before any changes in the direction of the price take place. This oscillator
has much in common with Awesome Oscillator, but unlike AO, the crossing of the zero line is not a
buy/sell signal.

 

Accelerator/Decelerator is mostly used to predict the change of the
driving force on the market. When AC is at the zero line it means that the driving force is at
balance with the acceleration. When AC crosses the zero line and goes up or down the only thing that
should be traced is the change of the color of the bars.

 

Methods of use:

 

1.When the chart is above
the zero line and there are two green bars, it is a signal to buy.

2.When
the chart is below the zero line and there are two red bars, it is a signal to sell.



 

Aroon

Aroon
Oscillator
is a trend-following indicator that illustrates the strength of the current
trend and the trend’s potential to last.

The
Aroon Oscillator can be constructed by subtracting Aroon  Down from Aroon Up.

Aroon
Oscillator = Aroon Up — Aroon Down.

 

Aroon
Up = ((total number of periods — number of periods since highest close) / total number of periods) x
100

Aroon
Down = ((total number of periods — number of periods since lowest close) / total number of periods))
x 100

Since Aroon Up and Aroon Down oscillate between 0 and +100, the
Aroon Oscillator will oscillate between -100 and +100 with zero as the center crossover
line.

Methods of
use:

1. A positive value of the Aroon Oscillator indicates an uptrend; a negative value indicates a
downtrend.

2. The higher the absolute value of Aroon Oscillator, the stronger the trend.

 

Note: When values are near the zero line, the trend is
unclear.

Awesome Oscillator

Awesome Oscillator (AO) is a
34-period simple Moving Average, plotted through the middle points of the bars (H+L)/2, which is
subtracted from the 5-period simple Moving Average, built across the central points of the bars
(H+L)/2. AO shows the state of the market driving force at present.

 

Awesome Oscillator is mostly used when the trend cannot be clearly
traced. AO has three main signals: the saucer (reversed saucer), crossing of the zero line and two
pikes. The saucer is a chart consisting of three candlesticks where the second (red) is lower than
the first and the third (green) is higher than the second. Crossing of the zero line takes place
when the chart passes from negative to positive values and vice versa.. Two pikes is a chart where
there is a peak followed by another peak that is higher/lower than the first one. Both peaks should
be above or below the zero line.

Methods of use:

 

1.When
the saucer signal is formed above the zero line or when crossing of the zero line is from the
negative into the positive side or when the two pikes are formed below the zero line, it is a signal
to buy.

2.When
the saucer signal is formed below the zero line or when crossing of the zero line is from the
positive into the negative side or when the two pikes are formed above the zero line, it is a signal
to sell.


 

Commodity Channel Index

Commodity Channel Index (CCI) is
an oscillator that provides an indication of overbought or oversold markets. An instrument is deemed
oversold when CCI goes below -100 and overbought when it exceeds +100. CCI measures the relationship
between the asset’s price, Moving Average, and deviations from the average.

 

CCI is mostly used to determine cyclical trends in commodity, equity and
currency markets.

It identifies potential peaks and valleys of the asset’s price and shows
estimated changes in the direction of the asset’s price movement.

 

Methods of use:

 

1.Moves of CCI: When the
CCI moves back above -100, it can be treated as a signal to buy. When the CCI moves back below +100,
it can be treated as a signal to sell.

2.Divergence (when an
indicator is trending in the opposite direction to the price): A positive divergence below -100
increases the strength of a signal based on a move back above -100. A negative divergence above +100
would increase the strength of a signal based on a move back below +100.

3.Indicators: An advance
above -100 and trend line breakout show that an instrument is oversold and the trend can be treated
as bullish. A decline below +100 and a trend line break show that a security is overbought and the
trend can be treated as bearish.

 

DeMarker

 

DeMarker (Demarker, De Marker,
DeM)
is an indicator that identifies price exhaustion, as well as potential price
minimums and maximums. This indicator fluctuates between 0 and 1 and compares the most recent price
action to the previous period’s price to measure the existing demand of the underlying asset.

 

DeMarker is used to identify risk levels prior to opening a position. In
most cases, when an asset’s price goes above 0.6, the volatility and risk are lower, while a reading
below 0.4 can be treated as a sign of increasing risk. Furthermore, use of this indicator over long
periods of time (weeks, months) allows an opportunity to trace the long term market tendency.

 

Methods of use:

 

1.When the indicator
falls below 0.3, a bullish price reversal is to be expected.

2.When
the indicator rises above 0.7, a bearish price reversal is to be expected.

 

 

Gator

 

Gator, an oscillator based on
the Alligator indicator, demonstrates the degree of divergence/convergence of smoothed Moving
Averages.

 

This oscillator is indicated in the form of two bar charts, one on
either side of the zero line. The top bar chart shows the distance between the red and blue lines.
The bottom bar chart shows the distance between the red and green lines. The bars of the chart are
red and blue: the bar becomes red when its value is lower than the previous one and green when its
value is higher than the previous one.

 

Gator Oscillator helps to visualize and determine the presence or
absence of a trend at the given period of time. It also helps to visualize periods of rapprochement
and crossing of the smoothed Moving Averages (balance lines).

 

 

Kairi

 

Kairi indicator calculates deviation of the
current price from its simple average as a percent of moving average. It can be used either as a trend
indicator or as an overbought/oversold signal.

Kairi Indicator is often used together with other moving averages in a trading system. It can be used to
take advantage of an overextended trending market. For instance, in an upwardly trending market when the
price rises to more than 10% above the simple moving average, the instrument could be sold. When the
price approaches the simple moving average, then the asset could be repurchased.

 

Methods of
use:

1. When the percent is high and positive, it is a signal to sell.

2. When the percent is high and negative, it is a signal to buy.

 

 

Moving Average Convergence/Divergence

 

Moving Average Convergence/Divergence
(MACD)
is an indicator that follows the trend. It consists of a 12-period Exponential
Moving Average (EMA, green), a 26-period Exponential Moving Average (navy), and a bar chart (red)
that shows the difference between them. MACD is used when prices vary in the price corridor.

 

MACD is mainly used to identify three things: crossovers,
overbought/oversold conditions, and divergences. Crossovers happen when the MACD falls
below the signal line, which is a bearish signal (signal to sell). Conversely, when the MACD goes
over the signal line, it is a bullish signal, (signal to buy). Overbought/oversold conditions happen when
MA dramatically falls/rises from a longer Moving Average, which is a signal that the price is
overextending and will soon return to more realistic levels. Divergence takes place when the price
diverges from the MACD, which is a signal of the end of the current trend.

 

Methods of use:

 

1.When MACD is lower than
the signal line, it is a signal to sell.

2.When MACD is higher
than the signal line, it is a signal to buy.

3.MACD crossings over the
zero line in either direction are used as signals to buy/sell.

 

Note: It is advisable to wait
for a confirmed cross over the signal line before entering into a position. This helps to avoid
entering into a position too early.

 

 

Momentum

 

Momentum is an
indicator/oscillator that measures the rate of change in currency prices. It evaluates the
difference between today’s closing price and the closing price n days ago. Usually a 10-days period is used for the
calculation of this indicator. In this case momentum is calculated by taking the current closing
price, subtracting the price 10 days ago, and plotting the results around the zero line. The results
plotted can be negative when the current price is lower than oldest price or positive when the
current price is greater than the oldest price.

 

Like MACD, Momentum also can be used as a trend-following indicator. A
signal to buy occurs when the indicator reaches the bottom of a downward curve and then begins to
grow; a signal to sell occurs when the indicator reaches the top of an upward curve and then begins
to decline. As a forerunning indicator it can be used when the proximity of the market to top/bottom
is accompanied by the drastic surge of the indicator, following by a decline in the value of the
indicator while the rates continue to rise/fall or move horizontally. In such a case divergence
takes place.

 

Methods of use:

 

1.When the indicator
reaches the bottom of a downward curve and begins to grow, it is a signal to buy.

2.When
the indicator reaches the top of an upward curve, it is a signal to sell.

 

 

RAVI

 

Range Action Verification Index (RAVI) indicator, developed by Tushar Chande, can be used to
identify whether the market is trending. It calculates the percentage difference between current prices
and older prices. Current prices are represented by a Short SMA, and the longer time frame by a Long
SMA. Tushar Chande recommends the following information lines for the indicator: plus-minus 0.3% or 0.1%
(depending on the market).

 

Methods of
use:

1. The uptrend began if the indicator crosses the upper information line (0.3%) from the bottom-up.

2. The downtrend began if the indicator crosses the lower information line (0.1%) from top-downward.

3. The trend is considered as continuing as long as the RAVI line grows.

4. The down trend is considered as continuing as long as the RAVI line falls.

5. If the indicator turns back to the zero line it means that the trend is over and the channel has
begun.

6. If the indicator turns back again without passing between the information lines it means that the
trend has resumed.

 

 

Rate of Change

 

Rate of Change (ROC) displays the value of the current price relative to the
price n periods ago. The ROC measures changes in prices during
a certain time and displays them in the form of an oscillator showing the cyclical movements. The ROC
increases along with the prices trending up, and decreases when the prices go down. High price changes
result in significant ROC changes. The ROC can be expressed in either points or percentages.

 

Methods of
use:

1.  When the ROC crosses above the 0 line it is a signal to buy.

2. When the ROC crosses below the 0 line it is a signal to sell.

 

Note: An effective approach to using the ROC involves
observing previous peaks and troughs as shown by this indicator. By comparing the current ROC value to
its recent levels, a trader will know what to expect in terms of relative price movements.

 

Standard Deviation

 

Standard Deviation is a
statistical measure of volatility. It is usually used not as a separate indicator but as a component
of other indicators.

 

Standard Deviation is mostly used in the stock market to identify the
degree of volatility of stock. This indicator is also applied to mutual funds, where it shows how
much the return of the fund is deviating from the expected normal returns.

 

Method of usage:

 

1.The value of this
indicator is usually high if prices change sharply.

2.If the
value of this indicator is not high, the prices are stable.

3.Before
a significant rise/fall in prices, this indicator is usually low.

 

 

Stochastic

 

Stochastic is an oscillator that
compares where an asset’s price closed relative to its price range over a given period of time. It
consists of two lines: the main line is called %K (green) and the secondary is called %D (navy). In
the main line (%K), fluctuations are usually more distinct than in the secondary line (%D), because
%D is a Moving Average of the line %K. Stochastic indicator is measured on a scale from 0% to 100%.

 

The Stochastic oscillator is mostly used on the trending markets. If
both lines (%D and %K) top out in the upper zone (above 80% mark) and then the indicator returns to
the middle zone, the rate would move in the same direction. If both lines bottom out in the lower
zone (below 20% mark) and then the indicator returns to the middle zone, the rate would move in the
same direction.

 

Method of use:

 

1.When
one of the lines of the Stochastic falls below 20% and then rises above that level (A) or when the
%K line rises above the %D line (B), it is a signal to buy.

2.When
one of the lines of the Stochastic rises above 80% and then falls below that level (C) or sell when
the %K line falls below the %D line (D), it is a signal to sell.

3.Divergence: if rates
produce a series of new minimum/maximum and the oscillator does not, then some rate correction is
possible in the direction of the oscillator’s movement.

 

 

TRIX

 

Triple Exponential Average (TRIX) is an indicator used to identify divergences, instances
where a currency pair is overbought/oversold, and to give buy/sell signals. The TRIX is a momentum
indicator, that is displayed as an oscillator above and below a zero line. It compares two triple
smoothed exponential moving averages, and displays the difference as a single line with positive and
negative values. The TRIX is displayed on its own chart, separate from the price bars.

Methods of use:

1. When the TRIX crosses the zero line from below  it is a buy signal.

2. When the TRIX crosses the zero line from above  it is a sell signal.

Note:
The buy and sell signals are for market entries. Using these buy and sell signals for exits may
not be profitable.Traders might consider exiting a long entry when the TRIX indicator enters the
oversold area and starts to turn downwards toward the zero line. Similarly, traders could exit a short
when the TRIX indicator enters the oversold area and starts to turn upward and move toward the zero
line.

 

 

Williams’ Percent Range

 

Williams’ Percent Range (Williams %R,
or %R)
is a momentum indicator that measures overbought/oversold levels, which fluctuates
between 0 and -100%. When the value reaches 0% it means that the closing price is the same as the
period high. Conversely, when the value reaches -100% it means that the closing price is identical
to the period low.

 

The Williams %R is mostly used as a hint of the market’s condition on
the trending markets. It shows a reversal in the underlying instrument’s price. Frequently this
indicator reaches its peak and turns down a bit earlier than the instrument’s price. Similarly, %R
reaches its lowest point and turns up a bit earlier than the instrument’s price.

 

Methods of use:

 

1.Readings in the 0 to
-20% range: the market is overbought; this can be treated as a signal to sell.

2.Readings in the -80 to
-100% range: the market is oversold; this can be treated as a signal to buy.

 

Note: It is advisable to wait for the indicator price to
change direction before making any trading decisions.

 

 

Patterns

 

Paterns (candle formations) are a type of indicator that analyses the patterns and
highlights groups of candles falling under particular rules. Candle formations give traders important
signals; in particular, they indicate trend reversals. Three types of paterns are implemented in ActTrader:

Engulfing

 

Engulfing belongs to a candle formations
(paterns) indicator type. (Read more about candle formations here)

Bullish Engulfing, and Bearish Engulfing

Bullish Engulfing is a reversal pattern
consisting of three candles, which usually occurs after a strong downtrend. It gives a buy signal, and also indicates a potential support level.

Below is an example of the Bullish Engulfing pattern in a candle chart:

Bearish Engulfing is a bearish reversal pattern
consisting of three candles, which usually occurs after an uptrend. It gives a sell signal, and also indicates a potential resistance level.

Methods of use:

1. When the Bullish Engulfing pattern (highlighted in green) occurs, it is a signal to
buy.

2. When the Bearish Engulfing pattern (highlighted in red) occurs, it is a signal to
sell.

Morning and Evening Star

 

Morning and Evening Star belongs to a candle
formations (paterns) indicator type. (Read more about candle formations here)

Morning Star is a bullish reversal pattern
consisting of three candles, which usually occurs after a strong downtrend. It gives a buy signal and also indicates a potential support level.

Below is the example of the Morning Star pattern in the candle chart:

Evening Star is a bearish reversal pattern
consisting of three candles, which usually occurs after an uptrend. It gives you a sell signal, and also indicates a potential resistance level.

Below is an example of the Evening Star pattern in a candle chart:

Methods of use:

1. When the Morning Star pattern (highlighted in green) occurs, it is a signal to buy.

2. When the Evening Star pattern (highlighted in red) occurs, it is a signal to sell.

Tweezer

 

Tweezer belongs to a candle formations (paterns)
indicator type. (Read more about candle formations here)

Bullish Tweezer and Bearish Tweezer.

Bullish Tweezer is a reversal pattern consisting of
two candles with very long lower shadows, which occurs after an extended downtrend. It gives a buy signal, and may also indicate a new support level.

Below is an example of the Bullish Tweezer pattern in a candle chart:

Bearish Tweezer is a reversal pattern consisting of
two candles with very long upper shadows, which occurs after extended uptrend. It gives a sell signal, and may also indicate a new resistance level.

Below is an example of the Bullish Tweezer pattern in a candle chart:

Methods of use:

1. When the Bullish Tweezer pattern (highlighted in green) occurs, it is a signal to buy.

2. When the Bearish Tweezer pattern (highlighted in red) occurs, it is a signal to sell.

Displaying candle formations in charts

Candle formations do not draw any additional lines, etc on the charts – they just highlight certain
portions of the original chart graph. See the examples below:

 

Highlight in different
kinds of charts

Candle chart

Bar chart

Line chart

In order to make the candle formations more distinguishable in the chart, each formation can have a
transparent background highlight, which is activated via the ‘Background highlight’ checkbox available in the
indicator settings.

When the checkbox is disabled, only the candle highlight is used. In the example below, several
candle formation indicators are applied to the chart:

When the checkbox is enabled, both the candle highlight AND the background highlight are used. The background of
corresponding formation will be highlighted in the same color as the candles:

If several indicators are displayed on the same candle, the color of the top one (most recently
applied) will be used for highlighting.

When you rollover a highlighted candle, the name of the candle formation indicator(s) will be
displayed:

Trend
Auto Trendlines

Auto Trendlines  is an indicator which plots automatic trendlines based on the user defined parameters: Bars back to begin, Bars to calculate, Number of points to break.

The Bars to calculate parameter determines the period for the indicator calculation. The Bars back to begin parameter determines the number of the last candles (bars) in the chart, which will not be taken into account in the calculation process. The Number of points to break parameter determines how many points per candle the trendline may cross.

Two lines are plotted in the chart: the Uptrend line indicating the Support level and the Downtrend line indicating the Resistance level. They are displayed starting from the last candle in the chart, up to the left checkpoint of the trendline.

The UpTrend Line connects the lowest low in the period with the next lowest low in the period without penetrating any of the other candles in the period (it is allowed only in case if the number of points penetrated from below per candle is smaller then the specified ‘Number of points to break’). If any candle is penetrated, the next lowest low is taken instead.

The DownTrend Line connects the highest high in the period with the next highest high without penetrating any of the other candles in the period (it is allowed only in case if the number of points penetrated from above per candle is smaller then the specified ‘Number of points to break’). If any candle is penetrated, the next highest high is taken instead.

Note1: Sometimes either of lines cannot be plotted, since it is impossible to pick the second point for it without penetrating the candles.

Note2: Auto Trendlines are regarded as an indicator, and unlike the manually plotted trendlines, you cannot set alerts on them, change their names or drag them over the chart.

Methods of use:

The trendlines are widely used in technical analasys, helping to determine the general trend, support and resistance levels, and some of the chart patterns (e.g. Triangles). For example, two trendlines on the picture below represent the Symmetrical Triangle pattern. The last two candles penetrate the support line downwards – this breakthrough can serve as a signal to Sell, as such event may indicate the start of a strong downtrend.

Bollinger Bands

Bollinger Bands (BB) is an indicator that compares volatility and relative price levels over a period of time. Bollinger Bands adjust to the market conditions. As soon as the market becomes more volatile, the bands widen; they contract during less volatile times.

 

The use of Bollinger Bands is based on the fact that prices usually remain within the limits of upper and lower borders. BB are mostly used for determining if the current value of a data field is behaving normally or breaking out in another direction. BB can also be used for identifying when trend reversals should be expected. The variable width of BB is caused by the volatility of prices.

 

Methods of use:

 

1.Sharp changes in price take place after the channel narrows.

2.  If prices cross the border, it is a signal that the current trend will continue(A).

3.  A price move that originates at one border tends to go all the way to the other border(B).

 

Chandelier Stop

The Chandelier Stop can be used as a trailing stop. The values of this indicator depend on the market volatility. The two lines: Long CS and Short CS take turns to be displayed in the chart, depending on the trend.

Long CS lies below the candles. If the value happens to cross the candle cutting the specified number of pips from below (Number of points to switch), Long CS stops to be plotted and disappears starting from the following candle, and Short CS starts to be plotted from the current candle.

Short CS lies above the candles. If the value happens to cross the candle cutting the specified number of pips from above (Number of points to switch), Short CS stops to be plotted and disappears starting from the following candle, and Long CS starts to be plotted from the current candle.

If the Wait for close setting is enabled, the indicator will flip only after crossing the candle’s body. The conditions for flipping will be checked only when the candle closes. If the setting is disabled, the highs and lows are also taken into account – the conditions for flipping will be checked at every tick.

Methods of use:

1.The Chandelier Stop is claimed to be one of the best stop trade indicators providing the maximum possible profit. It automatically adjusts to the market volatility. If the volatility is high, the stop will be a reasonable distance away from the current price. If the volatility is low, the stop will be relatively closer to the current price.

2.When the price falls below the Chandelier Stop, it is a signal to close the buy positions.

3.When the price rises above the Chandelier Stop, it is a signal to close the sell positions.

Envelopes

Envelopes (Moving Average Envelope, Trading Bands) is a technical indicator that consists of two moving averages: one moving upward, the other moving downward. This indicator defines the upper and lower boundaries of the price range. Higher volatility should lead to higher deviation percentage.

 

One should bear in mind that since only previous data is used for the calculation of this indicator, it will always be a bit behind actual prices. As a result, it does not predict any changes in the trend, but only identifies it.

 

Methods of use:

 

1.When the indicator reaches its low and turns in the opposite direction, it can be treated as a signal to buy.

2.When the indicator reaches its high and turns in the opposite direction, it can be treated as a signal to sell.

 

 

Flipit

The Flipit indicator is a stop and reverse indicator based on the high and low price values. It is used for generating both entry and exit signals. For the uptrend, the Bottom line is plotted in the chart, for the downtrend, the Top line is plotted.

This indicator has a step-like appearance. Each indicator value is displayed in two candles at a time: in the one for which it is calculated, and in the following one.

The Bottom line lies below the candles. If the value happens to cross the candle cutting the specified number of pips from below (Number of points to switch), the current value of the Bottom Graph will be displayed in the following candle, but not after it. The Top Graph will start from the current candle.

The Top line lies above the candles. If the value happens to cross the candle cutting the specified number of pips from above (Number of points to switch), the current value of the Top Graph will be displayed in the following candle, but not after it. The Bottom Graph will start from the current candle.

Methods of use:

1.When Flipit starts to be plotted below the price it’s time to buy.

2.When Flipit starts to be plotted above the price it’s time to sell.

3.The intersections of the indicator line with the chart graph give you entry and exit signals. For example, on the chart below you should open a trade at the point A and close it at the point B.

Hi Lo Activator

 

Hi Lo Activator uses the average of the high and low price values over the specified period of time. Similarly to the Flipit indicator, the Hi Lo Actvator has a step-like appearance and gives entry signals as well as trailing stops.

The Short Stop line lies below the candles. If the value happens to cross the candle cutting the specified number of pips from below (Number of points to switch), Short Stop stops to be plotted and disappears starting from the following candle, and Long Stop starts to be plotted from the current candle.

The Long Stop line lies above the candles. If the value happens to cross the candle cutting the specified number of pips from above (Number of points to switch), Long Stop stops to be plotted and disappears starting from the following candle, and Short Stop starts to be plotted from the current candle.

If the Wait for close parameter is enabled, the indicator will flip only after crossing the candle’s body. The conditions for flipping will be checked only when the candle closes. If the setting is disabled, the highs and lows are also taken into account – the conditions for flipping will be checked at every tick.

If the Real Time parameter is disabled, the values of this indicator will be shifted one candle forward (analogous to the Flipit indicator).

Methods of use:

1.When Hi Lo Activator starts to be plotted below the price it’s time to buy

2.When Hi Lo Activator starts to be plotted above the price it’s time to sell.

3.The intersections of the indicator line with the chart graph give you entry and exit signals. For example, on the chart below you should open a trade at the point A and close it at the point B.

 

Ichimoku Kinko Hyo

 

Ichimoku Kinko Hyo is a technical indicator that measures market momentum and market trend. It also determines and outlines the support and resistance levels. This indicator is more accurate for long timescales (such as the daily/weekly timescale).

The Ichimoku indicator consists of five lines:

1) Tenkan-sen – the average price level (High+Low)/2, calculated over the first time period;

2) Kijun-sen – the average price level calculated over the second time period;

3) Senkou Span A / Up Kumo= Senkou Span A = (Tenkan-Sen+Kijun-Sen)/2, shifted forward for the length equal to the Kijun-sen period;

4) Senkou Span B / Down Kumo – the average price level over the third time period, shifted forward for the length equal to the Kijun-sen period;

5)Chinkou Span – current closing price, shifted backwards for the length equal to the Kijun-se time period.

 

 

The “cloud” known as the “Kumo,” is the space between “Senkou Span A” and “Senkou Span B.”

 

Note 1: If the price stays above the cloud then there is an upward trend.

Note 2: If the price stays below the cloud then there is a downward trend.

Note 3: If the price is within the cloud then the market is flat.

Note 4: If the Tenkan-sen line moves sideways then the market is flat.

 

Methods of use:

1) When the price exits the cloud downward, it is a sell signal. When the price exits the cloud upward it is a  buy signal.

 

Note 5: The price ranges before and after the cloud are often the same.

 

2) When Chinkou Span crosses the price line from below, it is a buy signal. When Chinkou Span crosses the price line from above, it is a sell signal.

 

3) When Tenkan-sen (red line) crosses Kijun-sen (blue line) from above it is a sell signal; if it crosses from below it is a buy signal.

Note 6: When the price is inside the cloud it tends to move in the direction of Tenkan-sen line (red line).

 

4) When the Tenkan-sen line is directed downwards, then the price tends to move to the lower edge of the cloud; if it is directed upwards, then the price tends to move to the higher edge.

 

Note 7: Kijun-sen (blue line) and cloud edges are very strong resistance/support levels.

 

Keltner Channel

 

Keltner Channel is a moving average band indicator. Its upper and lower bands adapt to volatility changes by using the Average True Range (ATR). The Keltner Channel is used to show trends, to signal price breakouts, and to give overbought and oversold readings.

Three lines are included in the Keltner Channel: two are bands and the third is an Exponential Moving Average (“EMA.”) The Exponential Moving Average, generally based on a 20-day sample, is enclosed within the two bands. The price floating towards either of the bands is often a buy or a sell signal.

 

Methods of use:

1. When price closes above the upper band it is a signal to buy.

2. When price closes below the lower band, it is a signal to sell.

 

Note 1: Signals are effective until the prices close across the opposite band.

Note 2: This indicator should be used in conjunction with other indicators to predict better exit opportunities.

 

 

 

 

Linear Regression

 

Linear Regression is a statistical method of following a trend. Its results are usually close to the moving average and their methods of use are similar. But unlike MA, Linear Regression has a smaller delay and is more responsive to price changes.

Linear Regression is used to indicate the dominant trend on the market with slight delay from the actual price of the asset. It can also provide information about future divergence of the main trend, but only when the price starts moving near the trend line within a narrow range.

Methods of use:

 

1.The direction of the indicator shows whether there is a bullish or bearish trend in the market at the moment.

2.The crossing of the indicator and the price chart confirms the trend’s change. It is only a confirmation because the change in this indicator is late in comparison with a price change.

 

Note: If the price changes uniformly around the regression line, the market trend should have a tendency to continue.

 

Pivot Points

 

Pivot Points is the indicator that calculates the average of the highest, the lowest and the last close price of the previous time period to predict the further support and resistance levels. It is often used to forecast the range of prices variation and demonstrates the possible points of reversals in price movement.

This indicator includes 7 lines: pivot (or equilibrium) point itself (P), 3 resistance levels (Res) and 3 support levels (Sup).

The largest price movements are expected to be close to the pivot point between the 1st resistance and the 1st support level. When the rate breaks out the pivot point upward or downward, it is a signal of probable uptrend or downtrend respectively. The support and resistance levels are frequently used to enter or exit the trade.

Methods of use:

1.When the price crosses the pivot point upward (A), it is a signal to buy.

2.When the price crosses the pivot point downward (B), it is a signal to sell.

3.The trader may place Entry orders if the price touches the Res1 or Sup1 level (C), likely to cause a trend reversal

4.The trader may place stop/limit orders if the price reaches the Res2, Res3 or Sup2, Sup3 levels (D), as it signals that the market is overbought or oversold.

Price Channel

 

Price Channel Indicator is used to show buy and sell signals in trending markets.It is constructed by drawing upper and lower boundaries on a chart at the high and low points of the price flows for a definite number of periods.

Methods of use:

1. When the weekly closing price moves up to a new n-period high it is a buy signal.

2.  When the weekly closing price moves down to a new n-period low it is a sell signal.

 

Note: When the price moves out if its n-period range, go in the direction of this new trend.

 

 

Weighted Close

 

Weighted Close Indicator calculates the average price change for an instrument while placing emphasis on the closing price. The Weighted Close can be plotted as a smooth line directly on the price chart. This indicator does not clearly show buy or sell signals, but it does provide a clear indication of the primary trend.

The weighted close is calculated by multiplying the close by 2, then adding the high and low, and then dividing the sum of these components by 4.

 

Methods of use:

1. You may compare Weighted Close to a moving average to define when an instrument is trending downward or upward.

2. The Weighted Close trends higher as the price continues upwards.

Volume
Accumulation/Distribution

 

Accumulation/Distribution is a momentum indicator which detects the divergences between market price and tick volume.

Based on that it identifies whether the market participants are mostly “accumulating” (buying) or “distributing” (selling) the given instrument.

These divergences indicate that the trend is weakening, and generate the signals to BUY when there is a bullish divergence, and SELL when there is a bearish divergence.

The Stop orders for Buy positions should be set below the most recent low, and for the Sell positions – above the latest high.

Accumulation/Distribution indicator is calculated by the following formula:
AD = Previous AD + [(Close – Low) – (High – Close)] /(High – Low)* Volume

Methods of use:

1.Go long when there is a bullish divergence.

2.Go short when there is a bearish divergence.

Market Facilitation Index

 

The Market Facilitation Index, created by Bill Williams, represents the dynamics of volume and price movement. In technical analysis the absolute values of the indicator are not significant, what’s important is the changes in the indicator.

Market Facilitation Index formula is:
BWMFI:= (High – Close) / Volume

Methods of use:

1.When BWMFI and volume increase, this means that the market becomes more volatile and a new trend is likely to start.

2.When BWMFI and volume decrease, the market becomes steady.

 

Force Index

 

Force Index indicator defines the market movement strength and possible trend reversals based on price and volume data. This indicator is created by Alexander Elder and described in his book “Trading for a Living”.

The Force Index combines three essential elements of the price movement: direction, extent and volume, and oscillates between positive and negative areas as the balance of power changes. This indicator helps to confirm the overall trend, identify correction levels and predict trend reversals.

Elder originally used Moving Average of price difference in the Force Index formula. There is another version of the indicator using the difference of Moving Averages. Given indicator allows to use both calculation methods:

Classical formula (Force Index Type is ‘By Elder’):
Force Index = MA[{Price (current value) – Price (previous value)} * Volume, N]

Modified formula (Force Index Type is ‘Ordinary’):
Force Index = [MA { Price (current value), N} – MA{ Price (previous value), N}] * Volume

Where:
N – is a period of Moving Average
MA – is a Moving Average;
Price – is a selected Price Type;

Elder uses 1 and 13 period EMA and close price.

Force Index for one period is calculated by subtracting the previous close price from the current close and multiplying the result by volume. In order to get Force Index for more than one period, just use the exponential moving average of the 1-period Force Index. For example, a 13-Period Force Index is a 13-period EMA of the 1-period Force Index values for the last 13 periods.

Methods of use:

1.Go long if the Force index is below zero and there is a bullish divergence.

2.Go short if the Force index is above zero and there is a bearish divergence.

Money Flow Index

 

The Money Flow Index (MFI) also known as volume-weighted RSI, is developed by Gene Quong and Avrum Soudack. Based on price and volume values it defines buying and selling pressure.

MFI first calculates the typical price for each period: if the typical price increases, the money flow is positive (indicating the buying pressure); if the typical price decreases, the money flow is negative (indicating the selling pressure). A ratio of positive and negative money flow is then used in the RSI formula. The resulting oscillator line fluctuates between zero and one hundred levels providing signals of trend reversals and indicating price extremes.

Indicator Formula:
Typical Price = (High + Low + Close) / 3
Money Flow = Typical price * Volume
Money Ratio = Positive Money Flow/Negative Money Flow
Money Flow Index = 100 – (100/ (1 + Money Ratio))

NOTE: Positive Money Flow parameter used in Money Ratio formula, is calculated as a sum of positive money values (received when typical price is greater than the previous typical price value) for the number of periods used to create the indicator. Negative Money Flow is calculated as a sum of negative money values.

Methods of use:

1.Go long on bullish divergence.

2.Go short on bearish divergence.

 

On Balance Volume

 

On Balance Volume (OBV) indicator was first described by Joe Granville in 1963 in his book Granville’s New Key to Stock Market Profits. This indicator measures buying and selling activity and based on that defines positive and negative volume flow. The divergences between OBV and price can be used to predict market movement and confirm price trends.

If the indicator price is higher than the previous indicator price then:
OBV = Previous OBV + Volume

If the indicator price is lower than the previous indicator price then:
OBV = Previous OBV – Volume

If the indicator price equals the previous indicator price then:
OBV = Previous OBV (no change)

According to Joe Granville, Close price should be used as indicator price.

Methods of use:

During a ranging market watch for a rising or falling On Balance Volume:

1.Rising OBV warns of an upward breakout.

2.Falling OBV warns of a downward breakout.

A rising On Balance Volume confirms an up-trend and a falling OBV confirms a down-trend:

1.Bullish divergence between OBV and price warns of market bottoms.

2.Bearish divergence between OBV and price warns of market tops.

 

Volume

 

The notion of Volume was basically used on stock and security markets in regards to the number of trades executed within a given time interval, measured in contracts or money terms. On Forex market monetary Volume is substituted by the tick volume (number of ticks received during specified period of time) .

The Volume indicator in ActTrader calculates the number of ticks per candle and plots a green bar if the volume of the current candle is larger than that of the previous candle; or red bar – if the volume of the current candle is smaller than that of the previous candle.

Methods of use:

It is believed that the more ticks are received within a period, the more market participants have entered the market, which typically means the increasing number of orders and money volume. And vice versa: the less the number of ticks per candle, the less market participants, which means the decreasing number of orders and money volume.

 

Other
Fractals

 

Fractals is an indicator that detects the higher and the lower limits of the current trend and can predict a possible reversal of the trend. This indicator is a series of at least five successive bars, with the highest high in the middle and two lower highs on both sides. The opposite series is at least five successive bars, with the lowest low in the middle and two higher lows on both sides.

 

Fractals are mostly used to predict a reversal in the current trend. A shift from a downtrend to an uptrend can be traced when the lowest bar is in the middle of the pattern and two bars with successively higher lows are located on either side of it. A shift from an uptrend to a downtrend can be traced when the highest bar is in the middle of the pattern and two bars with successively lower highs are located on both sides of it. Note that Fractals are more effective when used in conjunction with other indicators such as MA, Fibonacci Retracement, and Alligator.

 

Methods of use:

 

1.If the Up fractal is higher than the red line (Alligator teeth) it is a signal to sell.

2.If the Down fractal is lower than the red line (Alligator teeth) it is a signal to buy.

 

 

Gann Swing Chartist

 

The Gann Swing Chartist indicator is an efficient tool for determining the trend direction and the support and resistance levels. It filters out a big amount of noise in the chart depicting the most important movements.

There are four basic definitions related to this indicator: UpSwing (when the indicator line is ascending), DownSwing (when the indicator line is descending), UpTrend (when there is a series of rising valleys), and DownTrend (when there is a series of diminishing peaks).

The indicator trend changes from down to up when the UpSwing passes the previous peak, from up to down – when the DownSwing passes the previous valley. When the trend is changed, the indicator line starts to be plotted in a different color.

The swing direction changes from down to up when the swing is down and there are at least N consecutive higher highs, from up to down – when the swing is up and there are at least N consecutive lower lows. (N is determined by the Bars to Swing parameter). If the FastTrack option is enabled, the swing direction will also change if the low/high of the candle is lower/higher than the previous valley/peak.

If there are not enough consecutive higher highs (lower lows) to determine the swing, the indicator color will be different from the UpTrend and DownTrend.

The swing tops indicate the resistance levels, and the swing bottoms indicate the support levels.

The Gann Swing Chartist can also be used in conjunction with the HiLo Activator and Fibonacci retracement to determine the points to enter and exit the market.

 

Methods of use:

1.The downtrend (plotted in red) starts in the point A, where the price goes lower than the previous valley. This makes a good signal to sell.

2.The uptrend (plotted in green) starts in the point B, where the price goes higher than the previous peak. This makes a good signal to buy,

 

 

 

 Here you can find a full list of available system indicators

• Accelerator/Decelerator

• Accumulation/Distribution

• Average Directional Movement

• Alligator

• Aroon

• Auto Trendlines

• Average True Range

• Awesome Oscillator

• Bollinger Bands

• Chandelier Stop

• Commodity Channel Index

• DeMarker

• Dual Moving Averages

• Engulfing

• Envelopes

• Flipit

• Force Index

• Fractals

• Gann Swing Chartist

• Gator

• Hi Lo Activator

• Ichimoku Kinko Hyo

• Kairi

• Keltner Channel

• Linear Regression

• Market Facilitation Index

• Money Flow Index

• Moving Average Convergence/Divergence

• Momentum

• Morning and Evening Star

• Moving Average

• On Balance Volume

• Parabolic SAR

• Perry Kaufman’s Adaptive MA

• Pivot Points

• Price Channel

• Rate of Change

• RAVI

• Relative Strength Index

• Standard Deviation

• Stochastic

• Stochastic RSI

• T3 Tilson

• TRIX

• Tweezer

• Volume

• Weighted Close

• Williams’ Percent Range

[/dt_sc_toggle][dt_sc_toggle title=”Chart Objects”]

Line Objects

 

Line objects are ultimate technical analysis tools used for identifying the trends,
support and resistance levels, chart patterns etc. The Objects menu offers three types of lines that
you can plot in the chart:

Trendline
– can be drawn in any direction; it requires two points to be plotted

Vertical
Line – requires only one point to be plotted in the chart

Horizontal
Line – requires only one point to be plotted in the chart.

When you select any of these options, the cursor will turn into a hand: , so you can choose the start point of your line. In order to plot a
trendline, drag the cursor to the end point of your line, and release it.

When you left-click on the line, it will become highlighted, and you will be able to
drag it over the chart – the cursor will turn into a hand: .

If you hover cursor over a dot on either end of the trendline, it will turn into a
crosshair allowing you to drag the dot over the chart:

Right-clicking on the line opens the standard context menu for manually plotted
objects:

Lines Properties

The properties of any line manually plotted in the chart can be changed in the
dialog-box, which may be accessed in three ways:

Double-click
on the line

Right-click
on the line and select the Object Settings option from the
context menu

Left-click
on the line to select it, and then select the Object Settings option from the Objects menu on the
chart toolbar:

 

Line Settings dialog box

When the Line Settings dialog box opens, it displays current settings of the
selected line:

For a trendline, this dialog allows you to customize the following properties:

Name

The name of the trendline. (If you create an alert on penetration of the trendline,
this name will be displayed in the Trendline column of the Chart Alerts table). The default name of
the trendline is ‘Line’ with an order number, which is incremented by 1 for each trendline created
within the individual instance of a chart. You can input up to 20 symbols into the textbox. Empty
values are not allowed.

Color

The color of the trendline. Left click on the color sample will open the dialog for
color selection.

Width

The width of the trendline. The drop-down box allows to select one of the three
available options: 1 pixel, 2 pixels or 3 pixels.

Style

The style of the trendline. The drop-down box includes three options: solid, dashed
and dotted.

Note: If the selected width is 2 pixels or 3 pixels, the
Style drop-down box will be unavailable with the solid line preselected.

Extension

This drop-down box includes the options:

limited

extended

extended
right

extended
left.

Show price labels

When this option is enabled, the price labels will appear on the edges of the
trendline.

ID

The system number of the line.

Click Apply to view the changes in the
chart; click OK to confirm the changes you made and close
the dialog; click Cancel to discard the changes and close
the dialog.

For vertical and horizontal lines the “Show price/date Labels” setting in the Line Settings dialog
allows not only to show/hide the corresponding labels, but also to change their colors.

The “Lines Labels” color can also be changed
for all lines shown on an active chart in Chart Settings -> Colors -> Chart Object tab.

 

Fibonacci Retracement

 

Fibonacci Instruments are essential graphical tools of technical analysis
commonly used for market forecasts, especially in conjunction with indicators. ActTrader provides you with
all existing Fibo Instruments which differ in methods of plotting and usage
Fibonacci Retracement

Fibonacci Retracement is a chart
tool used to determine the support and resistance levels on trending markets. The Fibonacci
Retracement levels are created by drawing a trendline between two extreme points and then
splitting the vertical distance according to the specified ratios.
Fibonacci Retracement can include up to 13 lines (levels).

Plotting Fibonacci
Retracement in the chart

Select the Fibonacci Retracement option in the Objects menu of the chart
toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the retracement levels, left-click on a significant High
swing, and drag the cursor to the most recent Low swing (or from Low to High). The Fibonacci
Retracement lines will be automatically plotted in the chart with the ratio and the
corresponding price indicated by each line.

When you left click on the plotted Fibonacci Retracement object, it will
become highlighted, i.e. four dots will appear at the edges of the lines. If you hover the
cursor over a dot, it will turn into a crosshair allowing you to drag the dot over the chart
thus resizing the Fibonacci object:

You can also drag the plotted Fibonacci Retracement object over the chart by
left-clicking on its line and holding the mouse button.

Right-clicking on the Fibonacci Retracement opens the standard context menu
for manually plotted objects:

To delete the Fibonacci Retracement object left-click on it once
and choose the Remove Selected Objects option on the chart toolbar, or right-click on object
and select the Remove Object option from the context menu.

Fibonacci Settings

You can customize the view of the Fibonacci Retracement object
by using the advanced Settings dialog box, allowing to show/hide and change the view of each
line.

The Fibonacci Settings dialog box
appears as displayed below:

Properties
description

Id

The unique number of the chart object (non-editable)

Extension

This drop-down box allows you to select the lines’ extension:

limited

extended

extended
right

extended
left.

This setting is applied to all the lines at the same time. By default the
‘limited’ option is selected

Show labels

When this option is enabled, labels appear at the end of each line (the rate
on the left and the ratio on the right). By default it is enabled.

The Levels section contains the
individual settings for each line:

The
checkboxes in the very left column are used to
show/hide the individual levels. When the checkbox is enabled, the corresponding line will
be displayed in the chart. By default, only seven lines are enabled (as displayed above)

The
edit-boxes next to the checkboxes are used to change
the percentage levels for each line. The default values of the levels are:

0%

23.6%

38.2%

50%

61.8%

76.4%

86%

100%

118%

127%

161.8%

261.8%

423.6%

Color – Left click on the color sample to select the
line color

Width – The width of the line. Use the drop-down box
to select one of the three available options: 1 pixel, 2 pixels or 3 pixels.

Style – The style of the line. The drop-down box
includes three options: solid, dashed and dotted.

Note: If the selected width is 2 pixels or 3
pixels, the Style drop-down box will be unavailable with the solid line preselected.

Note: The Percentage edit box, Color button,
Width and Style drop-down boxes are available only for enabled lines.

The ‘Save level settings as
default’
button saves the settings of all the levels, so that they will be
applied to all the Fibonacci Retracements created thereafter.

After you’ve made all the necessary changes to the Fibonacci object, click
Apply to view the changes in the chart; click OK to confirm the changes and close the dialog; click
Cancel to discard the changes and close the dialog.

The Fibonacci Settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar,
when a Fibonacci Retracement object is selected:

Right-click
on a Fibonacci object, and then click Settings.

Double-click on the Fibonacci Retracement plotted in the chart.

 

Fibonacci Fan

Fibonacci Fan is one of
the instruments allowing to build correction levels of Fibonacci. Its distinctive feature is
possibility to build inclined levels, depending on the direction of a trend line. Fibonacci
Fan can include up to 13 lines (rays) giving the traders an opportunity to make more
accurate market forecast.

Plotting
Fibonacci Fan in the chart

Select the Fibonacci Fan option in the Objects menu of the chart
toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the Fan, left-click on the last trough on the
chart (it will be the start point) and drag the cursor to the most recent peak. This will be
the directing line of the Fan. The rays of the Fan will be automatically plotted from the
start point at the predefined ratio. The corresponding percentage (Fibonacci levels) will be
indicated at every line.

When you left click on the plotted Fibonacci Fan object, it will
become highlighted, i.e. two dots will appear at the edges of the directing line. If you
hover the cursor over a dot, it will turn into a crosshair allowing you to drag the dot over
the chart thus resizing the Fibonacci object:

You can also drag the plotted Fibonacci Fan object over the
chart by left-clicking on its directing line and holding the mouse button.

Right-clicking on the directing line of the Fibonacci Fan opens
the standard context menu for manually plotted objects:

To delete the Fibonacci Fan object left-click on it once and
choose the Remove Selected Objects option on the chart toolbar, or right-click on object and
select the Remove Object option from the context menu.

Fibonacci Fan
Settings

You can customize the view of the Fibonacci Fan object by using
the advanced Settings dialog box, allowing to show/hide and change the view of each line.

The Fibonacci Settings dialog box appears as displayed below:

Properties
description

Id

The unique number of the chart object (non-editable)

Extension

This drop-down box allows you to select the lines’ extension:

–        limited

–        extended

–        extended right

–        extended left.

This setting is applied to all the lines at the same time. By default the
‘extended right’ option is selected

Show labels

When this option is enabled, the rates labels will appear at every line. By
default it is enabled.

The Levels section contains the
individual settings for each line:

▪        The checkboxes in the very
left column are used to show/hide the individual levels. When the checkbox is enabled, the
corresponding line will be displayed in the chart. By default, only four lines are enabled
(as displayed above)

▪        The edit-boxes next to the
checkboxes are used to change the percentage levels for each line. The default values of the
levels are:

0%

23.6%

38.2%

50%

61.8%

76.4%

86%

100%

118%

127%

161.8%

261.8%

423.6%

▪        Color – Left click on the
color sample to select the line color

▪        Width – The width of the
line. Use the drop-down box to select one of the three available options: 1 pixel, 2 pixels
or 3 pixels.

▪        Style – The style of the
line. The drop-down box includes three options: solid, dashed and dotted.

Note: If the selected width is 2 pixels or 3
pixels, the Style drop-down box will be unavailable with the solid line preselected.

Note: The Percentage edit box, Color button,
Width and Style drop-down boxes are available only for enabled lines.

The ‘Save level settings as default’
button saves the settings of all the levels, so that they will be applied to all the
Fibonacci Fan objects created thereafter.

After you’ve made all the necessary changes to the Fibonacci object, click
Apply to view the changes in the chart; click OK to confirm the changes and close the dialog; click
Cancel to discard the changes and close the dialog.

The Fibonacci Settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar,
when a Fibonacci Fan object is selected.

Right-click
on a Fibonacci object, and then click Settings.

Double-click
on the Fibonacci Fan plotted in the chart.

 

Fibonacci Channel

 

Fibonacci channel uses
market peaks and troughs for predicting major changes in trend direction and levels of support
and resistance.

When potting the Fibonacci channels, the most important is to
identify the peaks and troughs correctly.  If you manage to detect the appropriate tops and
bottoms, you will be able to forecast the support and resistance levels weeks and months into
the future. Use only major tops and bottoms to find the base line of a Channel with one or more
significant side swings. The widest swing for the period of the base line will be used as a
trigger line.

Plotting Fibonacci Channel in
the chart

Select the Fibonacci Channel option in the Objects menu of the chart toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the channel levels, left-click on a beginning of the channel,
and drag the cursor to the end of the channel (providing size). The Fibonacci Channel lines will
be automatically plotted in the chart with the ratio and the corresponding price indicated at
each line.

When you left click on the plotted Fibonacci Channel object, it will become
highlighted, i.e. four dots will appear at the edges of the lines. If you hover the cursor over
a dot, it will turn into a crosshair allowing you to drag the dot over the chart thus resizing
the Fibonacci object:

You can also drag the plotted Fibonacci Channel object over the chart by
left-clicking on its line and holding the mouse button.

Right-clicking on the Fibonacci Channel opens the
standard context menu for manually plotted objects:

To delete the Fibonacci Channel object left-click on it once and choose the
Remove Selected Objects option on the chart toolbar.

Fibonacci Channel
Settings

You can customize the view of the Fibonacci Channel object by using the advanced
Settings dialog box, allowing to show/hide and change the view of each line.

The Fibonacci Settings dialog box appears as displayed below:

Properties description

Id

The unique number of the chart object (non-editable)

Size

The size (100%) of Fibonacci Channel that shows the distance between the plotted
lines of 0% and 100% in pixels.

Default value is 40.

Extension

This drop-down box allows you to select the lines’ extension:

–        limited

–        extended

–        extended right

–        extended left.

This setting is applied to all the lines at the same time. By default the
‘limited’ option is selected

Show labels

When this option is enabled, percentage labels appear at the end of each line.
By default it is enabled.

The Levels section contains the
individual settings for each line:

▪        The checkboxes in the very left
column are used to show/hide the individual levels. When the checkbox is enabled, the
corresponding line will be displayed in the chart. By default, only five lines are enabled (as
displayed above)

▪        The edit-boxes next to the
checkboxes are used to change the percentage levels for each line. The default values of the
levels are:

0%

23.6%

38.2%

50%

61.8%

76.4%

86%

100%

118%

127%

161.8%

261.8%

423.6%

▪        Color – Left click on the color
sample to select the line color

▪        Width – The width of the line.
Use the drop-down box to select one of the three available options: 1 pixel, 2 pixels or 3
pixels.

▪        Style – The style of the line.
The drop-down box includes three options: solid, dashed and dotted.

Note: If the selected width is 2 pixels or 3 pixels,
the Style drop-down box will be unavailable with the solid line preselected.

Note: The Percentage edit box, Color button, Width
and Style drop-down boxes are available only for enabled lines.

The ‘Save level settings as default’
button saves the settings of all the levels, so that they will be applied to all the Fibonacci
Channel objects created thereafter.

After you’ve made all the necessary changes to the Fibonacci object, click Apply to view the changes in the chart; click OK to confirm the changes and close the dialog; click
Cancel to discard the changes and close the dialog.

The Fibonacci Settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar, when a
Fibonacci Channel object is selected.

Right-click
on a Fibonacci object, and then click Settings.

Double-click
on the Fibonacci Retracement plotted in the chart.

 

Fibonacci Time Zones

 

The graphic tool «Fibonacci Time Zones» is a set of vertical lines, plotted
at the intervals corresponding to the Fibonacci numbers. The usage of Fibonacci Time Zones tool
is based on popular belief that the most significant market events occur at the time intervals
corresponding to Fibonacci numbers.

 

Interpretation of Fibonacci Time Zones involves looking for
significant changes in price at or near the vertical lines. Time Zones are most applicable to a
long-term analysis of price movement and are probably of limited value when studying short-term
charts.

 

Plotting Fibonacci Time Zones
in the chart

Select the Fibonacci Time Zones option in the
Objects menu of the chart toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the Fibonacci Time Zones,
left-click on a chart and drag the cursor to set the basic period. The Fibonacci Time Zones
lines will be automatically plotted in the chart with the Fibonacci numbers indicated at each
line.

When you left click on one of the first two lines
Fibonacci Time Zones object, it will become highlighted, i.e. four dots will appear at the edges
of the lines. If you hover the cursor over these lines, it will turn into a crosshair allowing
you to drag the Fibonacci Time Zones object left and right on the chart:

Right-clicking on one of the first two lines of
the Fibonacci Time Zones opens the standard context menu for manually plotted objects:

To delete the Fibonacci Time Zones object left-click on it once and choose the
Remove Selected Objects option on the chart toolbar.

Fibonacci Time Zones
Settings

You can customize the view of the Fibonacci Time Zones object by using the
advanced Settings dialog box, allowing to show/hide and change the view of each line.

The Fibonacci Settings dialog box appears as displayed below:

Properties description

Id

The unique number of the chart object (non-editable)

Size

The size of Fibonacci Time Zones that shows the distance between the first two
lines in pixels.

Show labels

When this option is enabled, labels appear at the end of each line (Fibonacci
numbers at the top of the lines). By default it is enabled.

The Levels section contains the
individual settings for each line:

▪        The checkboxes in the very left
column are used to show/hide the individual levels. When the checkbox is enabled, the
corresponding line will be displayed in the chart. By default, only nine lines are enabled (as
displayed above)

▪        The edit-boxes next to the
checkboxes are used to change the levels for each line. The default values of the levels are:

0

1

2

3

5

8

13

21

34

55

89

144

233

▪        Color – Left click on the color
sample to select the line color

▪        Width – The width of the line.
Use the drop-down box to select one of the three available options: 1 pixel, 2 pixels or 3
pixels.

▪        Style – The style of the line.
The drop-down box includes three options: solid, dashed and dotted. Note: If the selected width
is 2 pixels or 3 pixels, the Style drop-down box will be unavailable with the solid line
preselected.

Note: The Level edit box, Color button, Width and
Style drop-down boxes are available only for enabled lines.

The ‘Save level settings as default’
button saves the settings of all the levels, so that they will be applied to all the Fibonacci
Time Zones objects created thereafter.

After you’ve made all the necessary changes to the Fibonacci object, click Apply to view the changes in the chart; click OK to confirm the changes and close the dialog; click
Cancel to discard the changes and close the dialog.

The Fibonacci Settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar, when a
Fibonacci Time Zones object is selected:

Right-click
on a Fibonacci object, and then click Settings.

Double-click
on the Fibonacci Time Zones object plotted in the chart.

 

Fibonacci Arcs

 

Fibonacci arcs indicate the
potential support and resistance levels. Usually both Arcs and Fibonacci Retracement are applied
on the chart simultaneously; the support / resistance levels are determined by intersections of
these lines.

Plotting Fibonacci Arcs in the
chart

Select the Fibonacci Arcs option in the Objects
menu of the chart toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the Fibonacci Arcs, left-click on
the chart to set the center of the arc, and drag the cursor over the chart to plot the radius of
the arc. The end point will represent the 100% level. The Fibonacci Arcs will be automatically
plotted in the chart with the ratio indicated at each line.

When you left click on the plotted Fibonacci Arcs
object, it will become highlighted, i.e. two dots will appear at the edges of the radius. If you
hover the cursor over a dot, it will turn into a crosshair allowing you to drag the dot over the
chart thus resizing the Fibonacci object:

You can also drag the plotted Fibonacci Arcs object over the chart by
left-clicking on the radius and holding the mouse button.

Right-clicking on the Fibonacci Arcs opens the
standard context menu for manually plotted objects:

To delete the Fibonacci Arcs object left-click on it once and choose the Remove
Selected Objects option on the chart toolbar.

Fibonacci Arcs Settings

You can customize the view of the Fibonacci Arcs object by using the advanced
Settings dialog box, allowing to show/hide and change the view of each line.

The Fibonacci Settings dialog box appears as
displayed below:

Properties description

Id

The unique number of the chart object (non-editable)

Show labels

When this option is enabled, percentage labels appear at every arc. By default
it is enabled.

Circle

By default Fibonacci Arcs have elliptic shape. The closer the Fibo Line to the
horizontal axis, the more the arcs are stretched horizontally. The closer the Fibo Line to the
vertical axis, the more the arcs are stretched vertically. Fibo Line drawn at an angle of 45°
gives you the circle arcs.

If you want to use only circle arcs that would not depend on the angle of the
Fibo Line, enable the Circle checkbox

Fibo Line

This
checkbox shows/hides the Fibo Line (radius of the arcs). When the checkbox is enabled, the
corresponding line will be displayed in the chart.

Color – Left click on the color sample to select the line
color

Width – The width of the line. Use the drop-down box to
select one of the three available options: 1 pixel, 2 pixels or 3 pixels.

Style – The style of the line. The drop-down box includes
three options: solid, dashed and dotted. Note: If the selected width is 2 pixels or 3 pixels,
the Style drop-down box will be unavailable with the solid line preselected.

The Levels section contains the
individual settings for the arcs:

▪        The checkboxes in the very left
column are used to show/hide the individual levels. When the checkbox is enabled, the
corresponding line will be displayed in the chart. By default, only three lines are enabled (as
displayed above)

▪        The edit-boxes next to the
checkboxes are used to change the percentage levels for each line. The default values of the
levels are:

0%

23.6%

38.2%

50%

61.8%

76.4%

86%

100%

118%

127%

161.8%

261.8%

▪        The Circuit setting allows to
input the circuit of arcs in percent. The default value of the circuit is 50%

▪        Color – Left click on the color sample to select the line color

▪        Width – The width of the line. Use the drop-down box to select one of
the three available options: 1 pixel, 2 pixels or 3 pixels.

▪        Style – The style of the line. The drop-down box includes three
options: solid, dashed and dotted.

Note: If the selected width is 2 pixels or 3 pixels,
the Style drop-down box will be unavailable with the solid line preselected.

Note: The Percentage edit box, Color button, Width
and Style drop-down boxes are available only for enabled lines.

The ‘Save level settings as default’
button saves the settings of all the levels, so that they will be applied to all the Fibonacci
Arcs created thereafter.

After you’ve made all the necessary changes to the Fibonacci object, click Apply to view the changes in the chart; click OK to confirm the changes and close the dialog; click
Cancel to discard the changes and close the dialog.

The Fibonacci Settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar, when a
Fibonacci Arcs object is selected.

Right-click
on a Fibonacci object, and then click Settings.

Double-click on the Fibonacci Retracement plotted
in the chart.

 

Fibonacci Expansion

 

Fibonacci Expansion is
largely similar to Fibonacci Retracement and intended for determining the end of the third wave.
Unlike Fibonacci Retracement, this instrument is built on not the only one trend line, but on
two waves.

Plotting Fibonacci Expansion
in the chart

Select the Fibonacci Expansion option in the
Objects menu of the chart toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the Fibonacci Expansion levels, left-click on the chart at the
beginning of the trend, and drag the cursor to the end of the trend. The third point will appear
near the end of the trend allowing you to plot the second wave line. The Fibonacci Expansion
lines will be automatically plotted in the chart with the ratio and the corresponding price
indicated at each line.

When you left click on the plotted Fibonacci Expansion object, it will become
highlighted, i.e. three dots will appear at the edges of the lines. If you hover the cursor over
a dot, it will turn into a crosshair allowing you to drag the dot over the chart thus resizing
the Fibonacci object:

You can also drag the plotted Fibonacci Expansion object over the chart by
left-clicking on its line and holding the mouse button.

Right-clicking on the Fibonacci Expansion opens the standard context menu for
manually plotted objects:

To delete the Fibonacci Expansion object left-click on it once and choose the
Remove Selected Objects option on the chart toolbar.

Fibonacci Expansion
Settings

You can customize the view of the Fibonacci Expansion object by using the
advanced Settings dialog box, allowing to show/hide and change the view of each line.

The Fibonacci Settings dialog box appears as displayed below:

Properties description

Id

The unique number of the chart object (non-editable)

Extension

This drop-down box allows you to select the lines’ extension:

–        limited

–        extended

–        extended right

–        extended left.

This setting is applied to all the lines at the same time. By default the
‘extended right’ option is selected

Show labels

When this option is enabled, labels appear at the end of each line (the rate on
the left and the ratio on the right). By default it is enabled.

Fibo Line

This
checkbox shows/hides the Fibo Lines (designating the waves). When the checkbox is enabled, the
corresponding lines will be displayed in the chart.

Color – Left click on the color sample to select the line
color

Width – The width of the line. Use the drop-down box to
select one of the three available options: 1 pixel, 2 pixels or 3 pixels.

Style – The style of the line. The drop-down box includes
three options: solid, dashed and dotted. Note: If the selected width is 2 pixels or 3 pixels,
the Style drop-down box will be unavailable with the solid line preselected.

The Levels section contains the
individual settings for each line:

▪        The checkboxes in the very left
column are used to show/hide the individual levels. When the checkbox is enabled, the
corresponding line will be displayed in the chart. By default, only three lines are enabled (as
displayed above)

▪        The edit-boxes next to the
checkboxes are used to change the percentage levels for each line. The default values of the
levels are:

0%

23.6%

38.2%

50%

61.8%

76.4%

86%

100%

118%

127%

161.8%

261.8%

▪        Color – Left click on the color
sample to select the line color

▪        Width – The width of the line.
Use the drop-down box to select one of the three available options: 1 pixel, 2 pixels or 3
pixels.

▪        Style – The style of the line.
The drop-down box includes three options: solid, dashed and dotted. Note: If the selected width is 2 pixels or 3 pixels,
the Style drop-down box will be unavailable with the solid line preselected.

Note: The Percentage edit box, Color button, Width
and Style drop-down boxes are available only for enabled lines.

The ‘Save level settings as default’
button saves the settings of all the levels, so that they will be applied to all the Fibonacci
Expansion created thereafter.

After you’ve made all the necessary changes to the Fibonacci object, click Apply to view the changes in the chart; click OK to confirm the changes and close the dialog; click
Cancel to discard the changes and close the dialog.

The Fibonacci Settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar, when a
Fibonacci Expansion object is selected:

Right-click
on a Fibonacci object, and then click Settings.

Double-click
on the Fibonacci Expansion plotted in the chart.

 

Text Labels

 

Text labels plotting is a manual tool intended to facilitate your work with charts. This
feature allows you to plot any text in the chart, move it and change its properties, and even save it for
future utilization.

Plotting text objects in the chart

To access this function select the Text option in the Objects menu on the chart toolbar:

When you click on this option, the mouse pointer will turn into text-cursor: .

Click on the chart once, and the word ‘Text1’ will appear at that point. At the same time
the Text Settings dialog box will be opened, where you can input any text, select the color, font, frame,
and other parameters of the text object that will appear on the chart.

When you left-click on the text object, it becomes highlighted, and you will be able to drag
it over the chart – the cursor will turn into a hand: . To paste the text label into the chart just release the mouse button. Right-clicking on
the text opens the standard context menu for manually plotted objects:

To delete a text label left-click on it once and choose the Remove Selected Objects option on the chart toolbar.

Text Settings

The Text Settings dialog box appears when you create the text label (as described above),
and allows you to edit existing labels. There are two ways to access it:

Right-click
on the created text and select the Object Settings option

Double-click
on the created text

Text

The textbox allows you to input up to 200 characters that will appear on the chart. The
default value for this field is ‘Text1’. When you edit the already existing label, this field will display
the current text.

Font

By default the text font is Tahoma, size – 8, color – Black. Use three drop-down boxes to
select any other settings for these parameters. B, I, U buttons make
the text Bold/Italic/Underlined. Any changes of these parameters will not be reflected in the textbox. Click
Apply to view the result in the chart without closing the dialog
box.

Show Frame

By default this option is disabled. When you enable it, the window will expand to allow you
to set a frame around the text and configure its properties:

Select the Frame Style (Box or Ellipse); enable the Border checkbox to set a border for your
label (if it is enabled, you can select the color and border width in the drop-down boxes); enable the Fill
checkbox to set the color and transparency of the label’s background.

If you enable Show Frame without enabling Border and Fill, the label will not have any frame
or background.

Previous Texts

This drop-down box lists the top 20 of the most frequently and most recently used labels.
Every value you input into the ‘Text’ textbox is saved to this list (without Font and Frame settings); the
list can store up to 500 values.

When the Text Settings Dialog Box is opened for the first time, the Previous Text list
includes only the default text:

Buy Signal

Sell Signal

Strong Uptrend

Weak Uptrend

Strong Downtrend

Weak Downtrend

Spike!

Up Hammer

Down Hammer

Double peak

Double bottom

Head and Shoulders

When you select one of the lines in the Previous texts drop-down box, the value in the Text
text box will change correspondingly.

ID

Displays the unique number of the chart object.

Click Apply to view the edited text in the chart;
click OK to confirm the changes you made and close the dialog; click
Cancel to discard the changes and close the dialog.

Figures

 

You can draw circles, ovals and rectangles in the chart. Drawing figures can be
very helpful in technical analysis when you need to highlight some area on the chart.

 

Plotting objects on the chart

Select the Circle/Oval/Rectangle option in the
Objects menu of the chart toolbar:

When you select this option, the cursor will become finger-shaped:

In order to plot the object, left-click anywhere on the chart (it will be the central point)
and drag the cursor to plot the directing line of the selected object: radius for the circle, diagonal for
the rectangle or diagonal of the rectangle in which the oval is inscribed.

 

Note:        If you press Ctrl while drawing an oval, then your oval
will turn into a circle.

If you press Ctrl while drawing a rectangle, then your
rectangle will turn into a square.

 

When you left click on the plotted object, it will become highlighted, i.e. two dots will
appear at the edges of the directing line. If you hover the cursor over a dot, it will turn into a crosshair
allowing you to drag the dot over the chart thus resizing the object:

You can also drag the plotted object over the chart by left-clicking on its line and holding
the mouse button.

Right-clicking on the directing line of the object opens the
standard context menu for manually plotted objects:

To delete the object left-click on it once and choose the Remove Selected Objects option on
the chart toolbar or press Delete on your keyboard.

Objects Settings

You can customize the view of the new graphical objects using the advanced Settings dialog
box, allowing you even to change the object position related to the chart candles.

The object dialog box appears as displayed below:

Properties description

Color – Left click on the color sample to select the
line color;

Fill Color – Check the checkbox to enable the
object’s fill color. Left click on the color sample to select the desired color. If the Fill Color checkbox
is unchecked – the object will be transparent;

Note: When object is filled – it can be selected by clicking
anywhere inside the object. When object is transparent – it can be selected only by clicking on its outline.

Width – The width of the line. Use the drop-down box
to select one of the three available options: 1 pixel, 2 pixels or 3 pixels;

Style – The style of the line. The drop-down box
includes three options: solid, dashed and dotted;

Draw in the chart background checkbox – allows
plotting the object behind the chart candles;

Note: Each new object with the “Draw in the chart background” parameter enabled will be superimposed
on the previous object in the order of appearance on the chart.

Id – The unique number of the chart object
(non-editable)

Show price label checkbox – Additional parameter
available for Rectangle object. When this option is enabled, the rates labels will appear at the edges of
the directing line. By default it is enabled.

Show price label color – Left click on the color
sample to select the label color;

The object settings dialog box can be accessed in three ways:

Click
the Object Settings button on the chart toolbar, when the object is
selected:

Right-click
on the object, and then click Settings.

Double-click
on the object plotted in the chart.

Pop-up Hints

 

A pop-up hint with the details/values appears when hovering mouse pointer over an indicator or a
candle.

[/dt_sc_toggle][dt_sc_toggle title=”Actions with Chart Objects”]

View Tutorial

It is possible to copy, paste, and link manually plotted chart objects.

The Copy function allows you to copy any selected
indicator or manually plotted chart object (such as trendlines, text labels, horizontal/vertical lines,
etc.) into the exchange buffer. The copied object can then be pasted
into another chart. The manually plotted objects are pasted to exactly the same coordinates as in the
original chart. Copying an indicator means applying its formula with the same settings to another chart, so
while the indicator would have different values, it would retain the color, period and other settings from
the first chart.

The Link function allows you to display a selected
object in all other charts of the same instrument that are currently open or will be opened in the future.
Linking means that after the object is copied to other chart(s), the object on the parent chart and the
objects on the other chart(s) would be linked to each other, so that a change in one of the objects would
make all the other ones change correspondingly.

If you fix an object on chart, that object will not
move if you accidentally click on it.

Object Selection

 

To copy or link an object, first select it by clicking on it. The manually
plotted object will be highlighted (i.e.  the dot markers will appear):

The embedded indicator line(s) will be displayed bold with dots on the edge(s):

A standalone indicator will be marked with dots on the corners of its frame:

You can deselect an object by selecting another object or clicking anywhere else
in the chart.

To select several objects, hold the Ctrl
button while clicking on them.

Pressing Ctrl+A will select all the
objects in the currently active chart (including the manually plotted objects and the
indicators). You can also choose the Select All Objects
option from the right-click menu of the chart:

 

Object Copying

 

To copy the selected objects, press Ctrl+C or choose the Copy
Selected Objects
option from the right-click menu of the chart:

Also, to copy a single manually plotted object, you can right-click on it, and
select the Copy Object option from the context menu of
this object:

 

Object Pasting

 

To paste the copied object(s), choose the Paste Objects
option from the right-click menu of the chart:

You can also press Ctrl+V to paste the object(s)
from the exchange buffer. However, the following matters should be considered:

It
is impossible to paste manually plotted chart objects into the chart with different instrument, although
it is always possible to paste an indicator.

It
might also be impossible to paste a manually plotted chart object into the chart because of the
different timeframe.

If
a manually plotted chart object cannot be pasted into a chart, you will receive an error message. The
messages are listed below:

Reason

Message

Different instrument

You cannot paste objects to a chart with different instrument

A chart object lies in the different timeframe

The object(s) cannot be pasted into this chart, because it lies
outside of the timeframe of this chart

Object Linking

 

To link the selected objects and indicators, choose the Link Selected Objects option from the right-click menu of the chart:

Also you may right-click on any manually plotted object in the chart and choose the Link Object option:

After the Link Objects option is chosen, all the
selected manually plotted objects become linked to all the charts of the same currency (the currently open
ones as well as those that will be opened in the future). The selected indicators link to all the charts
regardless to the instrument and time interval.

The
object(s) on the parent chart and the object(s) on other charts will be linked to each other, so that a
change in one of the objects would make the related objects on the other charts change correspondingly.

When
you delete an object(s) which is linked to the object(s) on other charts, this object will be deleted on all
charts.

The
linked objects are stored in the application memory, until they are manually deleted from the charts, or all
the charts on which they are plotted are closed, or the chart history on which they are plotted is deleted

After
you relogin, the links for all the objects will remain in the system

To unlink the objects, select the Remove Links
option from the right-click menu on the chart or from the context menu of the linked object (if the object
is not linked or there are no linked objects on the chart at all, the option will be grayed-out). When you
select Remove Links, the links for all the selected objects will be
removed (these objects will not be displayed on any chart except for the current chart).

You may also select the Remove All Links option from
the right-click menu on the chart, and after that the links for ALL linked objects will be removed (the
objects will not be displayed on any chart except for the current chart).

Show Linked Objects button

To display all the linked objects in the chart, enable the Show Linked Objects button. The button is highlighted indicating that
the mode is engaged. When the button is disabled, all the linked objects are hidden from the chart. By
default, the button is enabled.

Object Fixing

 

To fix an object on chart, right-click on any manually plotted object in the chart and
choose the Fix Object option:

Now if you click and drag the object, it will not move. This feature is designed to
protect you from accidentally moving plotted objects over the chart.

To unfix an object (make it movable), right-click on it and remove the check mark from
the Fix Object option.

 

 

The copy and link operations are restricted by the instrument and time interval of the charts. The
table below shows which operations are possible, and which are impossible:

 

Indicators

Manually plotted objects

Copying/Linking to a chart with the same instrument and time
interval

YES

YES

Copying to a chart with a different instrument and the same
time interval

YES

NO

Copying to a chart with a different time interval and the
same instrument

YES

YES – only if the chart includes the timeframe in which the object
is plotted

Linking to a chart with a different instrument

YES

NO

Linking to a chart with a different time interval

YES

YES – the object will be displayed only if the chart includes the
timeframe in which the object is plotted

[/dt_sc_toggle][dt_sc_toggle title=”Chart Settings”]

To open the chart settings menu, click on the    button on the chart toolbar, or select Chart Settings from the chart right-click menu.

The Chart Settings window is organized into a tree with 3 main branches:

Common

 

In Common settings, you can customize the overall display of various components of the chart. This section is divided into Chart Field and Display tabs.

The Chart Field tab contains the settings configuring the chart front-end:

Load Candles setting allows to set the number of candles (ticks) that will appear on a particular chart. By default, the application loads only 366 candles to be displayed on the chart at a time (as a new candle appears on the chart, the first one (the eldest) disappears). But you can change this value by using the up/down arrows or manually entering the values into the box).

The value of this parameter is saved when you save the chart using the ‘Save Current Chart’ button on the chart toolbar or ‘Save Current Chart’ option in the chart context menu.

This parameter is also saved for the current chart instance, when you change the number of Load Candles for a specific chart, leave the chart open and re-log in to the application. This chart will be loaded with the same number of candles that had been set up before.

If you save your desktop profile with a custom number of loaded candles on the open chart, the number of candles will be saved for this chart as a part of the profile.

On Mouse Wheel – configures the mouse wheel to either scroll or zoom the chart.

Use Embedded chart labels – this checkbox allows to move the last candle information and separated indicators’ labels inside the chart area:

This functionality can help you to save the screen space when working with the large number of different windows (charts).

Hide Toolbar checkbox also helps to increase the chart’s working space. This functionality hides the toolbar and horizontal scrollbar on the selected chart. The functionality can be accessed via the right-click menu (“Hide Toolbar”) as well as from the Chart Settings dialog.

Change number of candles on resize – this option is useful for those who often modify the chart window’s size – it changes the behavior of the chart data and windows width.

– If the box is checked, then resizing the window will not change the size of displayed candles, instead it will increase or decrease their number to fit the window width.

– If the box is unchecked, then resizing the window will resize the displayed candles, while their number remains fixed.

Original chart

Resize with the “Change number of candles on resize” option checked                                Resize with “Change number of candles on resize” option unchecked

Note: To use the “Change number of candles on resize” function it is required to have the OS Windows setting “Show window contents while dragging” checked.

Corresponding OS Windows setting can be found by the following path: Control Panel -> System and Security -> System -> Advanced system settings -> Performance Options -> Visual Effects – > Show window contents while dragging

Use spaces after last candle [in candles] – allows to set a space between the last candle and the right border of the chart after refreshing the chart or changing instrument/chart timeframe.  It helps to visually indicate the last candle on the chart.

  This setting will also be useful if you work with the large number of small charts.

  Note: This parameter affects all types of charts (Candles, Bars, Lines), but the space width is calculated based on candle size.

Number of loaded candles on scroll [in candles] setting allows to automatically upload preselected number of candles to the chart when working with the historical data by clicking on the left scroll arrow (when the scroll is at the left-most position).

Note: This parameter affects all types of charts (Candles, Bars, Lines), but the amount of preloaded information is calculated based on number of candles.

 

The Display tab allows to show/hide various graphical elements inside each chart:

Current Rate Label View allows to select how current Bid/Ask rates are indicated on chart.

There are two different types of Rate Label representation: “Spread” (standard) and “Bid/Ask Arrows”

Chart with Spread Current Rate Label:

Chart with Bid/Ask Arrows Current Rate Label

Chart with Rate Label hidden:

Separating Horizontal Lines each [in pips] – this setting is similar to “Separating Lines each [in candles]” (see below). It allows adding horizontal lines with the specified number of pips. For example you can easily create the net with the 50 pips steps. This is very useful for those who use manual chart analysis.

The Separating Lines tool allows the trader to add vertical separating lines onto charts. This is useful for visually separating the price chart into sectors by: candles, minutes, hours, days, or months.

 

Show Open/Closed Positions, Show Orders, Show Price Alerts – allows to add positions, orders, and price alerts markers on the chart. You can also show/hide these markers from the chart toolbar

Hide Trendline Labels – allows hiding the labels of all trendlines displayed on the chart. This setting affects already created and newly added trendlines

 

Colors

 

In Color settings, you can modify colors of various aspects of the chart. In addition, you can reset the chart colors to the default setting.

All color settings are grouped into four tabs: General, Chart Data, Chart Objects and Trade Objects

The General tab contains the settings affecting the overall chart field:

 The Current Rate… colors apply to the rate indication selected in the Current Rate Labels View setting in Common > Display tab of the Chart Settings

 – The Current Rate Label setting defines the color of Spread highlight:

 

 – The Current Rate Arrow Ask Label and Current Rate Arrow Bid Label define the colors of Bid/Ask Arrows

 

The Chart Data tab groups the colors of candles, bars, line chart types.

 With these settings you can set independent color indication for the chart in different modes: Candles, Bars and Line

       

The Charts Objects tab consists of chart objects’ color settings (lines, alerts, labels etc.)

On this tab you can set the colors of Trend, Horizontal, Vertical, Crosshair lines separately.
The Lines Labels setting allows to change label color for all lines shown on an active chart.

The Trade Objects tab consists of the color settings of trade objects represented on the chart: Open/Closed positions, Conditional/Entry Orders.

 

Fonts

 

In Fonts settings, you can modify the fonts of various labels on the chart:

Note: The Autochartist branch appears in the Chart Settings only if Autochartist plug-in is purchased in FXApps. This branch allows to customize the display of Autochartist patterns on chart.

On each tab you click the Reset to Default link to reset the corresponding settings to default.

[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”Windows & Commands” tab_id=”1687776733749-5-7″][dt_sc_toggle_group][dt_sc_toggle title=”Dealing Rates window”]

The Dealing Rates window displays current rates as provided by the dealing desk for each instrument. By default the arrangement of instruments in this window is the same as in the in the Instruments window.  However you can modify the list of instruments in several ways.

 

 

 

Rearranging: It is possible to change the arrangement of instruments in the Dealing Rates window by clicking and dragging the instruments. Position the mouse over the instrument name. When the cursor turns to , click and drag the instrument.

 

Removing: If you drag an instrument from the Dealing Rates window outside the window boundary and release the cursor, the instrument will be removed from the Dealing Rates window and opened as an Individual Dealing Rate window.

 

Cloning: You can  Ctrl+click on an instrument in the Dealing Rates window and drag it outside the window. This will open an Individual Dealing Rate window for that instrument without removing the instrument from the Dealing Rates window.

 

Resizing: When the Dealing Rates window is resized, the size of the individual dealing rates within the window will automatically adjust to the new size of the window. The number of columns in the Dealing Rates window is set in the window settings, and remains fixed regardless of the size of the window.

 

Note: The Bid/Ask buttons and the instrument header have a fixed height, but not a fixed width. The tick charts do not have a fixed size.

 

Right click menu

 

To access this menu, right-click on an instrument in the Dealing Rates window.

 

 

Menu commands:

Individual Dealing Rate window

 

Opens an Individual Dealing Rate window for the clicked instrument.

 

 or

 

Note: This window may have extra options, depending on the “One Click Trading” setting.

 

Open Chart

Opens the Charting tool. The instrument on which you clicked will be preselected.

Price Alert

Allows you to set a Price Alert for the selected instrument.

Read about Price Alerts

Instrument Catalog

Opens the Instrument Catalog.

Market Order

Allows you to place a market order.

Entry Stop, Entry Limit Order

Allows you to place Entry Stop and Entry Limit orders.

Entry OCO

This option allows you to create an OCO (One Cancels the Other) pair of Entry orders on this instrument.

Unsubscribe Instrument

This command will unsubscribe you from the selected instrument.

A confirmation pop-up will appear.

 

Note: You cannot unsubscribe from an instrument if you have any open positions/orders on that instrument.

 

If you have any open charts with the instrument selected, the charts will be automatically closed, after you confirm the following message:

 

 

After unsubscribing from an instrument, that instrument will no longer appear in any windows/charts. You will not receive a feed for that instrument.

 

Why unsubscribe?

The ability to unsubscribe from instruments allows you to customize your trading application to only show the instruments you are interested in trading. This way you can reduce interface clutter and in some cases improve performance.

Preferences

Settings

Allows you to change settings and modify window appearance.

 

 

This window allows you to hide/unhide different instruments, as well as sort them alphabetically, by default, or in custom order. (To sort instruments in custom order please set sort type to “Custom” and use the up and down arrows in the window interface to change the order of individual instruments).

To search for instruments,enter one or more characters of the instrument name in the Find Instrument box and click the up/down arrows to toggle through the results. Note that you can only search inside one box at a time. Click inside a box (Invisible Instruments or Visible Instruments) to select that box’s instruments for searching. The name of the selected box will be highlighted.

 

Font

Allows you to change the window’s font.

 

Refresh

Refreshes window content.

[/dt_sc_toggle][dt_sc_toggle title=”Dealing Rates Table window”]

The Dealing Rates Table window is a simplified replica of Dealing Rates window. It displays executable rates as provided by the dealing desk.

 

Pop-up menu 1

 

To access this menu, right-click on a column header in the Dealing Rates Table window.

 

 

Menu commands:

 

Pop-up menu 2

 

To access this menu, right-click on a record within the Dealing Rates Table window. Commands that are available in this menu are identical to those in the Dealing Rates window pop-up menu.

 

[/dt_sc_toggle][dt_sc_toggle title=”Individual Dealing Rate windows”]

 

Individual Dealing Rate windows can be opened by right-clicking on an instrument in the Dealing Rates window, Dealing Rates Table window or the Instruments window, and selecting Individual Dealing Rate Window.

 

Note: Multiple Individual Dealing Rate windows can be open simultaneously.

Note: This window may have extra options, depending on the “One Click Trading” setting.

Placing orders from the Individual Dealing Rate window

 

Clicking on the Buy/Ask or Sell/Bid rate will open a new Market Order window.

 

 

Right-clicking on the rates will open the following menu:

 

 

 

This menu provides the same functionality as the corresponding commands in the in the Dealing Rates window menu.

 

[/dt_sc_toggle][dt_sc_toggle title=”Orders window”]The Orders window displays information on all Market, Entry, Stop, Limit, and Margin Call orders. It also allows you to
change order rates, remove Market and non-triggered Entry Stop, Entry Limit, Stop and Limit orders, and set Stop/Limit
conditions on existing Entry Orders.

 

 

Orders Window Columns

 

Account

Account number

 

InstrT
Displays type of instrument (type to which instrument belongs). Appears depending on your system
configuration.

 

Owner

For trading and testing accounts: last name or login of the account money owner

For managed accounts: Trader’s last name or login

 

Order

Order number

 

Ticket

Ticket number for the existing open position. If there is no open position associated with the order, the
“Ticket” field will be empty. The ticket number is not the same as order number.

 

Ticket Rate

For orders to close an existing position, the Ticket Rate column shows the rate at which the parent position
was opened.

 

T

Type of order:

I –  (Initiating) Market order aimed at opening a position – white background (proximity cell is highlighted
in green)

J – Initiating order with insufficient usable margin to activate – grey background

C – Market order aimed at closing of a position – white background (proximity cell is highlighted in green)

 

M – Close order initiated by margin call event – coral background

 

  

F (Failed)- entry order with insufficient usable margin for execution: Entry order triggered, account did
not have sufficient usable margin to execute the Entry order

SF (Stop Failed) – stop order failed to execute as a result of Margin Call on account: Stop order triggered
when account was in Margin Call

LF – (Limit Failed)- limit order failed to execute as a result of Margin Call on account: Limit order
triggered when account was in Margin Call

R – Temporary state; rejected (re-priced) I order

T – Temporary state; rejected (re-priced) C order

 

All the above orders are displayed on grey background, like J orders.

 

S – Stop order

L – Limit order

ES – Entry Stop order

EL – Entry Limit order

 

Not triggered – white background

 

Not triggered but within imminent
distance – white background (proximity cell is highlighted in yellow)

 

Triggered – white background
(proximity cell is highlighted in green)

 

Instrument

Instrument name

 

Lot

Order amount measured in lots

 

Amt,K

Order amount in contract currency measured in thousands (Amt,K = number of lots \* contract size/1000)

 

B/S

B=Buy order; S=Sell order

 

Bid

Order rate

shown
in black if the order is to enter the market

shown
in red if the order is to exit the market

 

Ask

Order rate

shown
in black if the order is to enter the market

shown
in red if the order is to exit the market

 

 

Proximity

Shows how many pips the order rate is away from the market rate.

Note: Proximity column for I, C and triggered ES, EL, L, S orders
shows “pending”.

For M orders Proximity column is empty.

 

Tr.Stop (Trailing Stop)

Indicates the Trailing Stop Distance (in pips).

Trailing Stop works as follows: If the market price moves UP for a
Buy position/DOWN for a Sell position
, then the Trailing Stop moves with the market price,
following it at the pre-set distance. If the market price moves DOWN for a Buy position/UP for a Sell position, then the Trailing
Stop remains fixed and, if the market price reaches the Trailing Stop price, the order will be executed.

 

Predef. Stop

Shows the predefined Stop order for the entry order. This pre-set Stop will become an actual Stop Order
after the parent Entry Order is triggered and executed.

 

Predef. Limit

Shows the predefined limit for the entry order. This pre-set limit will become an actual Limit after the
parent Entry Order is triggered and executed.

 

OCO

If this order is part of an OCO pair, this field displays the number of the other order in the pair.

 

Created By

Shows which of the following was responsible for the creation of the order:

Order
was created manually by a trader. (The “Created By” column will be empty.)

Order
was created by a strategy. (The “Created By” column will display the name of the strategy).

 

Time

Time of order generation

 

Comment

Shows comments created by a trader on orders.

Shows comments created by a trader on open positions.

Trade ID
Shows Trade ID, an identifier assigned to every new position at the moment of position opening, in the
same way as is the ticket ID.

Note: You can select which columns appear in the Orders window.
Right-click on the header, select Columns, select Customize, and check the check boxes next to the columns that you want
to appear in the Orders window.

Pop-up menu 1

 

To access this menu, right-click on a column header in the Orders window.

Menu commands:

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible (checked)
and which are hidden (unchecked). You can also drag and drop individual columns to organize them in
custom order. Clicking the Default button will return the
columns to their default order. Click OK to save your
changes, or click Cancel to discard your changes and close
the dialog.

 

 

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in which
records in the window are sorted; this does NOT refer to the order in which the columns appear.)

 

Preferences

 

SettingsAllows you to change settings and modify window appearance.

See more details

Font

Allows you to change the window’s font.

See more details.

Color

Allows you to change the window’s background.

See more details.

Date/Time

Allows you to change the format in which date/time are shown in the window.

See more details.

 

Export Data to Excel

 

This command allows you to export Orders window data into an Excel spreadsheet.

You will be able to save the data into a folder of your choice as an XLS file:

Open the file in Excel to view the data:

 

Refresh

 

Refreshes window content.

 

Pop-up menu 2

 

To access this menu, right-click on a record within the Orders window.

Menu commands:
Modify Order

Enables you to change the amount and/or rate of an already placed Entry Order.

 

Right-click within the order record and select Modify Order. A
dialog box will appear:

 

 

Note: This option becomes unavailable on Entry orders that
are already triggered.

 

OCO Link

The OCO Link commands allow you to bind and unbind Entry orders into OCO pairs. You can set an OCO Link to
an existing Entry order, set an OCO Link to a new Entry order, or unbind the Entry order, if it is already
part of an OCO pair.

Set to Existing Order

This command is only available if you have selected an Entry order. It
allows you to bind this Entry order into an OCO
pair
with another, existing Entry order.

The dialog box will appear:

 

 

If there are existing OCO linkable orders, they will be listed in the drop-down box.

 

If the original order is already part of an OCO pair, the dialog box will contain a warning:

 

 

Remember, there are limitations on the types of orders that can be part of an OCO pair.

Set To New Order

This command is only available if you have selected an Entry order. It
allows you to create a new Entry order as an OCO to the Entry order you have selected.

The Entry Order dialog box will appear:

 

 

The “Create as OCO for order” check box will be checked. The order on which you clicked will be
automatically selected. All other orders which can be OCO pairs with the new order are also
available in the drop-down box.

 

In either case, if you try to bind a new Entry order to an existing Entry order that is already
part of an OCO pair, the system will display a warning:

 

Remember, there are limitations on the types of orders that can be part of an OCO pair.

Unbind OCO

This command is only available if you have selected an Entry order that is
already part of an OCO pair. It will unbind this order from its OCO partner order.

You will receive a confirmation pop-up:

 

 

Click OK to unbind the orders.

Remove Order

Allows you to remove market (I and C) and not-triggered conditional orders.
Right-click within the order record and select Remove Order. The
confirmation dialog box will appear.

 

 

Press OK. The order will be removed.

 

Note: To remove several orders at once, hold CTRL while
selecting them.

 

Stop/Limit

Allows you to set a stop and/or limit conditions on the entry order. Right-click
anywhere within the order record and choose Stop or Limit from the pull-down menu. The Stop/Limit dialog box will
appear:

 

 

Enter the rate and press OK. The Stop/Limit rate will appear in
the corresponding column of the order record.

 

In addition to the ‘Rate’ entry box, the Stop and Limit dialog boxes include the entry boxes: ‘Distance
in pips’ and ‘Projected PL’.

 

Distance
in pips: The difference in pips between the proposed stop order rate and the current market rate.

Projected
PL: The projected profit or loss on the position if the proposed stop/limit order is executed.

 

The three entry boxes complement each other. They are both informative and functional.

You can adjust order parameters by editing any of the three boxes. When the value of one box is changed,
the other two boxes adjust automatically. For example, if you have a profitable position, you may want
to close it if the profit declines to $500. You can simply input 500 into the Projected PL box. The Rate
and Distance in pips boxes will automatically adjust to the correct values to ensure that the stop order
is executed when the profit drops to $500.

 

Note: To place a regular Stop (not a Trailing Stop) on an
entry, make sure the “Set Trailing Stop Distance” check box is unchecked. Clicking the trailing stop
check box will gray out the other 3 boxes.

Trailing Stop

Allows you to set the Trailing Stop distance on Entry Orders.

(Trailing Stop works as follows: If the market price moves UP
for a Buy position/DOWN for a Sell position
, then the Trailing Stop moves with the market
price, following it at the pre-set distance. If the market price moves DOWN for a Buy position/UP for a Sell position, then the
Trailing Stop remains fixed and, if the market price reaches the Trailing Stop price, the order will be
executed.)

 

As soon as the corresponding Entry order is executed, the Trailing Stop order will be opened on the new
position. The initial Trailing Stop rate will be the “current” closing rate adjusted for trailing
distance.

To set the Trailing Stop distance, right-click anywhere within the order record and select Trailing Stop from the menu.

The Stop/Trailing Stop dialog box will appear:

 

 

Note: The “Set Trailing Stop Distance” check box should be
checked.

Preferences

Settings

Allows you to change settings and modify window appearance.

 

Font

Allows you to change the window’s font.

 

Color

Allows you to change the window’s background.

 

Date/Time

Allows you to change the format in which date/time are shown in the window.

 

Export Data to Excel

This command allows you to export Orders window data into an Excel spreadsheet.

You will be able to save the data into a folder of your choice as an XLS file:

Open the file in Excel to view the data:

Refresh
Refreshes window content.

[/dt_sc_toggle][dt_sc_toggle title=”Open Positions window”]The Open Positions window displays open positions on all accounts. It allows you to close and hedge positions (if hedging is allowed on your system), as well as create Stop and Limit conditional orders.

 

The total number of open positions and lots (for systems that show trades in lots) are shown in the window’s title bar (these figures do not include Testing accounts).

 

Open Positions window columns

Account

Account number

 

AcT

Account type

T – Trading

B – Banking

C – Clearing

G – The group account that represents a group of managed accounts

TST- Testing

 

InstrT
Displays type of instrument (type to which instrument belongs). Appears depending on your system configuration.

Owner

For trading and testing accounts: last name or login of the account money owner

For managed accounts: Trader’s last name or login

 

Ticket

Position number ID

 

Instrument

Instrument name

 

Lot(Amount)

Trade amount measured in lots(amounts)

 

Amt,K

Trade amount in contract currency measured in thousands (Amt,K = number of lots * contract size/1000)

 

B/S

B=Buy position; S=Sell position

 

Open

Opening rate of the position

 

Close

Current rate at which the position can be closed

 

BEP

Break-even point – minimal rate at which this position (if closed) will not carry any losses

 

Stop/Limit

Stop and Limit prices set by the trader on the position

 

Tr.Stop (Trailing Stop)

Indicates the Trailing Stop Distance (in pips).

Trailing Stop works as follows: If the market price moves UP for a Buy position/DOWN for a Sell position, then the Trailing Stop moves with the market price, following it at the pre-set distance. If the market price moves DOWN for a Buy position/UP for a Sell position, then the Trailing Stop remains fixed and, if the market price reaches the Trailing Stop price, the order will be executed.

 

Lot P/L

Profit or loss on a position (in pips) at the current moment. Is calculated for the position without taking into consideration number of lots.

Lot P/L is calculated according to the following formula:

Sell price – Buy price = Lot P/L

Example for 2 lots GBP/USD contract initially bought at 1.7505 then sold (closed) at 1.7540:
1.7540 (sell price) – 1.7505 (buy price) = .0035 positive pip difference = 35 pip profit

 

P/L

Gross profit or loss on a position (in pips) at the current moment

Calculating Direct Rate P/L (Profit/Loss)
P/L for direct rates is calculated as follows:
Formula: (Sell price – Buy price)* number of Lots = P/L

Example for 2 lots GBP/USD contract initially bought at 1.7505 then sold (closed) at 1.7540:
1.7540 (sell price) – 1.7505 (buy price) = .0035 positive pip difference = 35 pip profit * 2 lots = 70 pip profit

 

Calculating Indirect Rate P/L (Profit/Loss)
P/L for indirect rates is calculated as follows:
Formula: (Sell price – Buy price) * number of lots = P/L
Example for 1 lot USD/JPY contract initially bought at 120.50 then sold (closed) at 120.30:
120.30 (sell price) – 120.50 (buy price) = -.20 negative pip difference = 20 pip loss * 1 lot = 20 pip loss

Calculating Cross Rate P/L (Profit/Loss)
P/L for cross rates is calculated as follows:
Formula: (Sell price – Buy price)* number of lots = P/L
Example for 3 lots EUR/GBP contract initially sold at 0.6760 then bought (closed) at .6750:
0.6760 (sell price) – .6750 (buy price) = .0010 positive pip difference = 10 pip profit * 3 = 30 pip profit

 

Com

Total commission charged by the system at the opening of this position

 

Fee

Total amount of transaction fees charged by the system at the opening of this position

 

Roll

Total amount of premium applied to this position

 

Fut Roll Adj

Amount of future rollover adjustment (in system base currency).This column shows the total sum of the futures rollover adjustment applied during the trade’s lifetime.

Future rollover adjustment=(first price of new feed-last price of old feed)*contract size*lots#. The sign of the adjustment depends on whether the new price is higher or lower than the last price of the preceding time interval feed and on the position direction – Buy or Sell.

 

Opn/Close Charge

Trade charge is an amount in the system base currency set on account for every instrument, paid per trade at position’s Opening or Closing, or at both Opening and Closing.

Net P/L

Net profit or loss on a position (in base currency) at the current moment. Commissions and Overnight Rollover are taken into

account. Positive P/L values have a green background; negative P/L values have a red background; zero P/L values have a white background.

Net P/L = Gross P/L – Commission – Transaction Fee +/- Overnight Rollover Fee +/-Dividends – Trade Charge.

Time

Time the position was opened

 

Opened By

Shows which of the following was responsible for the opening of the position:

Position was opened manually by a trader. (The “Opened By’ column will be empty.)

Position was opened by a strategy. (The “Opened By column will display the name of the strategy.)

 

OM

Markup applied at the opening of the position

 

CM

Markup which will be applied at the closing of this position

 

PrOrd

The number of the order that initiated the opening of this position

 

GrpAcct

Number of the group account (only filled if the position was opened from the managed group)

 

Comment

Shows comments created by a trader on open positions.

Trade ID
Shows Trade ID, an identifier assigned to every new position at the moment of position opening, in the same way as is the ticket ID.

Unlike the Ticket ID, Trade ID does no change when position is partially closed.

 

Trade Open Time

Shows Date and Time when the corresponding trade has been initiated.

While the position’s (ticket’s) open time is updated every time a position is partially closed (since, in essence a new position (ticket) is created, with the new ticket ID), the trade open time remains unchanged, indicating the moment when the initial position (trade) originated.

I.e. Trade Open Time will differ from the position’s Open Time only if the position has been partially closed. Otherwise these two values will be equal.

 

Note: You can select which columns will appear in the Open Positions window. Right-click on the header, select Columns, select Customize, and check the check boxes next to the columns that you want to appear in the Open Positions window.

Pop-up menu 1

To access this menu, right-click on a column header in the Open Positions window.

 

Menu commands:

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible (checked) and which are hidden (unchecked). You can also drag and drop individual columns to organize them in custom order. Clicking the Default button will return the columns to their default order. Click OK to save your changes, or click Cancel to discard your changes and close the dialog.

 

 

.

 

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in which records in the window are sorted; this does NOT refer to the order in which the columns appear

Show All Managed Positions

 

Show all Managed Positions

Select this to display individual positions for ALL managed (group) positions. They will be shown underneath their respective parent group positions. The color of individual positions will be a couple of tones lighter than the color of  their parent managed position.

 

Note: If you don’t have any managed accounts, this option will be hidden

Preferences

Settings

Allows you to change settings and modify window appearance.

 

Font

Allows you to change the window’s font.

 

Color

Allows you to change the window’s background color.

 

Date/Time

Allows you to change format in which date/time are shown in the window.

Export Data to Excel

This command allows you to export Open Positions window data into an Excel spreadsheet.

You will be able to save the data into a folder of your choice as an XLS file:

Open the file in Excel to view the data:

Note: In the Open Positions window, certain display modes (‘Show Managed’, ‘Show All Managed’) may show overall group positions as well as their individual managed positions. If this data is exported into Excel as-is, then there will be repetition in the data. When attempting to export such data, the user will see the following message:

Click OK to proceed, or click Cancel, and unselect all ‘Show Managed’ options before exporting.

Refresh
Refreshes window content.

 

Pop-up menu 2

To access this menu, right-click on a record within the Open Positions window.

 

 

Menu commands:

Show Managed/Show All Managed Positions

Show Managed    

Click to display individual positions from a managed position. They will be shown under the parent group position. The color of individual positions will be a couple of tones lighter than the color of their parent managed position.

Note: This option is only available for positions opened from group (managed) accounts.

 

Show All Managed Positions

Click to display individual positions for ALL managed positions. They will be shown underneath their respective parent group positions. The color of individual positions will be a couple of tones lighter than color of their parent managed position.

 

Note: If you don’t have any managed accounts, these options will be hidden.

Stop/Limit

Click here to view a video tutorial on this feature.

 

Allows you to set a Stop or Limit order on an existing open position.

 

 

Enter the rate and press OK. The Stop/Limit rate will appear within the order record.

 

Note1: The allowed price range is shown to the right of the price field.

 

Note2: To place a regular Stop (not a Trailing Stop) order make sure the “Set Trailing Stop Distance” check box is unchecked.

  

In addition to the ‘Rate’ entry box, the Stop and Limit dialog boxes include the entry boxes: ‘Distance in pips’ and ‘Projected PL’.

 

Distance in pips: The difference in pips between the proposed stop order rate and the current market rate.

Projected PL: The projected profit or loss on the position if the proposed stop/limit order is executed.

 

The three entry boxes complement each other. They are both informative and functional.

You can adjust order parameters by editing any of the three boxes. When the value of one box is changed, the other two boxes adjust automatically. For example, if you have a profitable position, you may want to close it if the profit declines to $500. You can simply input 500 into the Projected PL box. The Rate and Distance in pips boxes will automatically adjust to the correct values to ensure that the stop order is executed when the profit drops to $500.

 

Note: For instruments whose pip value is greater than 50 cents, Projected PL is shown to the nearest dollar. For instruments whose pip value is less than 50 cents, Projected PL is shown to the nearest cent.

Note: Clicking the trailing stop check box will gray out the other 3 boxes.

Trailing Stop

Allows you to set Trailing Stop orders.

Trailing Stop works as follows: If the market price moves UP for a Buy position/DOWN for a Sell position, then the Trailing Stop moves with the market price, following it at the pre-set distance. If the market price moves DOWN for a Buy position/UP for a Sell position, then the Trailing Stop remains fixed and, if the market price reaches the Trailing Stop price, the order will be executed.

 

 

To set the Trailing Stop distance check the “Set Trailing Stop Distance” check box in the “Stop Order” dialog box and enter the distance value in pips. Press OK. The Trailing Stop Distance value will appear in the “Tr.Stop” field of the position record and a Trailing Stop order will appear in the Orders window.

 

Note: The allowed price range is shown to the right of the price field

 

Trailing Stop Example (click to expand)

In this example, a BUY position is opened. A Trailing Stop is set with a trailing distance of 20 pips. (Figure 1)

Market price = 1.0045

Stop price = 1.0025

 

Figure 1

 

As the market price moves up, the Stop order will follow the market price at a distance of 20 pips. In the image below, the market price has moved up to 1.0054. The Stop order price is now 1.0034. (Figure 2)

 

Figure 2

 

If the market price begins to move down, the Trailing Stop order price remains fixed. In the image below, the market price has gone down to 1.0042. The trailing stop order price has remained at 1.0034. (Figure 3)

 

Figure 3

 

At this point, if the market continues to descend, the trailing stop order will be triggered when the market reaches 1.0034.

If, on the other hand, the market begins to rise, the trailing stop will remain at 1.0034 UNTIL the market price passes 1.0054 (20 pips away). At this point, if the market continues to rise, the trailing stop order price will start to rise as well, trailing the market price by 20 pips.

 

Removing non-triggered Stops, Limits, and Trailing Stops

There are two ways to remove non-triggered Stop, Limit, or Trailing Stop orders.

1.Click on the rate (“Stop” or “Limit”) field within the position record. The Stop or Limit dialog box will appear. Click Remove.

-OR-

2.Right-click on the position record and choose Stop, Limit, or Trailing Stop from the pop-up menu. The Stop or Limit dialog box will appear. Click Remove.

Close Position

Allows you to fully or partially close positions.

 

 

1.Enter the amount you wish to close (measured in lots) into the “Amount” field.

Note: By default you are offered to fully close the position.

2.Click OK to confirm the order. The position will be closed and the account information will be updated.

Note 1: You may have to wait for confirmation of the order by a Dealer. In this case the order will appear in the Orders window. Otherwise the order will be verified and either confirmed or rejected by the system.

Note 2: You can simultaneously close several positions using multi-select (holding CTRL while selecting individual positions). You can also close all open positions by right-clicking on the position record and selecting Select All from the pop-up menu.

 

In both cases, this confirmation dialog box will appear:

 

 

Click OK to close the selected positions.

 

Note, that the system will not allow you to close the position which already has existing C order waiting for the dealer’s confirmation.

If you select a position with a C order created earlier, you will receive the following message: “There is an existing C order [order number] to close [order amount] in ticket [ticket number]“.

A new C order will not be created

If you select several positions to close, the C orders will be created only for those positions which do not have existing C orders. The system will check your positions one by one, and if it finds a position with a C order created earlier, it sends the message described above, and stops checking the remaining positions.

Partial Close

When a position is partially closed, its original opening price and original parent order number does not change. Its ticket number and closing time is changed.  Opening Time of the remaining part equals to the closing time of the amount for which position was closed.

Example:  

8 lot position to Buy EURGBP at 85.19 was open 09/17/2010 at 1:27:29 PM. Ticket number 47822. Parent Order number 47821.

09/20/2010 at 09:50:48 AM this position was partially closed for 2 lots at 85.20.

As a result

In the Open Positions window, remaining part of the position (6 lots) has different ticket number 47941, parent order number (47821) and opening price (85.19) did not change. Opening time equals to the closing time of the amount for which position was closed 09/20/2010 at 09:50:48 AM.

In the Closed Positions window, 2 lots for which position was closed have initiate ticket number 47822. Opening time equals to 09/17/2010 at 1:27:29 PM, Closing time equals to 09/20/2010 at 09:50:48 AM.

 

Hedge Position

Allows you to hedge an existing unhedged position. “Hedging” refers to the opening of a new position that offsets an existing position on the same instrument. (For example, to hedge a 5 lot Buy position on EURUSD, you would open a 5 lot Sell position on EURUSD.) Right-click on the position record and select Hedge position. (This option is only available if hedging is allowed on your system.)

The “Hedge Position” dialog box will appear:

 

 

Enter the desired number of lots into the “Amount” field.

 

Note: By default, you are offered to fully hedge the position.

 

Note: No additional margin is required to hedge a position.

 

Press OK to confirm the hedge.

 

Note: You can hedge an existing unhedged position on an account with insufficient usable margin. You cannot, however, open a new position on an account with insufficient usable margin.

Close with hedge

Allows you to completely or partially close a hedged position together with its corresponding hedging position(s). “Hedging” refers to the opening of a new position(s) that offsets an existing position(s) on the same instrument. (This option is only available if hedging is allowed on your system.)

 

Note: You may have to wait for confirmation of the order by a dealer. In this case one order to close all positions will appear in the Orders window. Otherwise, the order will be verified and either confirmed or rejected by the system.

 

Reverse Position

Allows closing selected position(s) and opening new position(s) in the opposite direction for the same number of lots.

For example, there are two open positions:

Select both positions > right-click > select Reverse Position – existing positions will be closed and two new positions will open:

Lock In Profit

Allows closing selected positions and opening new positions in the same direction for the same number of lots

For example, there are two open positions:

Select both positions > right-click > select Lock In Profit – existing positions will be closed and two new positions will open:

Export Data to Excel

This command allows you to export Open Positions window data into an Excel spreadsheet.

You will be able to save the data into a folder of your choice as an XLS file:

Open the file in Excel to view the data:

Note: In the Open Positions window, certain display modes (‘Show Managed’, ‘Show All Managed’) may show overall group positions as well as their individual managed positions. If this data is exported into Excel as-is, then there will be repetition in the data. When attempting to export such data, the user will see the following message:

Click OK to proceed, or click Cancel, and unselect all ‘Show Managed’ options before exporting.

Preferences

Settings

Allows you to change settings and modify window appearance.

For more read :- Settings

 

Font

Allows you to change the window’s font.

For more read :- Appendices > Font

 

Color

Allows you to change the window’s background color.

For more read :- Appendices > Color

 

Date/Time

Allows you to change format in which date/time are shown in the window.

For more read :- Appendices > Date/Time

Refresh
Refreshes window content.
Additional commands

Additional commands available in the Open Positions window:

Change Rate of Existing Order

Click on the “Stop” or “Limit” field of a position on which a Stop, Trailing Stop, or Limit already exists.

 

 

Change the order rate as desired.

Close Position

You can also close a position by clicking on its “Close” field.

If you click and drag across the “Close” fields of several positions, all those positions will be closed.

 

Note: Confirmation is required to perform a multiple closing.

 

 

Click OK to close all selected positions.

 

[/dt_sc_toggle][dt_sc_toggle title=”Instruments window”]

The Instruments window displays information about all the instruments traded on the system and
provides access to the instruments’ settings and trading functionality.

 

 

Instruments window columns

Instrument

Instrument name

 

Bid

Dealer’s Bid rate

 

Ask

Dealer’s Ask rate

 

High/Low

Dealer’s highest and lowest rates for the current trading day (High Bid/Low Ask)

 

 

Bid/Ask Volume

The bid/ask volume is received with each tick and contains two values: a volume for the bid rate and a
volume for
the ask rate (both in millions). It indicates the maximum value for which a market order can be placed at
the
displayed rate.

 

Time

Time of the last update

 

NetChg

Net change in the Bid rate (in pips) since the opening of the trading day

 

% Change

Tracks the rate change for the instrument in % throughout the trading day.

% Change is calculated as follows:

((Current bid price) – (Bid price at opening of trading day)) / (Bid price at opening of trading day)

The resulting figure is expressed as a percent value, rounded to 4 digits, preceded by a plus or minus sign.

 

Pip Value

The value of one pip per one contract in system base currency at the current moment

 

Trade Step

Trade Step value – the smallest possible
trade
increment for trading on individual and group accounts.

 

Ovnt. Roll. Sell %, Ovnt. Roll. Buy %

Overnight rollover rates in base currency per one night per one lot. Amount paid to/charged from all
positions that
remained open at the end of the trading day and were rolled over to the next trading day.

 

MaxVol

The Maximum Order Volume setting for this instrument. This is the maximum amount for a single trade on this
instrument.

 

Fut Roll Date

For Futures instruments, the expiration date for Futures. Will be displayed in the operation system’s
format, set in
the Control Panel.

 

NT Interval

Non trading time interval in the format of HH:MM:SS – HH:MM:SS

 

ImmD

Imminent Distance: Imminent Distance (in pips) per particular instrument.

Trader can set the Imminent Distance for particular instrument by clicking on the Imminent Distance field in
the
instrument record

 

 

Default: the imminent distance set in the Orders window is the default imminent distance for every
individual
instrument

 

Pop-up menu 1

To access this window, right-click on a column header in the Instruments window

 

 

Menu commands:

Find Instrument

Allows you to search for instruments in the window.

Enter one or more characters in the instrument name and click Next to
toggle through the results. Instruments meeting the search characteristics will be
highlighted.

Instrument Catalog
This will open the Instrument Catalog, where you can subscribe to
and unsubscribe from different trading instruments.
For more read go to :- Trading Guide > Subscribe to Trading Instruments
Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible
(checked) and which are hidden (unchecked). You can also drag and drop individual columns to
organize them in custom order. Clicking the Default
button will return the columns to their default order. Click OK to save your changes, or click Cancel to discard your changes and close the dialog.

 

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in
which records in the window are sorted; this does NOT refer to the order in which the columns
appear.)

Preferences

Settings

Allows you to change settings and modify window appearance.

  

This window allows you to hide/unhide different instruments, as well as sort them
alphabetically, by default, or in custom order. To sort instruments in custom order, set the
sort type to “Custom” and use the up and down arrows in the window interface to change the order
of individual instruments.

To search for instruments,enter one or more characters of the instrument name in the Find
Instrument box and click the up/down arrows to toggle through the results. Note that you can
only search inside one box at a time. Click inside a box (Invisible Instruments or Visible
Instruments) to select that box’s instruments for searching. The name of the selected box will
be highlighted.

 

Rate updates

This section allows you to customize the price update indication in the Instruments window

Highlight Instrument: check this checkbox to set the
highlighting of the instrument name at the moment when the rate update arrives. This setting
gives you an additional idea about how often the prices come in.

Regardless of whether it was
the Bid or Ask rate that updated, the instrument name will be highlighted with a specified
background color (Highlight color box), and will
stay lit for a specified period of time  (Highlight
duration
box). After that it returns to a normal background.

By default highlight function
is disabled

 

Rate fonts: this section allows to specify the font
color of updated Bid and Ask rates in the Instruments window

 You can specify
three colors:

Rate
up color

Rate
down color

Rate
unchanged color

Depending on the new rate as
compared to its previous value, its font color will change in accordance with these
parameters. Bid and Ask rates change colors independently as their updates arrive.

Font

Allows you to change the window’s font.

See more details on :- Appendices > Font

 

Color

Allows you to change window’s background color.

See more details on :- Appendices > Color

 

Date/Time

Allows you to change format in which date/time are shown in the window.

See more details on :- Appendices > Date/Time

Refresh

Refreshes window content.

Pop-up menu 2

To access this menu, right-click on the “Sell” or “Buy” field of a record within the Instruments window.

 

 

Menu commands:

Find Instrument

Allows you to search for instruments in the window.

Enter one or more characters in the instrument name and click Next to toggle through the results. Instruments meeting the search characteristics will be highlighted.

Individual Dealing Rate Window

Opens an Individual Dealing Rate window for the clicked instrument.

 

or

 

Note: The appearance of this window depends on the “One Click Trading” setting.

Open Chart

See all details on :- Chart . The instrument on which you clicked will be preselected.

 

Price Alert
Allows you to set a Price Alert for the selected instrumen.
Go to:- Trading Guide > Price Alerts.
Instrument Catalog

This will open the Instrument Catalog, where you can subscribe to and unsubscribe from different trading instruments.

Go to :- Windows & Commands > Dealing Rates window > Right-click menu > Individual Dealing Rate

Market Order

Allows you to place a market order.

Go to :- Trading Guide > Open a New Position (Market Order)

Entry Stop/Entry Limit

Allows you to place Entry Stop and Entry Limit orders.

Go to:- Trading Guide > Entry Orders

Entry OCO

This option allows you to create an OCO (One Cancels the Other) pair of Entry orders on this instrument.

Go To:- Trading Guide > OCO Orders > Creating OCO pair from scratch

 

Preferences

Settings

Allows you to change settings and modify window appearance.

  

This window allows you to hide/unhide different instruments, as well as sort them alphabetically, by default, or in custom order. To sort instruments in custom order, set the sort type to “Custom” and use the up and down arrows in the window interface to change the order of individual instruments.

To search for instruments,enter one or more characters of the instrument name in the Find Instrument box and click the up/down arrows to toggle through the results. Note that you can only search inside one box at a time. Click inside a box (Invisible Instruments or Visible Instruments) to select that box’s instruments for searching. The name of the selected box will be highlighted.

 

Rate updates

This section allows you to customize the price update indication in the Instruments window

Highlight Instrument: check this checkbox to set the highlighting of the instrument name at the moment when the rate update arrives. This setting gives you an additional idea about how often the prices come in.

Regardless of whether it was the Bid or Ask rate that updated, the instrument name will be highlighted with a specified background color (Highlight color box), and will stay lit for a specified period of time  (Highlight duration box). After that it returns to a normal background.

By default highlight function is disabled

 

Rate fonts: this section allows to specify the font color of updated Bid and Ask rates in the Instruments window

 You can specify three colors:

Rate up color

Rate down color

Rate unchanged color

Depending on the new rate as compared to its previous value, its font color will change in accordance with these parameters. Bid and Ask rates change colors independently as their updates arrive.

Font

Allows you to change the window’s font.

For more details go to:- Appendices > Font

 

Color

Allows you to change window’s background color.

For more details go to:- Appendices > Color

 

Date/Time

Allows you to change format in which date/time are shown in the window.

For more details go to:- Appendices > Date/Time

Refresh

Refreshes window content.

 

[/dt_sc_toggle][dt_sc_toggle title=”Account Information window”]The Account Information window displays information about the following types of accounts:

Trading Accounts (T,white records) – regular trading accounts

Group Accounts (G, blue records) – a virtual account representing a group of trading accounts that trade as a single account; the ID number of group accounts account always starts with m.

 

 

Account Information window columns

Account

Account number

 

AcT

Account type

T – Trading

G – The group account that represents a group of managed accounts

TST- Testing

 

InstrT
Displays type of instruments allowed for trading on account. Appears depending on your system configuration.

Owner

For trading and testing accounts: last name or login of the account money owner

For managed accounts: Trader’s last name or login

 

GrpAcct

ID number of the virtual group account (only filled if account is a part of virtual group (m) account)

 

Balance

Account balance

 

Equity

Account equity after the transaction. Equity = Balance +/- Floating P/L from Open Positions.

 

UsdMr

Summarized used margin of all positions open an account at the current moment.

 

UsblMr

Usable margin

 

EqtyLevel%

The value in this column is the percentage of equity to used margin. More specifically, it is the value in the Equity column divided by the value in the UsdMrgn column, and expressed as a percentage.

For example, if Equity = 1000 and Used Margin = 500, then the value of EqtyLevel% will be 1000/500 = 2 = 200(%)

 

MC

Margin Call – indicates if a margin call is issued on the account. Possible values: N – “no”, Y –  “yes”, or (1, 2, 3) representing the level of the margin call

 

Mrgn Utiliz

Margin Utilization Indicator shows how much margin is currently utilized on an account. It displays the used margin as a percent of total equity on the account.

In the above image, the Margin Utilization indicator is at 34%. This means that the account is using 34% of its available margin.

 

Distance to ME

Distance to Minimum equity displays the difference between accounts’ current equity and Minimum equity set in ActAdmin.

 

SM (Short Margin)

Indicates if Short Margin status issued on account (balance < used margin). If this condition is met, the system sends a message to trader and closes the necessary number of the positions according to the FIFO (first in, first out) order on that account after the beginning of the next business day.

 

OP(Open Positions)

Number of open lots on this account

 

Com

Total commission charged from all of this account’s currently open positions

 

Fee

Total amount of transaction fees charged from all of this account’s currently open positions

Roll

Total amount of interest applied to this position

Fut Roll Adj

Amount of future rollover adjustment (in system base currency).This column shows the total sum of the futures rollover adjustment applied during the trade’s lifetime.

Future rollover adjustment=(first price of new feed-last price of old feed)*contract size*lots#. The sign of the adjustment depends on whether the new price is higher or lower than the last price of the preceding time interval feed and on the position direction – Buy or Sell.

Opn Charge (Open Charge)

Shows trade charge paid per trade at position’s Opening.

Trade charge is an amount in the system base currency set on account for every instrument, paid per trade at position’s Opening or Closing, or at both Opening and Closing.

 

 

Net$P/L

Summarized net profit/loss of all positions open on account at the current moment.

Net P/L = Gross P/L – Commission – Transaction Fee +/- Overnight Rollover Fee +/-Dividends – Trade Charge.

 

Cl. Charge (Close Charge)

Shows trade charge paid per trade at position’s Closing.

Trade charge is an amount in the system base currency set on account for every instrument, paid per trade at position’s Opening or Closing, or at both Opening and Closing.

 

DA

(Default Amount): The default number of lots for new positions on this account

 

Group

Group name. You can create a custom group name for selected accounts in order to keep them as a group when sorting  accounts in this window (click on the “Group” field of the desired account)

Note: The Account Information window has a default sorting for sub-types of accounts that will not be changed any user-selected sorting. For example, group accounts will always appear above trading accounts. Changing the window sorting by clicking on any of the column headers will change the sorting inside each sub-type of account, but will never alter the underlying order of account sub-types.

 

OM

Opening markup, measured in pips

 

CM

Closing markup, measured in pips

 

A

Account Status – if “N” then the account is currently in inactive mode – no trades can be placed or closed for this account.

Pop-up menu 1

To access this menu, right-click on a column header in the Account Information window.

 

Menu commands:

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible (checked) and which are hidden (unchecked). You can also drag and drop individual columns to organize them in custom order. Clicking the Default button will return the columns to their default order. Click OK to save your changes, or click Cancel to discard your changes and close the dialog.

  

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in which records in the window are sorted; this does NOT refer to the order in which the columns appear.)

Select All Accounts

Allows you to highlight all accounts in the window with one click; right-click on the header and choose Select All Accounts.

 

Lock All Accounts

If you have more than 1 account in the Account Information window, and you have selected all the accounts, the Lock All Accounts option becomes available. This feature is useful for traders who often trade from 2 or more accounts simultaneously. With this feature, your accounts will remain selected indefinitely, until you manually unlock the accounts.

 

While all the accounts are selected, right-click on an account one more time. The Select All Accounts command has been replaced by a new command: Lock All Accounts. Click Lock All Accounts.

 

 

The accounts are now ‘locked’ in the highlighted state. Clicking within the Account Information window will not deselect any accounts. You can shut down the application, and when you start it up again, the accounts will still be selected.

 

Unlocking All Accounts

To unlock the accounts, right-click on an account. The command Lock All Accounts has been replaced by Unlock All Accounts. Click Unlock All Accounts.

 

 

The accounts are still selected, but they are now unlocked. Click anywhere within the Account Information window to deselect the accounts.

 

Traders with one account

The Lock All Accounts feature is only available if there are 2 or more accounts present in the Account Information window. If there is only one account in the Account Information window, the command is absent from the right-click menu:

 

Show All Managed

Click to display the individual accounts for ALL managed accounts. They will be shown underneath their respective parent group accounts. The color of the individual accounts will be a couple of tones lighter than color of their parent managed account.

 

Note: If you don’t have any managed accounts, this option will be hidden.

Organize Managed Accounts

The Organize Managed Accounts window is available if you have 2 or more accounts. The window allows you to create and manage group accounts.

 

The window contains two lists of accounts. You can select a group account by choosing the appropriate account number from the drop down box at the top of the list. The list under the drop down box contains all of the accounts that are a part of the group specified in the drop down box. You can move accounts between the two lists by selecting the account or several accounts and using the buttons > and <.  You can move accounts from the Non-Managed pool to a group account, from a group account to the Non-Managed pool, or from one group account to another group account.

You can create a new group account by clicking the button “Create New Group”. The new group is created empty. You cannot create a new group if you already have an empty group.

Accounts cannot be moved in or out of a managed group if there are certain open orders or positions on the group or the account.

Preferences

Font

Allows you to change the window’s font.

See more details on this page :- Appendices > Font

 

Color

Allows you to change the window’s background.

See more details on this page :- Appendices > Color

Refresh
Refreshes window content.
Pop-up menu 2

To access this menu, right-click on a record within the Account Information window.

 

 

Menu commands:

Select All Accounts

Allows you to highlight all accounts in the window with one click; right click on a record and choose Select All Accounts.

 

Lock All Accounts

If you have more than 1 account in the Account Information window, and you have selected all the accounts, the Lock All Accounts option becomes available. This feature is useful for traders who often trade from 2 or more accounts simultaneously. With this feature, your accounts will remain selected indefinitely, until you manually unlock the accounts.

 

While all the accounts are selected, right-click on an account one more time. The Select All Accounts command has been replaced by a new command: Lock All Accounts. Click Lock All Accounts.

 

 

The accounts are now ‘locked’ in the highlighted state. Clicking within the Account Information window will not deselect any accounts. You can shut down the application, and when you start it up again, the accounts will still be selected.

 

Unlocking All Accounts

To unlock the accounts, right-click on an account. The command Lock All Accounts has been replaced by Unlock All Accounts. Click Unlock All Accounts.

 

 

The accounts are still selected, but they are now unlocked. Click anywhere within the Account Information window to deselect the accounts.

 

Traders with one account

The Lock All Accounts feature is only available if there are 2 or more accounts present in the Account Information window. If there is only one account in the Account Information window, the command is absent from the right-click menu:

Closed Positions
Displays a summary of closed positions for the selected account.
MC Rates

MC Rates  

Shows the rates at which a margin call would be triggered on the account. The percentages represent the ratio of equity to used margin. Only instruments on which open positions exist will be shown.

 

 

Note: If an account has open positions in more than one currency, then the MC rate for every given currency is calculated with the assumption that all other currency rates are “frozen” (or the positions in all other currencies are 100% hedged)

Interest Rates
Shows the interest rate settings for this particular account.
Show Managed

Click to display individual accounts for a managed account. They will be shown underneath their respective parent group account. The color for individual accounts will be a couple of tones lighter than color of parent managed account.

 

Note: If you don’t have any managed accounts, this option will be hidden.

Show All Managed

Click to display individual accounts for ALL managed accounts. They will be shown underneath their respective parent group accounts. The color for individual accounts will be a couple of tones lighter than color of parent managed account.

 

Note: If you don’t have any managed accounts, this option will be hidden.

Organize Managed Accounts

The Organize Managed Accounts window is available if you have 2 or more accounts. The window allows you to create and manage group accounts.

 

The window contains two lists of accounts. You can select a group account by choosing the appropriate account number from the drop down box at the top of the list. The list under the drop down box contains all of the accounts that are a part of the group specified in the drop down box. You can move accounts between the two lists by selecting the account or several accounts and using the buttons > and <.  You can move accounts from the Non-Managed pool to a group account, from a group account to the Non-Managed pool, or from one group account to another group account.

You can create a new group account by clicking the button “Create New Group”. The new group is created empty. You cannot create a new group if you already have an empty group.

 

You can add new accounts to the group or remove accounts from the group even if there are open positions/orders on account/group.

Please note:

1. Newly added account will NOT participate in the existing group positions/orders.

2. When removing account from the group, existing group positions and orders will remain open. But open position on this account will no longer be part of the group position.

Existing group order will be reduced by the amount allotted to this account. Existing order  on this account that was a part of the group order will be removed.

 

Preferences

Font

Allows you to change the window’s font.

See more details on this page :- Appendices > Font

 

Color

Allows you to change the window’s background.

See more details on this page :- Appendices > Color

Refresh
Refreshes window content.

 

Additional commands

Additional commands available in the Account Information window.

Set Default Trade Amount

The Default Amount (DA) is the default number of lots for a new position. This is the number that initially appears in the Amount field when an order is created.

 

You can set the default amount (DA) for specific accounts in the Account Information window. Depending on your system settings, you can set DA in:

Trade Steps: DA as coefficient of Trade Step will be used;

%: DA in percent of maximum order amount will be used.

 

DA in Trade Steps suggests that default amount can be different on each instrument, depending on the Trade Step value set on the instrument.

 

Example for system in lots: DA = 2 Trade Steps; Trade Step on EURUSD = 0.1 lot, Trade Step on USDJPY = 5 lots

When opening a position on EURUSD, you will be offered to open 0.2 lot

When opening a position on USDJPY, you will be offered to open 10 lots

Example for system in amounts: DA = 2 Trade Steps; Trade Step on EURUSD = 1,000, Trade Step on USDJPY = 50,000

When opening a position on EURUSD, you will be offered to open 2,000

When opening a position on USDJPY, you will be offered to open 100,000

% DA is calculated as percent of maximum amount that can be opened on account rounded to the nearest full Trade Step value.

Example for system in lots: DA = 10%; Trade Step = 0.5 lot; Max amount that can be opened from account = 23 lots

Suggested amount on account = 23* 0.1 = 2.3 -> rounded to Trade Step = 2.5 lots

Example for system in amounts: DA = 10%; Trade Step = 1,000; Max amount that can be opened from account = 381,000

Suggested amount on account = 381,000 * 0.1 = 38,100 -> rounded to Trade Step = 38,000

 

Setting DA in Trade Steps

In the Account Information window, left-click the DA field within the account record. The Default Amount dialog box will appear:

 

 

Setting DA in % of Maximum Order Amount

 

 

 

Switching between DA (Trade Steps) and DA as % of Usable Margin  

Note: This option can be absent if system rules are set accordingly.

Follow these steps to set the default amount in Trade Steps or in % of maximum order volume for an individual account:

Click the corresponding DA column’s cell in the Account Information window.

Select the DA (Trade Steps) or DA as % of usable margin radio button.

Enter the desired value of DA.

For managed accounts

 

You can set DA in % if proportional (or proportional: one lot minimum) mode is used and at least one of the individual accounts belonging to the group has DA set in % of maximum order amount. To set DA as % of maximum order amount for a managed account, follow these steps:

 

• Click the corresponding DA column’s cell in the Account Information window

 

• Enter the desired value of DA.

 

Note: If managed account’s allocation mode is set to Fixed DA, the DA column for the managed account is not clickable.

Orders from individual accounts

Calculation of DA in % of maximum order amount depends on whether there are open positions on the instrument on which a user is going to create a market order. Below you can see  the description of three possible cases which differ by calculation of DA as % of maximum order amount.

Case 1

Imagine that an individual account has DA set as X % of maximum order amount. A user creates a market order from this account. Default amount of this order equals X % of maximum order amount which can be bought / sold for account’s usable margin at the moment of order creation.

Note: Let’s assume that in the examples listed below commission, transaction fee, open trade charge are set to 0 and spread is 0, open markup is set to 0 unless it is stated otherwise.

Example A. An account has no open positions. Balance = Usable Margin = 10 000. Margin Requirement on EURUSD is 1 000, Margin Requirement on GBPUSD is 1500. DA in % is set to 30%. When a trader opens the EURUSD order creation dialog window, 3 lots (3*Contract Size for system in amount) will be displayed in the Amount field. Let’s examine how the  system gets such value:

1)First, it is necessary to calculate maximum order amount: 10 000 of Usable Margin devide by 1000 (Margin Requirement), that is 10 lots (contracts).

2)Afterwards the system calculates 30% of this value: 10*0.3. The result is 3 lots/contracts.

If a trader opens the GBPUSD market order creation dialog window, 2 lots (2*Contract Size for system in amount) will be displayed in the Amount field. Let’s examine how system gets such value:

1)First, it is necessary to calculate maximum order amount: 10 000 of Usable Margin devide by 1500 (Margin Requirement), that equals 6.66, in other words not more than 6 lots can be bought/sold.

2)Afterwards the system calculates 30% of this value: 6*0.3. The result is 2 lots/contracts.

Example B. Let’s suppose that an account has already open positions on some instruments other than EURUSD and GBPUSD. Account’s Balance = 10 000, Used Margin is 3 000. Usable Margin = 7 000. When a trader opens the EURUSD market order creation dialog window, 2 lots (2*Contract Size for system in amount) will be displayed in the Amount field. Let’s examine the how system gets such value:

1)First, it is necessary to calculate maximum order amount: 7 000 of Usable Margin devide by 1000 (Margin Requirement), that is 7.

2) Afterwards the system calculates 30% of this value: 7*0.3=2.1. The result is rounded to 2 lots/contracts.

When a trader opens the GBPUSD market order creation dialog window, 1 lot (1*Contract Size for system in amount) will be displayed in the Amount field. Let’s examine how system gets such value:

1)First, it is necessary to calculate maximum order amount: 7 000 of Usable Margin devide by 1500 (Margin Requirement), that is 4.66.

2)Afterwards the system calculates 30% of this value: 4.66*0.3 = 1.4. The result is rounded to 1 lot/contract.

Case 2

Imagine that an individual account has open positions on an instrument when hedging is disabled on the system (it means that opening of a new position will close or partially close any existing positions in the opposite direction).The account has DA set as X % of maximum order amount. User creates an order to open position in opposite trade direction on the same instrument, then

DA will be calculated as % of maximum order amount which can be bought / sold for [Usable margin + 2*Used Margin of open positions on this instrument].

For example: Account’s Balance = 10 000, Margin Requirement = 1000. DA = 50 %. A Sell position on EURUSD is opened on 6 lots. Used Margin = 6000, Usable Margin = 4000. In the order creation dialog for Buy position, the Amount field will display 8 lots by default. Let’s examine how the system gets such value:

1)Opening 6 lots of Buy trade would cause the Sell position to close,  which would lead to the increase of Usable Margin 4000 to 10 000. 10 000 of Usable Margin allows to open 10 lots or contracts (with Margin Requirement = 1000). Altogether the maximum order amount = 6+10 = 16 lots or contracts.

2) Afterwards the system calculates 50% of this value: 16*0.5 = 8.

In the order creation dialog for Sell position, the Amount field will display 2 lots by default. The system gets such value the same way as described in Case 1.

Case 3

Let’s now examine the same situation as in case 2 but when hedging is enabled on the system (it means that opening of a new position does not close or partially close any existing positions in the opposite direction).

DA will be calculated as % of maximum order amount which can be bought / sold for [Usable margin + Used Margin of open positions on this instrument].

For example: Account’s Balance = 10 000, Margin Requirement = 1000. DA = 50 %. Sell position on EURUSD is opened on 6 lots. Used Margin = 6000, Usable Margin = 4000. In the order creation for Buy position, the Amount field will display 5 lots by default. Let’s examine how the system gets such value:

1)Opening 6 lots of Buy trade would leave Usable Margin unchanged  as such position hedges the open Sell position. Opening extra lots would use Usable Margin = 4000. So after opening 6 Buy lots, you can still open 4 000 / 1000 = 4 lots or contracts (Usable Margin divide by MR). So altogether maximum order amount is 6+4 = 10 lots.

2)Afterwards the system calculates 50% of this value: 10*0.5 = 5.

In the order creation dialog for the Sell position, the Amount field will display 2 lots by default. System gets such value the same way as described in Case 1.

Note: If a user creates an order from an account with DA set as % of maximum order amount and the resulting amount is less than 1 lot but the account’s balance allows to open 1 lot position, the order amount is approximated to 1 lot. For example, account’s Usable Margin is 6000. Margin Requirement is 1000. DA = 10%. No open positions. Maximum order amount is 6 lots (6000/1000). DA = 6*10% = 0.6. But the system approximates it to one lot as account has enough money to open a 1 lot position.

Commission, transaction fee, open trade charge, spread and open markup in calculation of DA in % of maximum order amount

Commission, transaction fee, open trade charge, spread and open markup directly effect the calculation of DA in % of maximum order amount as they influence the maximum order amount. Let’s review it on the following example. An account has no open positions. Balance = Usable Margin = 50. Margin Requirement on EURUSD is 10, contract size is 1 000, point size = 0.0001. DA in % is set to 50%. Commission is set to $2 per lot. Spread is 3 pips, open markup is 1 pip.

If commissions, spread and open markup were 0, then it would be possible to open 5 lots/contracts: 50 / 10 (Usable Margin divide by Margin Req). 5 lots would cause $10 of commisons, PL equal to (3spread+1open markup) * 0.0001(point size) * 1000(contract size) * 5(lots)= $2. Together with PL it would cause the decrease of Equity on $12 from $50 to $38. But it’s necessary to have $50 of margin to maintain position on 5 lots. That’s why DA in % won’t be calculated from $50 as it is not maximum order volume.

4 lots would cause $8 of commissions, PL equal to (3spread+1open markup) * 0.0001(point size) * 1000(contract size) * 4(lots)= $1.6. Together with PL it would cause decrease of Equity on $9.6 to $40.4. That is enough to maintain 4 lots position with MR = $10. So DA shall be calculated from maximum order amount equal to 4 lots. DA = 4*50%= 2.

Orders from managed accounts

Calculation of DA on a managed account depends on managed order amount allocation mode, DA mode on individual accounts belonging to managed group account and DA in % of maximum order volume set on managed account. So there are two different ways of calculation which are described below.

Note: DA in % of maximum order volume can be set on a managed account only if Proportional or Proportional: one lot minimum managed order amount allocation mode is used and at least one individual account belonging to the group has DA set in % of maximum order amount.

Case 1

Fixed DA managed order amount allocation mode is used. A managed account consists of

a)individual accounts with different DA modes: DA in lots/contracts and DA set in percentage of maximum order amount

b)or individual accounts with DA set in percentage of maximum order amount

When a user creates an order from this managed account, the managed order DA is calculated as the sum of resulting DA on each individual account.

For example (corresponds to a), managed account m112 consists of the following individual accounts with corresponding DA (Margin Requirement = 1000):

Acct #100 – DA in % = 10 %, Usable Margin = 50 000. Maximum order amount = 50 000 / 1000 (Usable Margin divide by MR) = 50. Resulting DA = 50*10% = 5.

Acct #101 – DA in lots / contracts = 3, Resulting DA = 3

Acct #102 – DA in lots / contracts =7. Resulting DA = 7.

DA of managed order = 5 + 3 + 7 = 15 lots (contracts)

Another example (corresponds to b): managed account m112 consists of the following individual accounts with corresponding DA (Margin Requirement = 1000):

Acct #100 – DA in % = 10 %, Usable Margin = 50 000. Maximum order amount = 50 000 / 1000 (Usable Margin divide by MR) = 50. Resulting DA = 50*10% = 5.

Acct #101 – DA in % = 20 %, Usable Margin = 100 000. Maximum order amount = 100 000 / 1000 (Usable Margin divide by MR) = 100. Resulting DA = 100*20% = 20.

Acct #102 – DA in % = 50 %, Usable Margin = 30 000. Maximum order amount = 30 000 / 1000 (Usable Margin divide by MR) = 30. Resulting DA = 30*50% = 15.

DA of managed order = 5+20+15 = 40.

Case 2

Proportional or proportional: one lot minimum allocation mode is used. A managed account consists of

a)individual accounts with different DA modes: DA in lots/contracts and DA in %

b)or individual accounts with one DA mode: either in % or lots/contracts.

With introduction of DA as percent of maximum order amount, managed accounts can have DA set in % of maximum order amount but only with proportional allocation modes. If the managed account has DA set in X % of maximum order amount, DA settings on individual accounts are ignored. When a user creates an order from such managed account, DA on each individual account equals X % of individual account’s maximum order amount. That is system uses group account DA setting for order calculation.

For example, DA of managed account is 50%. Managed account m112 consists of the following individual accounts with corresponding DA (Margin Requirement = 1000):

Acct #100 – DA in % = 10 %, Usable Margin = 60 000. Maximum order amount = 60 000 / 1000 (Usable Margin divide by MR) = 60. Individual account’s DA is ignored – managed account’s DA is used. That’s why resulting DA of individual account = 60*50% = 30.

Acct #101 – DA in lots / contracts = 3, Usable Margin = 100 000. Maximum order amount = 100 000 / 1000 (Usable Margin divide by MR) = 100. Individual account’s DA is ignored – managed account’s DA is used. That’s why resulting DA of individual account = 100*50% = 50.

Acct #102 – DA in lots / contracts =7. Usable Margin = 30 000. Maximum order amount = 30 000 / 1000 (Usable Margin divide by MR) = 30. Individual account’s DA is ignored – managed account’s DA is used. That’s why resulting DA of individual account = 30*50% = 15.

DA of managed order = 30 + 50 + 15 = 95 lots (contracts).

Note: For proportional: one lot minimum allocation mode lot distribution works still according to the mode’s rules. For example, if X % of the individual account’s maximum order amount equals 0.6 lot and it

Create a custom group name for selected accounts

Left-click the “Group” field for the account for which you wish to set a Group name. The “Input Group name” dialog box will appear:

  

Enter the group name and click OK.

 

[/dt_sc_toggle][dt_sc_toggle title=”Summary window”]

The Summary window displays a summary of all open
positions, organized by instrument. The Summary window can display a summary
of all accounts or of selected accounts.

 

Summary – All Accounts (green records)
– Default mode

In this mode, the Summary window shows all open positions (short, long, and
non-hedged) per instrument for all accounts. To select this mode, right-click anywhere in the window and select
Summary by All Accounts from the menu, or just make sure that no accounts
are selected in the Account Information window.

 

Net Profit/Loss is shown in the window’s title bar.

 

 

Summary – Selected Accounts (white
records)

In this mode, the Summary window
shows the total number of open positions (short, long, and non-hedged) per instrument for selected accounts.

 

To choose this mode, select the desired accounts in the Account Information window. Hold CTRL while clicking to select multiple accounts.

 

Note: Keep in mind that if you select a managed account together with its
individual accounts you will receive “duplicate” results. Therefore, if you choose to see a summary of selected
accounts, consider disabling Show All Managed in the Account Information window.

 

The Net P/L that is shown in the window’s title bar is the summarized Net P/L from all selected accounts.

 

 

Summary window columns

Instrument

Instrument name

 

Lot(Amount)

The sum of all open position amounts measured in lots(amounts)

 

NH Lot

Not Hedged Lots – The sum of all unhedged position amounts measured in lots. For example, if there are 7 Buy and
4
Sell positions, then for the buy positions NH=7-4=3.

 

Amt,K

Sum of all open position amounts in contract currency measured in thousands (Am,K = number of lots * contract

size/1000)

 

NH Amt,K

Not Hedged Amount – the sum of all unhedged position amounts measured in 1,000 base currency units

 

B/S

B=Buy position; S=Sell position

 

Close

Trader’s closing rate for all positions in this instrument

 

AvOpen

Average weighted trader’s opening rate for all positions in this instrument

 

AvBEP

Average weighted break-even point. The minimal rate at which all positions on this instrument from the selected
accounts will not carry any loss.

 

P/L

Total gross Profit/Loss measured in pips for all positions on this instrument. Calculated as
sum
of P/L values of all positions open on this instrument. The result is rounded to the sum of decimal digits
in
pips and lots in the instrument.

 

Net P/L

Total net Profit/Loss measured in base currency. Positive P/L values are displayed in green color; negative P/L
values are displayed in red color; zero P/L values are displayed in black color.

 

Close

Allows to close positions directly from the Summary window

 

NH P/L

Total gross Profit/Loss measured in pips for all unhedged positions on this instrument.
Calculated by the following formula: NH P/L = NH Lot/ Lot * P/L.
The
result is rounded to the sum of decimal digits in pips and lots in the instrument.

Example:

GBPUSD:

Point Size = 0.0001, Price Format = 0.00001 => price precision is 0.1 pip

Trade Step = 0.1

As a result, P/L and NH P/L will be rounded to 2 decimal digits

Open Buy position for 3.4 lot

Open price: 1.60353

Current closing price: 1.60310

Lot PL = 1.60310 -1.60353= -4.3 pips

P/L = 3.4 * (-4.3) = -14.62

Open Buy position for 0.2 lot

Open price: 1.60370

Current closing price: 1.60310

Lot PL = 1.60310-1.60370= -6 pips

P/L = 0.2 *( -6) = -1.2

Open Sell position for 0.3 lot

Open price: 1.60295

Current closing price:1.60375

Lot PL = 1.60295 – 1.60375= -8 pips

P/L = 0.3 * (-8) = -2.4

Summary will show:

For Sell position: NH P/L – empty (position is fully hedged)

For buy position: NH P/L = -14.50

Calculated as:

NH Lot = Total Buy Lot – Total Sell Lot = 3.4 + 0.2 – 0.3 = 3.3

Lot (Total Buy) = 3.4 + 0.2 = 3.6

P/L (Total Buy) = (-14.62) + (-1.2) = -15.82

NH P/L = NH Lot/ Lot * P/L = 3.3/3.6 *( -15.82) = -14.50166666666667 ≈ -14.50

 

Instrum
P/L column

The Instrum P/L column displays the total
value of P/L from Net P/L columns for each side of instruments’ position (Buy and Sell).

The Instrument P/L value calculated from Buy and Sell positions on an instrument
is
displayed in the line where the absolute value of Net P/L is greater. The other line remains empty.

Ex 1: EURUSD: NET P/L
for
all Buy positions = -44.4; For all Sell positions = 118.30.

The Instrument P/L is calculated as:
118,30+(-44,40)=73,90.

This value is shown in the Sell line (since 118.3>44.40).

Ex 2: USDJPY: NET P/L for all Buy positions =-3.77; For all Sell
positions =0.26.

The Instrument P/L is calculated as:
=0,26+(-3,77)=-3,51.

This value is shown in the Buy line, (since 3.77>0.26)

Note: When Summary window is in NH
mode
(not hedged summary only), Instrum P/L is NOT displayed in the window.

NH Net P/L

Total net Profit/Loss measured in base currency for all unhedged positions  (Note: The Net P/L value shown on the window title in the Not Hedged mode
represents the exposure against all unhedged positions from the selected accounts.) Positive P/L values have a
green
background; negative P/L values have a red background; zero values are not displayed in the column (NH Net P/L
is
empty in this case).

 

Pop-up menu 1

To access this menu, right-click on a column header in the Summary window.

 

 
 

Menu commands:

 

 

 

 

 

Changes the window’s display mode
to Not Hedged mode. In this mode the window will display information on
unhedged (exposed) positions only. Full summary: Not hedged (exposed) positions summary: Note: The Net P/L value shown
on the window title in the Not Hedged mode is the same number as in the
Full mode. It represents Net P/L for all positions.

Pop-up menu 2

To access this menu, right-click on a record within the Summary window.

 

Menu commands:

Changes the window’s display mode
to Not Hedged mode. In this mode the window will display information on
unhedged (exposed) positions only. Full summary: Not hedged (exposed) positions summary: Note: The Net P/L value shown
on the window title in the Not Hedged mode is the same number as in the
Full mode. It represents Net P/L for all positions.

[/dt_sc_toggle][dt_sc_toggle title=”Closed Positions window”]

The Closed Positions window gives a detailed, up-to-date list of all recently closed positions.

 

 

Closed Positions window columns

Account

Account number

 

AcT

Account type

T – Trading

B – Banking

C – Clearing

G – The group account that represents a group of managed accounts

TST- Testing

 

InstrT
Displays type of instrument (type to which instrument belongs). Appears depending on your system configuration.

 

Ticket

Position number ID

 

Instrument

Instrument name

 

Lot(Amount)

The sum of all open position amounts measured in lots(amounts)

 

Amt,K

Trade amount in contract currency measured in thousands (Amt,K = number of lots * contract size/1000)

 

B/S

B=Buy position; S=Sell position

 

Open

Position opening rate

 

Open Time

Position opening time

 

Close

Position closing rate

 

Close Time

Position closing time

 

Lot P/L

Profit or loss on a position (in pips) at the current moment

 

Com

Total commission charged from all of this account’s currently open positions

 

Fee

Total amount of transaction fees charged from all of this account’s currently open positions

 

Roll

Total amount of interest applied to this position

Opn / Cl. Charge (Open/Close Charge)

Trade charge is an amount in the system base currency set on account for every instrument, paid
per trade at position’s Opening or Closing, or at both Opening and Closing.

 

Fut Roll Adj

Amount of future rollover adjustment (in system base currency).This column shows the total sum
of the futures rollover adjustment applied during the trade’s lifetime.

Future rollover adjustment=(first price of new feed-last price of
old feed)*contract size*lots#. The sign of the adjustment depends on whether the new price is higher or
lower than the last price of the preceding time interval feed and on the position direction – Buy or
Sell.

 

Net P/L

Total net Profit/Loss measured in base currency

 

Reason

The reason why the position was closed

C – Closed by Trader’s order

D – Closed by Dealer’s order

S – Closed on S order

L – Closed on Limit Order

M – Closed as a result of MC

ME – Closed as result of Min Equity

I – Opposite direction I order

E – Opposite direction E order

T – Price changed on C order

R – Price changed on I order

User

Login of the user who closed the position

 

Opened By

Shows which of the following was responsible for the opening of the position:

Position
was opened manually by a trader. (The “Opened By” column will be empty.)

Position
was opened by a strategy. (The “Opened By” column will display the name of the strategy.)

 

Closed By

Shows which of the following was responsible for the closing of the position:

Position
was closed manually by a trader. (The “Closed By” column will be empty.)

Position
was closed by a strategy. (The “Closed By” column will display the name of the strategy).

 

Comment

Shows comments created by a trader on closed positions

Shows comments created by a trader on open positions.

Trade ID
Shows Trade ID, an identifier assigned to every new position at the moment of position opening, in the same way as
is the ticket ID.

Unlike the Ticket ID, Trade ID does no change when position is partially closed.

For more details Goto :- Appendices > Trade ID (FIFO Closing to Pick Trades with
Smallest Trade ID)

 

Trade Open Time

Shows Date and Time when the corresponding trade has been initiated.

The Trade Open Time value is the same as Open Time, if the original position has been fully closed at once.

Trade Open Time will differ from the position’s Open Time only if the position has been partially closed.

Pop-up menu 1

To access this menu, right-click on a column header in the Closed Positions window.

 

Menu commands:

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible (checked)
and which are hidden (unchecked). You can also drag and drop individual columns to organize them in
custom order. Clicking the Default button will return the
columns to their default order. Click OK to save your
changes, or click Cancel to discard your changes and close
the dialog

 

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in which
records in the window are sorted; this does NOT refer to the order in which the columns appear.)

 

Preferences

Settings

This window has several display settings: You can display the closed positions for a specific
account or for all accounts assigned to you. You can also specify a number of recent transactions to
show (default=30) or show positions that were closed within the past X number of days or for a
specified period of time.

 

Selected display parameters are indicated in the window header. For example, if you select the Show
for period radiobutton and specify From and Till date/time, the window will show only positions
closed within specified period, which is indicated in the window header:

Note that Total line at the bottom of the window
shows summarized number of Lots, P/L etc. for the displayed positions only.

The Show for
period
setting allows setting up an interval of any length (although in the Show last days you may not enter more than 100 days)

Tip: If
you set tomorrow’s day in the Till field the newly closed positions will be added up in the
window

Font

Allows you to change the window’s font.

For more details Goto :- Appendices > Font

 

Color

Allows you to change the window’s background.

For more details Goto :- Appendices > Color

Export Data to Excel

This command allows you to export Closed Positions window data into an Excel
spreadsheet.

You will be able to save the data into a folder of your choice as an XLS file:

Open the file in Excel to view the data:

Refresh
Refreshes window content.
Pop-up menu 2
To access this menu, right-click on a record in the Closed Positions window.
Menu commands:
Preferences

Settings

This window has several display settings: You can display the closed positions for a specific
account or for all accounts assigned to you. You can also specify a number of recent transactions to
show (default=30) or show positions that were closed within the past X number of days or for a
specified period of time.

 

 

Selected display parameters are indicated in the window header. For example, if you select the Show
for period radiobutton and specify From and Till date/time, the window will show only positions
closed within specified period, which is indicated in the window header:

Note that Total line at the bottom of the window
shows summarized number of Lots, P/L etc. for the displayed positions only.

The Show for
period
setting allows setting up an interval of any length (although in the Show last days you may not enter more than 100 days)

Tip: If
you set tomorrow’s day in the Till field the newly closed positions will be added up in the
window

 

Font

Allows you to change the window’s font.

For more details Goto :- Appendices > Font

 

Color

Allows you to change the window’s background.

For more details Goto :- Appendices > Color

Export Data to Excel

This command allows you to export Closed Positions window data into an Excel
spreadsheet.

You will be able to save the data into a folder of your choice as an XLS file:

Open the file in Excel to view the data:

Refresh
Refreshes window content.

 

Please note: If a position was closed on an individual account, then the
Account column will display the individual account number and the Ticket column will display the ID number of the
individual position.

If several positions are closed on accounts that are members of a managed group (as a result of the closing of the group
position), then the Account column will display the group account number and the Ticket column will display the ID
number of the group position.

 
If a position is closed on an individual account that is a member of a managed group (as a result of the closing of
the group position), and this group position consists of one individual trade, then the Account column will display
the individual account number and the Ticket column will display the ID number of the individual position.

[/dt_sc_toggle][dt_sc_toggle title=”News window”]

The News window provides you with a quick overview of recent news as well as the time when it was received. Each headline can be expanded to show the entire article.

The News window can be viewed in three different modes: Table, Separated and Embedded:

 

Table mode – a standard News display previously used in ActTrader.

Separated mode – a new design including a toolbar, latest news area, list of historical news and separated area for news body.

Embedded mode – similar to the Separated mode: it has the same set of controls, but the news body is displayed inside the list (below the corresponding topic).

You can switch between the modes in the News window settings.

The News Toolbar added in the Separated and Embedded modes consists of the following control elements:

Sort buttons – allow the user to sort news by Date or by Source in descending or ascending order.

Filter – allows filtering the news by entered word (or phrase).

Search – the entered word (or phrase) will be highlighted in topics and loaded news body.

Note: Search and filter can be applied to the news body if it has been opened before at least once.  This rule works for all news types except for RSS – because the RSS body is downloaded automatically; search and filter applies to RSS body regardless of whether it was opened before or not.

 

Right-click menu

In the right-click menu of the News window you can switch between Current and Historic news lists. These lists, as well as the News window mode are configured in the News window settings accessed by selecting the Preferences > Settings in the menu, or by going to the Main application Settings->Windows->News

 

Note:  The News window is optional and may not appear in your application. If you want to have access to this window, please contact customer support.

[/dt_sc_toggle][dt_sc_toggle title=”Reports window”]

The Reports window allows you to run the Trading Statistics and Account Statement reports without opening a web browser. Use the tab links at the top of the window to switch between reports.

Account Statement

The purpose of the Account Statement report is to review all transactions, open positions and an account summary for the selected time period. By default the report period is set to Day, All Accounts radio button is preselected and Markup check box is checked. Traders have access to markups by default (if Markups are enabled on the system). Customers’ access to markups is regulated by the rule Markups: Show in Customer Statement.

Account Statement report can be accessed in a following ways:

for traders, through the ActTrader (Windows Tab -> Reports) and through the ICTS Reporting (using personal logon and password)

for customers, only through the ICTS Reporting (using personal logon and password).

When running the report both traders and customers are able to see all the accounts assigned (for trader) and owned (for customer) to/by them.

Report Interface

Configuring the Report

The following are the options for the report period:

Day

(End of previous trading day till the present moment)

Week

(End of previous trading week till the present moment)

Month

(End of previous trading month till the present moment)

Quarter

(End of previous quarter till the present moment)

Year                        

(End of previous calendar year till the present moment)

Since open                

(From the moment of the first account creation in the system till the present moment)

Previous month        

(From: end of the month preceding the previous calendar month Till: the end of previous calendar month)

Previous quarter

(From: end of the quarter preceding the previous quarter Till: the end of previous quarter)

Previous year

(From: end of the year preceding the previous calendar year Till: the end of previous calendar year)

The last two additional timeframes allow the user to gain a better understanding of the long-term trading statistics.

User defined                

This section allows you to define the start and end points of the report period. This is the most flexible option, allowing you to define the report period with great precision (to the second). The From and Till fields must be filled out in mm/dd/yyyy hh:mi:ss format.

Note: The report is generated in either GMT or EST time format, depending on your system configuration.

Account(s)

In this section, you can either select “All Accounts” to run the report for all your account(s), or select an individual account if you have more than one.

Checkboxes

Simple form: The Account Statement report can be displayed in a simple or detailed form (uncheck the “simple form” checkbox to see the detailed report). In the simple form, the report’s Account Transactions section will only show position closings. Please note that if the simple form is selected, the Markup box becomes grayed out. Likewise, if the Markup box is checked, the Simple form box becomes grayed out.

Markup: Check this box to display markups in the body of the report.

Show Comment: Check this box to display the Comment column in the Account Transactions and Open/Floating Positions tables of the Account Statement report. The Comment column will display comments which were available on open or closed positions at the moment of transaction.

Group by Instrument type: When this check box is checked, the report will be split into multiple tables with each table only displaying transactions/positions with a certain instrument type (in alphabetical order: transactions table with CFD first, then ETFs, FUT, FX, then open/floating positions tables in the same order: CFD, ETF, FUT, FX). Account transactions and open/floating positions of each instrument type will be shown in chronological order.

Note: By default, when the report is grouped by instrument type, the D/W/A, Balance and Equity columns are not displayed. Information about deposits, withdrawals and adjustments can be viewed in the Report summary. To display balance and equity, you  must check the “Show balance and equity” check box though it is not recommended as the balance and equity in this case will not necessarily be in chronological order, since the report is now grouped by instrument type.

Note: The Group by instrument type checkbox is available in the report interface only if there are at least two instrument types in the system and at least two instruments of each instrument type are created.

Show balance and equity: This check box is active only when ”Group by Instrument type” is checked. Check this box to display balance and equity in the body of the report.

Use 2 decimal digits: When this checkbox is enabled, all financial values will be shown as rounded to 2 decimal digits, though all calculations will be made with full precision. If you uncheck this checkbox, all values will be displayed with full precision. Checkbox is disabled by default.

Note: This checkbox appears only if more than 2 currency decimal digits are used on your system.

Show Orders/Positions Size in: Choose how to display positions and orders size in the report – in lots or amount. By default the system setting is selected

Pagination

This report can be set to display a certain number of rows per page: 20,40,60,80, “by Rule”, or “No Pagination”. “By Rule” refers to a pagination value set by the system administrator.

 

Report Body

 

The Account Statement report consists of four main sections:

1.Basic report/account information in the header

2.“Account Transactions”

3.“Open/Floating Positions”

4.Report summary/footer information

Basic report/account header information

 

This section displays the following information:

Account ID – account, for which the report has been generated,

Customer name – the name of account’s owner,

Address – customer’s address,

Base Currency – the name of the system base currency,

Period – report period selected in the interface,

Report “From” and “Till” dates – particularly the day and time, from which the report starts (‘From’), and the day and time, when it ends (‘Till’).

Trader Login – trader’s login

Time/date of report generation – at the right top is shown the day and time of the report generation. It coincides with the ‘Till’ time except when the report period is previous month, previous quarter, previous year or defined by user.

 

Account Transactions

This section chronologically lists all account transactions for the selected time period.

If you have only FX type instruments in your system, the report will look like this:

If you have all the instrument types in the system, the report will look like this:

If Use 2 decimal digits checkbox is checked in the report interface, the report will look like this:

Column descriptions

PLEASE NOTE: Forwards, Options and Futures may not be available in the system. In this case the corresponding columns will not appear in the report body.

Date/time        

Date and time of the transaction

Type                

Transaction type

AJ

Adjustment

DP

Deposit

WD

Withdrawal

OP

Open Trade

CP

Closed Trade

PR

Overnight Rollover fee

FWOP

Forward position opened

FWCP

Forward position closed

FWEX

Forward position expired

FE

Future Expiration

OCP

Option Cosed

OEX

Option Expired

OOP

Option Opened

Ticket                

Ticket number (option number for option position).A ticket number is the number assigned by the system to a position.

When a partial closing of a position took place, the Ticket column will display 2 ticket numbers connected by an arrow. For example, XXX1=>XXX2. This means that ticket XXX2 was partially closed by an order XXX1.

Instrument Type

Type of instrument (FX, CFD, ETF, FUT)

Note: If the report is grouped by instrument type (Group by Instrument type checkbox is checked in the report interface), then this column will not appear in the report.

Instrument

Instrument name

Expiration Date

Expiration date for futures or/and options contracts (the column is available only if there were any futures or options transactions within the report period).

Strike Price

The specified price on an option contract at which a call option buyer can buy the underlier or a put option buyer can sell the underlier.

The buyer’s profit from exercising the option is the amount by which the strike price exceeds the spot price (in the case of a put), or the amount by which the spot price exceeds the strike price (in the case of a call).

Call/Put

A Call is an options contract that gives the buyer the right to buy the underlying commodity at the strike price on the expiration date.

Put is an options contract that gives the buyer the right to sell the underlying commodity at the strike price on the expiration date.

Lot

Number of lots in the transaction.

Note: If your system is configured for trading in amounts instead of lots, then the name of this column will be Amount. (The value of this column is an amount of the first currency in the instrument pair).

 

B/S

Buy/Sell. Shows in which direction (buy or sell) the position was opened

Open Date/Time

Date and time the position was opened

Open

Trader’s rate at which the position was opened.

In a CP record, this field will display the opening price in green italics. (for reference only)

In a PR record, this field will display the opening price in green italics. (for reference only)

Open SWAP

SWAP rate for forward position at opening. The column appears only if at least one forward position was opened within the report period.

Close

Trader’s rate at which the position was closed.

In an OP record for a position that is currently open, this field will be empty.

In an OP record for a position that has subsequently been closed, this field will display the closing price in green italics. (for reference only)

In a PR record, this field will display the closing price in green italics. (for reference only)

Close SWAP

SWAP rate for forward position at closing. The column appears only if at least one forward position was closed within the report period.

Value Date

The date when the forward position is closed automatically by the system at the end of the trading day (If position is still open at the end of the trading day), the P/L added to account balance

Option Prem

The amount per unit of currency that an option buyer pays to the seller.

The option premium is primarily affected by the difference between the stock price and the strike price, the time remaining for the option to be exercised, and the volatility of the underlying stock.

D/W/Adj

Deposit/Withdrawal/Adjustment. This column displays any deposits, withdrawals, or adjustments made on the account.

 

G$P/L

Gross profit/loss realized at the time of position closing. The gross profit/loss is the P/L result of the difference between the open/close prices (in system base currency). It does not factor in any commissions, transaction fees, or overnight rollover rates.

Commission

The commission is a service charge on an account for opening a new position applied per lot and measured in system base currency. The commission charge is subtracted from the account balance at the time of the transaction. The overnight commission is an extra commission charge applied at position closing  if  that position remained open overnight (through the end of the day) at least once. Overnight commission applies per lot and is equal to the regular commission set on the on the account.  The number of days that a position remained opened has no bearing on the overnight commission charge. Overnight commission can be used as an alternative to overnight rollover fees.

Note: Some entries in the Commission column may appear in green italics. (This is only true for closing positions transactions.) Entries in green italics are meant for reference only and are not included in totals.  These entries show all commissions that were applied to the position or part of the position that was being closed.

Trans fee

Transaction fee. The transaction fee is a charge per lot applied on an account for opening a new position (measured in system base currency). The transaction fee is subtracted from the account balance at the time of the transaction. The column is shown only if transaction fee is enabled on the system or was enabled on the system during the report period (at least one trade was opened during the report period and was charged a transaction fee).

Note: Some entries in the Transaction Fee column may appear in green italics. (This is only true for closing positions transactions.) Entries in green italics are meant for reference only and are not included in totals.  These entries show all transaction fees that were applied to the position or part of the position that was being closed.

Overnight Rollover Fee

Overnight rollover fee (measured in system base currency). Overnight rollover fees are charged to the account and are applied per lot (per contract) to the trade during its lifetime.

If overnight rollover is set in percent for the system, then it will be recalculated and shown in system base currency in this column.

 

Note: Some entries in the Overnight Rollover Fee column may appear in green italics. (This is only true for closing positions transactions.) Entries in green italics are meant for reference only and are not included in totals.  These entries show all overnight rollover fees that were applied to the position or part of the position that was being closed.

N$P/L

The net profit/loss of the position, measured in system base currency.

Net P/L = Gross P/L – Commission – Transaction Fee-Trade Charge+/- Overnight Rollover Fee+/-Future Rollover Adjustment

 

Trade Charge

Total fixed cost per trade in base currency for this whole transaction. Trade Charge is subtracted from the account balance at the time of the transaction.

Trade charge is an amount in the system base currency set on account for every instrument, paid per trade at position’s Opening or Closing, or at both Opening and Closing.

Note: The column is shown only if trade charge is enabled on the system or was enabled on the system during the report period (trade charge applied at least to one transaction)

Balance        

Account balance after the transaction. The balance figure in any transaction record is the resultant balance after the completion of that transaction.

Equity

Account equity after the transaction.The equity figure in any transaction record is the resultant equity after the completion of that transaction.

Equity = Balance +/- Floating P/L from Open Positions.

Used Margin        

Used margin on the account after the transaction. The used margin figure in any transaction record is the resultant used margin after the completion of that transaction.

User        

The initiator of transaction. If the initiator is the trader, then the trader’s login ID will be displayed. Other possible values for this field are ‘DEALER’, ‘ADMIN’, and ‘System’.

Reason        

This column displays the cause or reason for the transaction.

 

CO/CREATE_ORDR

Order created

CREATE ORDR. Partial execution of order #

Partial Close

HEDGE_TRADE

Position was hedged

CT

Close trade

AR

Autoreject

MC

Margin Call

L

Limit Order

S

Stop Order

ME

Minimal Equity

E

Entry Order

Markup columns (these columns appear if the Markup check box is selected in the report interface)

OM Pts/$        

Position Opening Markup, in pips and system base currency.

The open markup modifies the rate at which the position opens for the trader. The markup setting is a positive number of pips and markups are always charged so as to worsen the trader’s rate (i.e. to increase the buy price or decrease the sell price).

The OM Pts/$ column is divided into 2 parts. The left part shows the value of the markup in pips applied at position opening (The markup setting at opening multiplied by the number of lots / contracts in the position; always a positive value).

The right part of the column shows the markup component in the position Net P/L and Gross P/L at opening: markup component in P/L at opening multiplied by the point size and contract size.

For example, 3 lots Buy position on GBPUSD is opened on trader’s account at 1.6346. Open markup on the trader’s account is set to 1 pip in ActAdmin. Markup applied at opening is 3 lots * 1 pip =  3 pips – you will see it in the OM Pts. In the position’s Net P/L that equals 30 = 3 * 0.0001 (point size) * 100 000 (contract size).

Note: For indirect currency instruments, like USDCAD, USDCHF, the result is further divided by the rate of position opening on account.

For example, 8 lots Buy position on USDCHF is opened on trader’s account at 1.0195. Open markup on the trader’s account is set to 2 pips in ActAdmin. Markup applied at opening is 8 lots * 2 pips = 16 pips – you will see it in the OM Pts. In the position’s Net P/L that equals 156.94 = 16 * 0.0001(point size) * 100 000(contract size) / 1.0195 (actual open rate on trader’s account).

For cross currency instruments, which do not have system base currency in the pair (like EURGBP for system with USD as base currency):

if the second currency in the cross instrument forms a direct pair with the system base currency, then the result is further multiplied by (BID+ASK)/2, where BID and ASK rates are the dealer’s rates of the second currency in the cross instrument to the system base currency at position opening (in the example of EURGBP it is GBPUSD).

For example, a trader opens 5 lots Sell position on EURGBP while dealer’s middle rate for GBPUSD is 1.6296. Open markup on the trader’s account is set to 1 pip in ActAdmin. Markup applied at opening is 5 lots * 1 pip = 5 pips – you will see it in the OM Pts. In the position’s Net P/L that equals 81.48 = 5 * 0.0001(point size) * 100 000(contract size) * 1.6296 (dealer’s middle rate of GBPUSD).

if the second currency in the cross instrument forms an indirect pair with the system base currency, then the result is further divided  by (BID+ASK)/2, where BID and ASK rates are the dealer’s rates of the system base currency to the second currency in the cross instrument at position opening (in the example of EURJPY it is USDJPY).

For example: a trader opens 5 lots Sell position on EURJPY while dealer’s middle for USDJPY is 91.62. Open markup on the trader’s account is set to 2 pips in ActAdmin. Markup applied at opening is 5 lots * 2 pip = 10 pips – you will see it in the OM Pts. In the position’s Net P/L that equals: -109.15=10 * 0.01(point size) * 100 000 (contract size) / 91.62 (dealer’s middle rate of USDJPY).

CM Pts/$        

Position Closing Markup, in pips and system base currency.

The close markup modifies the rate at which the position closes for the trader. The markup setting is a positive number of pips and markups are always charged so as to worsen the trader’s rate (i.e. to increase the buy price or decrease the sell price).

The CM Pts/$ column is divided into 2 parts. The left part shows the total value of the markup in pips applied at position closing (The markup setting multiplied by the number of lots / contracts in the position; always a positive value).

The right part of the column shows: the markup component in the position Net P/L and Gross P/L at closing: close markup component  in the position P/L multiplied by the point size and contract size.

For example, 3 lots Buy position on GBPUSD is closed on trader’s account at 1.6014. Close markup on the trader’s account is set to 1 pip in ActAdmin. Markup applied at closing is 3 lots * 1 pip =  3 pips – you will see it in the CM Pts. In the position’s Net P/L that equals 30 = 3 * 0.0001 (point size) * 100 000 (contract size).

Note: For indirect currency instruments, like USDCAD, USDCHF, the result is further divided by the rate of position closing on account.

For example, 8 lots Buy position on USDCHF is closed on trader’s account at 1.0190. Close markup on the trader’s account is set to 1 pip in ActAdmin. Markup applied at position’s closing is 8 lots * 1 pip = 8 pips – you will see it in the CM Pts. In the position’s Net P/L that equals 78.51 = 8 * 0.0001 (point size) * 100 000 (contract size) / 1.0190 (actual close rate on trader’s account).

For cross currency instruments, which do not have system base currency in the pair (like EURGBP for system with USD as base currency):

if the second currency in the cross instrument forms a direct pair with the system base currency, then the result is further multiplied by (BID+ASK)/2, where BID and ASK rates are the dealer’s rates of the second currency in the cross instrument to the system base currency at position closing (in the example of EURGBP it is GBPUSD).

For example, a trader closes 5 lots Sell position on EURGBP while dealer’s middle rate for GBPUSD is 1.6301. Close markup on the trader’s account is set to 2 pips in ActAdmin. Markup applied at position’s closing is 5 lots * 2 pips = 10 pips – you will see it in the CM Pts. In the position’s Net P/L that equals 163.01 = 10 * 0.0001(point size) * 100 000(contract size) * 1.6301 (dealer’s middle rate of GBPUSD)

if the second currency in the cross instrument forms an indirect pair with the system base currency, then the result is further divided  by (BID+ASK)/2, where BID and ASK are the dealer’s rates of the system base currency to the second currency in the cross instrument at position closing (in the example of EURJPY it is USDJPY).

For example, a trader closes 5 lots Sell position on EURJPY while middle rate for USDJPY is 91.62. Close markup on the trader’s account is set to 2 pips in ActAdmin. Markup applied at position’s closing is 5 lots * 2 pips = 10 pips – you will see it in the CM Pts. In the position’s Net P/L that equals 109.15 = 10 * 0.01(point size) * 100 000(contract size) / 91.62 (dealer’s middle rate of USDJPY)

Open/Floating Positions

This section lists all open/floating positions as of the end of the report period.

Column descriptions (Unless otherwise noted, the columns in this section correspond directly to the columns in the Account Transactions section)

Current        

The current trader’s rate (as of the end of the report period). Excludes closing markup.

 

 

G$P/L

The unrealized gross profit/loss at the end of the report period. The gross profit/loss is simply the result of the difference between the buy/sell prices (in system base currency). It does not factor in any commissions, transaction fees, or overnight rollover rates.

N$P/L

The unrealized net profit/loss of the position, measured in system base currency.

Net P/L = Gross P/L – Commission – Transaction Fee-Trade Charge +/- Overnight Rollover Fee+/-Future Rollover Adjustment

 

 

 

Open Options Positions

This section lists all open options positions as of the end of the report period.

Columns descriptions

Option#

The option number

Instrument

Instrument name. This is the name that can be set and customized by the administrator in the Instruments section of the ActAdmin. For example, for GBPUSD, the instrument name may read “Cable”.

Expiration Date

Option expiration date.

Strike Price

The specified price on an option contract at which a call option buyer can buy the underlie or a put option buyer can sell the underlie.

The buyer’s profit from exercising the option is the amount by which the strike price exceeds the spot price (in the case of a put), or the amount by which the spot price exceeds the strike price (in the case of a call).

Call/Put

A Call is an options contract that gives the buyer the right to buy the underlying commodity at the strike price on the expiration date.

Put is an options contract that gives the buyer the right to sell the underlying commodity at the strike price on the expiration date.

Lot

Number of lots in the option. If the system is set in amounts, the column is titled Amount and displays the amount in the option.

Open Date/Time

The date and time of opening of the option.

Open Premium

Premium at opening of the option. Premium is calculated by the system using the volatility data specified in ActAdmin or Static Volatility. Premium is used to calculate open cost of the option.

Open Cost

Total cost of opening of the option position. The open cost is subtracted from the account balance at the time of the transaction.

Open cost is calculated by the system via the following formula:

Cost = Premium*Contract size*Number of lots

Note: If the resulting open cost is less than the Minimum Cost, then the Minimum Cost will be applied instead of the above formula. The Minimum Cost is equal to the Number of Lots*Minimum Cost per Lot specified in ActAdmin for this instrument. In this case, the Premium is not used to calculate the open cost of the option.

Current Premium

Premium at the end of report period. Premium is calculated by the system using the volatility data specified in ActAdmin or Static Volatility. Current Premium is used to calculate the option value.

Option Value

The value the trader would receive for closing of the option position at the end of report period. Option value would be added to the account balance at the time of the transaction.

Option value is calculated by the following formula:

Option Value = Current Premium*Contract size*Number of lots.

Note:  The Minimum Cost per lot setting has no effect on determining the option value.

User

The login of the trader or dealer that confirmed the buy option transaction.

Report Summary/Footer Information

This section shows summarized info for the report period.

Description

Beginning Balance        

Balance at the beginning of the report period

 

Beginning Equity

Equity at the beginning of the report period

 

Total Gross $P/L from settled trades

Total gross profit or loss on all positions closed within the report period

Commission

Sum of all commissions charged within the report period.

Transaction fee

Sum of all transaction fees charged within the report period

 

Overnight Rollover Fee

Sum of all overnight rollover fees applied to all open positions within the report period

Deposit

Total sum of account deposits within the report period

Withdrawal

Total sum of account withdrawals within the report period

Adjustment

Total sum of account adjustments within the report period

Net D/W/A                

Sum of deposits, withdrawals, and adjustments within the report period

Net D/W/A = Deposits – Withdrawals +/- Adjustments

Ending balance

Balance at the end of the report period.

Total gross $P/L from open positions

Total floating gross profit or loss on all open positions at the end of the report period.

Ending Equity

Equity at the end of the report period.

Used margin

Used margin at the end of the report period.

Usable margin

Usable margin at the end of the report period.

Footer

The footer is optional text appearing at the bottom of the report. It is configured by the system administrator. The footer appears at the bottom of each page of the report. If the No Pagination option is selected, the footer appears only once, at the bottom of the report. In the Account Statement report by email, the footer appears only once, at the end of the email.

ACCOUNT STATEMENT BY EMAIL:

An Account Statement can be sent to traders and/or customers via email. Customers and traders will receive reports daily (on trading days) provided that there were any transactions during that day or that their accounts had any remaining open positions at the end of the day. Additionally on the last trading day of the month they will also receive a monthly trading report provided that there were any transactions during that month or that their accounts had any remaining open positions at the end of the month. Reports are sent at the end of the trading day. Contact your system administrator for more information on this option.

Exporting the Report

The Account Statement report can be exported into Microsoft Excel from ActTrader only. Right-click on the report body, and select Export to Microsoft Excel.

Trading Statistics Report

The Trading Statistics report shows a set of statistics for all trades completed during the report period on an account or a set of accounts.

 

Report Interface

 

 

Configuring the Report

Report Period

The following are the options for the report period:

Day

(End of previous trading day until the present moment)

 

Week

(End of previous trading week until the present moment)

 

Month

(End of previous trading month until the present moment)

 

Quarter

(End of previous quarter until the present moment)

 

Year                        

(End of previous calendar year until the present moment)

 

Since open                

(From the moment of account creation until the present moment)

 

Previous month        

(Previous calendar month)

 

User defined                

This section allows you to define the start and end points of the report period. This is the most flexible option, allowing you to define the report period with great precision (to the second). The From and Till fields must be filled out in mm/dd/yyyy hh:mi:ss format.

 

Note: The report is generated in either GMT or EST time format, depending on the value of the rule Use GMT.

 

Accounts

You can generate the report for all accounts assigned to you (“All Accounts” button) or for specific accounts (“Account” button + select accounts). If you have more than one account, you can Ctrl+click or Shift+click to select multiple accounts.

 

Instruments

You can generate the report for trades made on all instruments, or he can select specific instruments. Ctrl+click or Shift+click to select multiple instruments.

 

Use 2 decimal digits: When this checkbox is enabled, all financial values will be shown as rounded to 2 decimal digits, though all calculations will be made with full precision. If you uncheck this checkbox, all values will be displayed with full precision. Checkbox is disabled by default.

Note: This checkbox appears only if more than 2 currency decimal digits are used on your system

 

If ‘Use 2 decimal digits’ is unchecked, the report will look like this (for system using 4 decimal digits):

If ‘Use 2 decimal digits’ is checked, the report will look like this (for system using 4 decimal digits):

 

Report Body

 

The various trading statistics shown in the report are broken down into 4 columns:

 

Winning Trades

Completed trades that resulted in a profit

Losing Trades

Completed trades that resulted in a loss

Even Trades

Completed trades that resulted in breaking even

Overall

All trades

 

Description of trading statistics:

 

Profit/Loss (P/L)

Total Profit/Loss for the selected accounts and instruments during the report period.

 

Trade Count

The number of trades completed on the selected accounts and instruments during the report period.

 

Lot Count

The number of lots traded on the selected accounts and instruments during the report period.

 

Average Lots per Trade

The average number of lots per trade on the selected accounts and instruments during the report period.

 

Average P/L per Trade

The average profit/loss per trade on the selected accounts and instruments during the report period.

 

Max P/L per Trade

The profit of the most profitable trade and the loss of the least profitable trade on the selected accounts and instruments during the report period.

 

Average P/L per Lot

The average profit/loss per lot on the selected accounts and instruments during the report period.

 

Max P/L per Lot

The maximum profit/loss per lot on the selected accounts and instruments during the report period.

 

Longest Trade Time

The duration of the longest open position on the selected accounts and instruments during the report period.

 

Shortest Trade Time

The duration of the shortest open position on the selected accounts and instruments during the report period.

 

Average Trade Time

The average duration of open positions on the selected accounts and instruments during the report period.

 

Note: The Even Trades column will be empty for all rows having to do with profit/loss.

[/dt_sc_toggle][dt_sc_toggle title=”Risk Exposure window”]

The Risk Exposure window displays the net currency position for every individual currency. This
differs from the Summary window, which displays the net position for currency pairs (instruments). This window
reflects your exposure from all open positions.

Note: Testing accounts are not reflected in the Risk Exposure window.

 

Currency Risk Exposure window columns

Currency.

The currency column contains a list of all currencies, other than the system base
currency.

For example, if the system base currency is USD, then all currencies other than USD
are listed in the Currency column.

NET currency.

The NET currency column displays the net currency position calculated from all the
pairs where the currency is involved.

A BUY position is presented as a positive number (with a “+” sign), e.g.
“+123,456.00”.
A SELL position is presented as a negative number (with a “-” sign), e.g. “-123,456.00” and with red
numbers.

USD Value (Or other system base currency
Value)

The USD Value column displays the net currency position converted into the system
base currency (in this example USD) according to the current dealer’s rate. This column will be
named according to your system base currency and will display values in that currency.
The USD Value is shown as an opposite direction position to the Net Currency position.

A BUY position is presented as a positive number (with a “+” sign), e.g.
“+123,456.00”.
A SELL position is presented as a negative number (with a “-” sign), e.g. “-123,456.00” and with red
numbers.

Totals in the USD Value (Or other system base currency Value) column:

Agg. Longs: The sum of all long positions as
listed in the “USD Value” column.

Agg. Shorts: The sum of all short positions
as listed in the “USD Value” column.

Total: Displays the total position. The
total sum is the sum of Agg. Longs and Agg. Shorts.

Pop-up menu 1

To access this menu, right-click on a column header in the Currency Risk Exposure window.

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible (checked) and
which are hidden (unchecked). You can also drag and drop individual columns to organize them in custom
order. Clicking the Default button will return the columns to
their default order. Click OK to save your changes, or click
Cancel to discard your changes and close the dialog.

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in which
records in the window are sorted; this does NOT refer to the order in which the columns appear.)

Preferences

 

Font

Allows the dealer to change the window’s font.

For more details Goto :- Appendices > Font

 

Color

Allows the dealer to change the window’s background.

For more details Goto :- Appendices > Color

Refresh

Refreshes window content.

 

Pop-up menu 2

To access this menu, right-click on a record within the Currency Risk Exposure window.

 

Menu commands:

 

Preferences

 

Font

Allows the dealer to change the window’s font.

For more details Goto :- Appendices > Font

 

Color

Allows the dealer to change the window’s background.

For more details Goto :- Appendices > Color

Refresh

Refreshes window content.

 

 

 

 

[/dt_sc_toggle][dt_sc_toggle title=”Price Alerts window”]

The Price Alerts window displays all untriggered Price Alerts and allows you to add, edit and remove Price Alerts. The window is accessed from the main menu: Window–>Price Alerts.

The Price Alerts window consists of two tables: Rate Alerts and Chart Alerts.

The Rate Alerts table shows the price alerts, which are set from the Price Alerts, Dealing Rates, Dealing Rates Table, Instruments, Chart windows. Such price alerts are triggered when the instrument’s rate reaches some predefined price level.

The Chart Alerts table shows the price alerts, which are set only from Chart windows for certain trendlines. Such price alerts are triggered when the chart’s candle penetrates the trendline.

Price Alerts window columns

The Price Alerts window consists of two tables: Rate Alerts and Chart Alerts.

Columns of the Rate Alerts table

Instrument

The instrument for which the Price Alert is set.

Bid/Ask

Indicates whether the Price Alert is set on a Bid or Ask rate.

C

The condition under which the Price Alert will be triggered. It is expressed as greater than or equal to (>=) or less than or equal to (<=) the rate of the Price Alert.

Rate

The rate at which the Price Alert will be triggered.

Columns of the Chart Alerts table

Chart

Displays the instrument and the time interval of the chart, from which the Price Alert is set.

Direction

Displays the selected direction of a trendline’s penetration by chart (Any, From Below, From Above)

Send Alert

The condition under which the Price Alert will be triggered (Upon Penetration, Upon Candle Close)

Trendline

Displays the name of the trendline, for which the chart alert was set.

Pop-up menu

Each of the tables in the Price Alerts window has its own pop up menu.

To access the pop up menu of the Rate Alerts table, right-click anywhere within the Rate Alerts table.

Menu commands:

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible (checked) and which are hidden (unchecked). You can also drag and drop individual columns or use Move Up and Move Down buttons to organize them in custom order. Clicking the Default button will return the columns to their default order. Click OK to save your changes, or click Cancel to discard your changes and close the dialog.

The look of the ‘Customize Columns’ dialog for the Rate Alerts table:

 

The look of the ‘Customize Columns’ dialog for the Chart Alerts table:

 

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in which records in the window are sorted; this does NOT refer to the order in which the columns appear.)

 

Add Alert

Select Add Alert to add a new Price Alert. The “Set Price Alert” box will pop up:

Set the instrument and the Buy or Sell rate for the alert, and press OK.

Note: The Add Alert option is only available in the pop up menu of the Rate Alerts table.

Edit Alert

Allows you to edit the selected Rate Alert or Chart Alert. Select Edit Alert from the right-click menu. The corresponding “Set Price Alert” or the “Set Chart Alert” box containing the current alert information will pop up. Change the settings for the alert, and then press OK. The modified alert will appear in the corresponding table of the Price Alerts window.

Remove Alert

Allows you to remove the selected Price Alert. Select Remove Alert from the right-click menu. A confirmation pop-up will appear:

Click OK to remove the Price Alert.

Remove All Alerts

Allows you to remove all the Price Alerts at once. Select Remove All Alerts from the right-click menu. A confirmation pop-up will appear.

Click OK to remove all the Price Alerts.

Go To Chart
Allows you to view the chart with the trendline, for which the selected chart alert had been set. You can also view it after double-click on a chart alert in the Chart Alerts table.
Preferences

Font

Allows you to change the window’s font.

For more details Goto :- Appendices > Font

 

Color

Allows you to change the window’s background.

For more details Goto :- Appendices > Color

Refresh
Refreshes window content.

 

[/dt_sc_toggle][dt_sc_toggle title=”Events and Messages window”]

The Events and Message window contains a running log of pop-up notification messages during the
current login session. The window displays up to 100,000 of the most recent messages. (Once there are 100,000
messages in the window, the oldest ones will be deleted as new ones come in.)

 

 

The main (upper) body of the window contains the list of messages. The bottom field of the window contains two tabs,
“Text” and “Details”. The “Text” tab displays the full text of the selected message. The “Details” tab displays
technical details for certain types of messages.

Events and Messages window columns

Source

The source of the message. This is the same information that appears at the top of a pop-up message.

 

Message Title

The text of the message.

 

Time

The time the message was generated.

Pop-up menu 1

To access this menu, right-click on a column header in the Events and Messages window.

 

Menu commands:

 

Columns

Set width to fit data

Readjust columns’ width to fit data.

 

Customize

Brings up the ‘Customize Columns’ dialog, where you can choose which columns are visible
(checked) and which are hidden (unchecked). You can also drag and drop individual columns to
organize them in custom order. Clicking the Default
button will return the columns to their default order. Click OK to save your changes, or click Cancel to discard your changes and close the dialog.

Default Sorting

Restores default sorting order for columns. (The default sorting refers to the default way in
which records in the window are sorted; this does NOT refer to the order in which the columns
appear.)

Preferences

Font

Allows you to change the window’s font.

For more details Goto :- Appendices > Font

 

Color

Allows you to change the window’s background.

For more details Goto :- Appendices > Color

 

Date/Time

Allows you to change format in which date/time are shown in the window.

For more details Goto :- Appendices > Date/Time

 

Refresh
Refreshes window content.
Pop-up menu 2

To access this menu, right-click on a message in the Events and Messages window.

 

 

Menu commands:

 

Copy Event
The Copy Event command allows you to copy the entire text of the
message you selected to the clipboard. You can also highlight and copy text from the “Text” and
“Details” parts of the window.
Preferences

Font

Allows you to change the window’s font.

For more details Goto :- Appendices > Font

Color

Allows you to change the window’s background.

For more details Goto :- Appendices > Color

Date/Time

Allows you to change format in which date/time are shown in the window.

For more details Goto :- Appendices > Date/Time

Refresh
Refreshes window content.

[/dt_sc_toggle][dt_sc_toggle title=”Account Information Bar”]

The Account Information bar appears at the bottom of the main application window. It displays information on the account(s) currently selected in the Account Information window. The following information is displayed:

 

Currently selected account(s)

Balance

Equity

Used Margin

Margin Utilization Indicator  (displays the used margin as a percent of total equity on the account)

Usable Margin

Net PL (profit/loss)

Interest – annual interest rate on Usable Margin (if applied to the selected account). Read more about Interest on usable margin….

Note: The interest name can be different depending on your system configuration

 

All currency values (Balance, Equity etc) are displayed with a system base currency sign.

 

When multiple accounts are selected, the bar displays the sums of the balances, equities, etc. of those accounts. The Interest displays “N/A” in this case.

 

Selecting Accounts

In addition to selecting accounts in the Account Information window, it is also possible to select accounts directly from the Account Information bar. Click the  icon next to the word ‘Account(s)’. An account selection window will appear. Select the desired account(s) from the window. You may click+drag or use the SHIFT and CTRL keys to select multiple accounts. Click OK.

The information from the selected accounts will appear in the Account(s) bar. In addition, these accounts will be highlighted in the Account Information window.

  

Note: The Account Information bar is not workspace-specific; it remains visible regardless of the currently selected workspace.

[/dt_sc_toggle][dt_sc_toggle title=”Status Bar”]

The Status Bar is located at the bottom of the main window and contains useful information and options:

 

System Base Currency:

Displays the system base currency.

 

Logged-in User:

Displays the currently logged-in user.

Rollover Time

Displays the time when Overnight Rollover will be applied to the trader’s open positions

Note: Depending on the system configuration, this parameter can have different name or can be hidden from the application.

You can hide any of the above parameters by right-clicking on the Status Bar and unchecking the corresponding checkboxes in the menu:

 

Open/Close trading

Shows whether the system is open for trading or not.

 

 

Connection Status

Shows the platform connection status – online or offline.

 

System Time

Displays the system time.

 

[/dt_sc_toggle][dt_sc_toggle title=”FXApps”]

FXApps window allows you to buy and download scripts, and subscribe to News Providers directly from ActTrader.

Read more about:

Registration

Any ActTrader user can access the store directly from the application, and view all the available content. But, in order to buy/download any script or subscribe to the news, the user must be registered with FXApps.

In order to register with FXApps, click the Sign In/Registration link in the upper right corner of the window, and then click the Registration button in the opened dialog.

Fill the registration form:

After registration you can view and edit your personal information on the Profile page.

If you are logged in to FXApps, your username will be displayed in the upper right corner of the FXApps window.

The registered users can log in to FXApps by clicking the Sign In link in the upper right corner of the window and entering their credentials into the dialog.

The registered users can download free content and purchase the paid items using PayPal system or Google Checkout directly from ActTrader.

Downloading a Script

FXApps offers a large variety of scripts (strategies, indicators) displayed by categories in the Browse Catalogs section.

Important: In order to download any script, you need to be registered with FXApps.

1.Select a script and click the Download button on the FXApps main page, on the strategy details page, on the Compare Apps page or on the List of Purchased Apps.

You can view the detailed description of a script by clicking the Details link on the individual script’s tile:

2.Downloading progress screen will open. When the script is downloaded to the ActTrader folder, you will receive a notification message:

 

3. Click OK in the message to open the Indicators and Strategies. After downloading a script, you do not need to compile it – the script will be automatically added to the Indicators and Strategies (Custom tab), and can be used right away.

 

4.Click “Add to [chart]”/”Add to new chart” for plotting an indicator on the chart

5.Click “Test strategy” to run a strategy in the test mode or “Run strategy” to execute a strategy in the real mode

6.Also if an indicator/strategy is open sourced, then you can clone a script in the corresponding editor (“Clone” button  in the “Indicators and Strategies” tab)

Buying a Script

FXApps offers a large variety of scripts (strategies, indicators) displayed by categories in the Browse Catalogs section.

Important: In order to buy any script, you need to be registered with FXApps.

1.Select a script and click the Buy button on the FXApps main page, on the script details page or on the Compare Apps page.

2.The Final Checkout Review page will open with the script version and price. Select the payment system by clicking the corresponding radio button, and then click the Submit Order button

3.Web-page of the selected payment system will open where you can login with the existing account or create a new account, and complete the payment.

4.After payment is made the script will be automatically downloaded to the ActTrader folder. You will receive a notification message:

5. Click OK in the message to open the Indicators and Strategies. After downloading a script, you do not need to compile it – the script will be automatically added to the Indicators and Strategies (Custom tab), and can be used right away.

6.Click “Add to [chart]”/”Add to new chart” for plotting an indicator on the chart

7.Click “Test strategy” to run a strategy in the test mode or “Run strategy” to execute a strategy in the real mode

8.Also if an indicator/strategy is open sourced, then you can clone a script in the corresponding editor (“Clone” button  in the “Indicators and Strategies” tab)

9.All purchased scripts appear in the Purchased Apps list, from which they can be downloaded at any time.

Note: If you log in with your ActTrader and FXApps credentials from another computer, you will have to download the scripts again in order to use them.

News Subscription

All available News Providers are displayed in the News tab of the Browse Catalogs section.

Important: In order to use news subscriptions, you need to be registered with FXApps.

Buying a Subscription

1.Select a Provider and click the Subscribe button on the FXApps main page, on the Subscription details page or on the Compare Apps page.

You can view the detailed description of a News Provider by clicking the Details link on the individual Provider’s tile:

2. Select the subscription period and click the Subscribe button.

3. The Final Checkout Review page will open with the News Provider period and price. Select the payment system by clicking the corresponding radio button, and then click the Submit Order button.

4. Web-page of the selected payment system will open where you can login with the existing account or create a new account, and complete the payment.

5. After payment is made corresponding News will automatically appear in the News window of ActTrader (FXVoyager/Windows/News), as well as in all the other trading applications: ActWebTrader, ActPhone, ActPad, ActDroid.

Note: You can subscribe to news only from ActTrader; in all the other applications you can just view the subscribed news.

6. You can easily monitor your Subscription Details such as Subscription Date / Subscriptions Type / Expiration Date / Last Payment Date on the List of Purchased Apps page.

7. You can prolong the selected subscription by clicking the Subscribe button on the FXApps main page, on the Subscription details page, on the Compare Apps page or “Actions” => “Make Payment” button on the List of Purchased Apps page.

Note: If you prolong the subscription which has not expired yet, then new purchased period will be applied only after expiration of the previous one.

Note: If you change your demo account, you can add previously purchased News to your new ActTrader account by clicking on “Actions” => “Add to Platform” button on the List of Purchased Apps page.

 

Using News from FXApps

1.Select a News Provider and subscribe to it.

2.Subscription will be applied to the ActTrader platform (FXVoyager/Windows/News), as well as to all the other trading applications: ActWebTrader, ActPhone, ActPad, ActDroid.

3.You can further customize News feed displayed in ActTrader using the filter (Settings->Windows-> News->Selected News Topics)

Recurrent Subscription

Recurrent subscription is available for news providers and other services with a limited period of use. With the recurrent payment system you do not need to renew your subscription every week or every month. The system will automatically withdraw the predefined sum from your PayPal or Google account on the monthly basis giving you continuous access to the desired service, until you cancel the subscription.

Important: In order to use recurrent subscription, you need to be registered with FXApps.

Buying a Recurrent Subscription

1.Select an item and click the Subscribe button on the FXApps main page, on the Subscription details page or on the Compare Apps page.

2.Select the “Recurrent” subscription period from the pop-up window and click the Subscribe button.

3.The Final Checkout Review page will open for the corresponding item with recurrent period and price. Select the payment system by clicking the corresponding radio button, and then click the Submit Order button.

Note: You can change the subscription period by clicking on the gear icon

4.Web-page of the selected payment system will open where you can login with the existing account or create a new account, and complete the payment.

4.1. PayPal confirmation page opens inside the FXApps Store:

4..1. If you cancel the payment (by clicking on Cancel and return to FXAppStore link), the correspondign message will be shown in FXApps and the purchase will be canceled.

4.1Google Wallet confirmation page opens in the external browser; during validation FXApps displays the following page:

4.1.1. Google Wallet confirmation start page includes the selected item name and its price. After clicking on the Start now button Google will ask to log in.

Note: If you already have authorized with Google, this page will be skipped

 

4.1.2. Before processing the payment Google will ask you to confirm the bill

 

4.1.3. After successful transaction Google will send the receipt via e-mail.

4.1.4. The last page shown after clicking  the Done button will show your Order ID. This is the last operation in external browser, so it can be closed.

4.1.5. You can cancel the payment process any time by closing Google pop-up window. After closing the external browser, the following message will be displayed in  the FXApps window of ActTrader:

5.After payment is made, the corresponding Subscription will automatically appear in the List of Purchased Apps. You can easily monitor the Subscription Details such as Subscription Status / Subscription Date / Subscriptions Type / Expiration Date / Last Payment Date on the List of Purchased Apps page.

6.You can cancel the selected recurrent subscription by clicking the Actions => Cancel Recurring button on the List of Purchased Apps page.

6.1If the payment was made with PayPal – cancellation of the recurring subscription will be made automatically after clicking on the Cancel Recurring button

6.2If the payment was made with Google Wallet – you will need to unsubscribe from the recurring subscription on your personal Google page. After clicking on  the Cancel Recurring button, the page with instructions will be displayed:

6.2.1. The above link opens the external browser with the subscription information

6.2.2. After clicking on the Update or cancel your subscription, you will be able to see current subscription status. Here you can cancel subscription by clicking the corresponding button:

6.2.3. Google will ask for additional confirmation:

6.2.4. After confirmation, the corresponding FXApps subscription will be canceled. FXApps will send you the cancellation notification via internal FXApps message and by e-mail.

 

6.3After cancellation of the recurrent subscription the corresponding item will change its type from “Recurring” into “1 Month” (till the end of the subscription period) in the Subscription Details table on the List of Purchased Apps page

Note: You can restore your recurring subscription by clicking the Subscribe button on the FXApps main page, on the Subscription details page, on the Compare Apps page or “Actions” => “Make Payment” button on the List of Purchased Apps page and selecting the “Recurring” period.

Note: If you prolong (start recurring) the subscription which has not expired yet, then new purchased period will be applied only after expiration of the previous one.

Additional features

News

The latest updates in FXApps are reflected in the News section:

Compare items

You can compare any items (including News Providers) available in FXApps. Just follow the instructions below:

1.Select the desired item by clicking the Add To Compare link:

2.Place the check marks for the items you want to compare. You can check up to 3 items at a time:

3.Click the Compare button. Compare Apps screen will open:

4.To remove an item from the Compare list, click the red X button. You can remove all items from the list by clicking the Clear All button

Contact Us

You can send us your questions and proposals through the Contact Us page

Messages

You can receive messages from the FXApps admin and view them on the Messages page. The number of unread messages is displayed in the Messages link

[/dt_sc_toggle][dt_sc_toggle title=”Trading Opportunities”]

The Trading Opportunities window allows to monitor chart patterns provided by Autochartist in real time. Chart patterns are automatically identified on every instrument within different timeframes.

Chart patterns are very helpful in generating trading signals, detecting support and resistance levels, trend direction and reversal points.

Note: In order to receive chart patterns directly in ActTrader platform, you need to subscribe for Autochartist service in our FXApps (see Browse Catalogs > Plug-ins > Chart plug-ins)

Trading Opportunities window displays the following parameters for each pattern:

Instrument: only the instruments subscribed in ActTrader are presented in the table.

Direction: up, down

Interval: chart interval on which pattern is identified; can be 15m, 30m, 1h, 4h, 1d

Pattern name

Identified: date and time of pattern identification

Pattern type: Chart Pattern, Fibonacci pattern or Key Level. Click the pattern icon in this column to view preloaded image of the pattern with illustration of the trading signal. For example:

Quality of the pattern:  from 0 to 10 points.

Length (candles): number of candles that the pattern is comprised of

Type: Completed, Emerging

Age (candles):  number of candles created after pattern identification on the corresponding instrument/timeframe

Status: Active, Expired. A pattern becomes expired if its Age is equal or more than 10 candles.

 

Filtering

Right-click menu in this window allows to select which of the chart patterns to display:  Active, Expired or All

You can also filter out the window content by applying filters to its columns. Select Preferences > Filters from the right-click menu – the filter buttons will appear above each column. Clicking the filter button opens the dialog box where you can select the filter criteria (criteria and appearance of the dialog box depend on the selected column):

Click OK in the dialog to apply filter. If filter is applied to the column, the filter button on it turns into a clickable link displaying the selected criteria:

In order to remove the filter buttons and reset all filters in the window, remove the checkmark from the Filters option in the right-click menu.

Viewing Chart Pattern on Chart

In order to view a pattern detected by Autochartist on ActTrader’s chart, you can just double-click on a pattern line in the Trading Opportunities window. A new chart for corresponding instrument and timeframe will open with the selected pattern plotted on it:

You can also add Autochartist patterns directly to an open chart by clicking the Autochartist button on the chart toolbar and selecting from the available pattern types: Pattern (for example: Triangle, Head and Shoulders etc.), Fibonacci (for example: 3 Drive, ABCD) or Key Level (for example: Support, Resistance).

 

After selecting pattern type, the last identified pattern will be plotted on the chart.

Note: Any pattern of the selected type will be displayed on chart, but only the one which has formed last.

Each type has its own set of parameters which are displayed in the additional Patterns panel at the left side of the chart.

You can also customize the color, width and stile of the lines for each pattern type in the Autochartist section of the Chart Settings window accessible from the right-click menu on a chart:

[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”MQL4->ActFX converter” tab_id=”1688036055504-6-6″][dt_sc_toggle_group][dt_sc_toggle title=”MQL4->ActFX converter”]

The MQL4->ActFX converter can be used in ActFX for converting MQL4 expert advisers into ActFX strategies.

“MQL4->ActFX converter” allows to convert open-source Expert Advisers (“*.mq4” files) and MQL libraries (“*.mqh” files). Converter automatically recognizes the file extension and corrects the output file.

The functionality is easy to use.

To convert an MQL4 Expert Adviser, click the “MQL4->ActFX converter” button located in FXVoyager->ActFX tab and in the Scripts Editor panel:

The Open dialog window will appear where you can select an MQL4 expert adviser:

If selected (*.mq4) script has errors and cannot be converted to the ActFX language for any reason, you will be notified with the corresponding message. This message consists of the error type and row/column index of this error in the source script.

If script is converted correctly, it will be automatically opened in the Strategy Editor.

After that you need to compile the script using “Compile” or “Compile and add” buttons

If the script contains a custom library, then this library should be converted separately:

To convert an MQL4 library, click the “MQL4->ActFX converter” button located in FXVoyager->ActFX tab and in the Scripts Editor panel and select corresponding (*.mqh) library file in open dialog window:

If selected library has errors and cannot be converted to the ActFX language for any reason, you will be notified with the corresponding message. This message consists of the error type and row/column index of this error in the source script.

If library is converted correctly, it will be automatically opened in the Strategy Editor.

NOTE: The library can be compiled but it shouldn’t be “run”. It is automatically used in main script (“easyLMA_v6MM.acts” Strategy in example above).

A simple example of external ActFX libraries can be found here.

After compiling a script ActFX compiler will notify you if converted (ActFX) code needs to be manually corrected (There are any Incompatible types, Syntax errors etc. – read more).

After script is compiled and added to the “Indicators and Strategies”  (by clicking on the “compile and add” button), you can run it in real or test mode using the corresponding buttons.

NOTE: Unlike the manually created ActFX strategies, the strategies converted from MQL4 language do not show indicators on the Strategy’s chart, but use only their values (same logic is used in mql4 expert advisers).

After strategy is started you can monitor the strategy activity in the corresponding tabs: Open positions/Orders/Closed Positions/Statistics/Log

[/dt_sc_toggle][dt_sc_toggle title=”Possible errors”]Most common modifications needed to compile a script:

Incompatible types

Unlike MQL4, ActFX supports only strict type variables. So if a function contains a parameter of integer type, then only integer value can be used for this parameter in the converted script.

ActFX Strategy Editor will return one of the following messages:

Compilation Error: Incompatible types

Compilation Error: Incompatible types: ‘Integer’, ‘Extended’

Compilation Error: Incompatible types: ‘Integer’, ‘Boolean’

Compilation Error: Incompatible types: ‘Extended’, ‘Boolean’

To fix the problem all you need is to use one of the “Mathematical” or “Data Type Conversion Functions” described here.

Identifier redeclared

There are several differences in syntax of variables usage between MQL4 and ActFX languages.

Cannot open file

For using external libraries “*.mqh” they need to be converted to the “*.actlib” files.

External libraries usage in ActFX is described here

NOTE: Name of the library should be similar to *.mqh library. Each external library file in ActFX can have additional structure line: Begin end.

Example:

uses ‘LibMQL4.actlib’, ‘stdlib.actlib’, ‘stderror.actlib’, ‘WinUser32.actlib’, ‘HybridEA.actlib’;

“HybridEA.actlib” is a custom external library that needs to be converted separately.

Solution:

External library should be converted separately from expert adviser.

NOTE: Compiled external libraries “*.ex4” cannot be used in ActFX. Corresponding request will be automatically converted to the constant: const import_3 = ‘MyLib.ex4’;

Undeclared identifier

MQL4 converter Errors

 

[/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][dt_sc_tab title=”ActFX” tab_id=”1689669994538-7-4″][dt_sc_toggle_group][dt_sc_toggle title=”Indicators and Strategies”]

The Indicators and Strategies window allows to access and organize all scripts (indicators and strategies, both downloaded from FXApps and compiled manually).

The Indicators and Strategies window consists of the toolbar and three tabs: Standard, MyApps, and Favorite.

The Standard tab contains preloaded Indicators and Strategies. You cannot modify scripts or folders in this tab. But if a script has an open source, you can create an editable copy of it by clicking the “Clone” button on the window toolbar.

You can create/add/modify/move/delete scripts/folders in the MyApp tab using corresponding tools on the toolbar.

Also you can add  scripts to a “Favorite” list. Marked scripts will be automatically added to the Favorite tab.

You can use any scripts, available in the Indicators and Strategies: you can run/test selected strategy or add selected indicator to one of the opened charts or to the new one.

Note: All scripts downloaded (purchased) from FXApps store will be automatically added to the MyApp tab in the root catalog (strategy or indicator).

Indicators and Strategies Toolbar

The main toolbar of the Indicators and Strategies window gives the user quick access to the main functions of the window

[/dt_sc_toggle][dt_sc_toggle title=”Algorithmic Trading”]In this section you can find the main information of how to create and improve a custom strategy.

 

General Script Structure

A user strategy is a script consisting of a number of procedures. Some of the procedures
are triggered by certain events occurring in the system,

while others can be called manually by the user.

Saved strategy script files have a *.acts extension. The strategy script has the
following general structure:

 

const


StrategyName =
‘The Name of Your Strategy’;


StrategyVersion =
‘1.0’;
{used to synchronize with FxApps}

 

var

{There global variables are declared
here}

 

procedure
OnCreate;

begin

{This procedure runs when the strategy window is
opened (when you click ‘Run’)}

end;

 

procedure
OnStart;

begin

{This procedure runs when the strategy is
started}

end;

 

procedure
OnOrderChange(
const Action:
TDataModificationType;
const Order:
TOrder);

begin

 {This procedure runs every time when an order
is created, executed/removed or modified}

end;

 

procedure
OnTradeChange(
const Action:
TDataModificationType;
const Trade:
TTrade);

begin

{This procedure runs when a position is opened,
closed or modified}

end;

 

procedure
OnAccountChange(
const Action:
TDataModificationType;
const
Account: TAccount);

begin

{This procedure runs when the following occurs
in any of the trader’s accounts: balance change, group account changes, default
amount change, markups adjustment}

end;

 

procedure
OnCommand(
const
Command:
String);

begin

{This procedure runs when you send a command
using ‘Command’ button}

end;

Note: All procedures in strategy are optional.

Strategy Editor

Strategy Editor is a dedicated internal application designed for creating, reviewing
and editing strategy scripts:

Editor Interface

In order to access the User Strategy Editor, go to the main application
menu=> ActFX => Strategy Editor.

The ICTS Strategy Editor has the following interface:

 

 

1)Tabs for each
opened script

2)The main menu

3)Create a script

4)Open a script

5)Save the script

6)Print the script

7)Cut the selected
text

8)Copy the selected
text

9)Paste from the
clipboard

10)Undo

11)Redo

12)Compile the script

13)Compile the script
and add it to the Strategy List, or update it

14)Run the strategy

15)Test the strategy

16)The body of the
script

17)Vertical cursor
position in the editor (line #)

18)Horizontal cursor
position in the editor (column #)

19)Debugger window

Creating a strategy

In order to create a strategy, you have to go through the following steps:

Writing a script

 

You can open and edit an existing script (File => Open (  )), or create a new one (File => New (  )).

The script you are writing needs to be saved on your hard disk. In
order to do this use File => Open (  ) or it will be automatically provided to you when you try to
compile a script.

We strongly recommend that you do not save your strategies in the
application folder.

 

Compiling the script

 

After you finish writing your code, you need to compile it. This will
translate your script into machine code.

This can be done by:

 – clicking
the ‘Compile‘ button (  ) on the Strategy Editor Toolbar or

 – selecting
Tools => Compile Current (  ) or

 – pressing
the F9 button on the keyboard.

If there are no errors, the debugger will show the message “Compiled
successfully”.

If the script contains any errors, the debugger will indicate them.
It will show the type of every error, the line # and the column #, therefore it will be easy to
find and correct them.

 

If you wish, you can also hide the script when compiling your
strategy. You can create a file with the extension *.actsc, and use it in the same way as a file
with the extension *.acts,

however it will not be possible to open such a file from the Strategy
editor to see or edit the script. This feature allows you to share your strategies without
revealing your code.

You can create a file with the extension *.actsc by selecting File => Save As Compiled.

 

Adding the strategy to the Indicators and
Strategies window

 

In order to use your strategy, you have to add it to the Indicators
and Strategies window. This window contains the list of all strategies ready for backtesting or
execution/running.

This can be done by:

 – clicking
the ‘Compile and Add/Update‘ button (  ) on the Strategy Editor Toolbar or

 – selecting
Tools => Compile and Add/Update (  ) or

 – pressing
Ctrl + F9 combination on the keyboard.

If the strategy is already present in the Indicators and Strategies
window, it will be automatically updated.

 

After that you will be able to see your strategy in the MyApps tab of
the ‘Indicators and Strategies’ window.

 

To open the Indicators and Strategies window,  go to:

– Tools -> Indicators and Strategies or

– press the ‘Indicators and Strategies’ button (  ) on the Tools Toolbar.

 

 

You can manage available strategies from the ‘Indicators and Strategies’ window.
You can add a strategy by clicking ‘Add Script’, delete a strategy by clicking ‘Remove
Script/Folder’,

or open the script for viewing or editing by clicking ‘Edit Script’.

You can make changes in any of the existing custom strategies at any time (these
changes will not affect the currently running strategies).

From this window you can also Run or Test a strategy in the Strategy Tester.

Cloning a Strategy

The clone function allows you to make changes in the strategy script and save it
under a new name, without affecting the original script.

In order to clone a strategy select File => Clone. The Save As window will
open. After you give a new name to the script, it will open in a separate tab.

The original script and the new script are completely independent, and you can
make changes in either one without affecting the other.

Also a strategy can be cloned via ‘Indicators and Strategies’ window. To do it,
go to the main application menu=> ActFX
=> Indicators and Strategies

Select a strategy and click the ‘Clone’ button

Strategy Data Types

The strategy script in ActFX utilizes different classes of objects:

TInstrument

TInstrument is a class which can be used to store an instrument along with all of
its properties.

In order to use an object from this class, you must declare it:

Var

 Instrument : TInstrument;

The objects belonging to this class have 7 fields:

a) Name: String – the instrument name

b) Buy: Double – the Ask rate

c) Sell: Double – the Bid rate

d) PointSize: Double – the smallest rate change that a given
dealing rate can make. Also known as a pip
(for example, the PointSize of EURUSD is
0.0001)

e) Id: String – the number of instrument in
the instrument list

f) CondDistance: Integer – the condition distance of the instrument
(in pips)

g) ContractSize: Double – the contract size
of the instrument (amount of 1
lot)

h) TradeStep: Double – the Trading Step of the instrument

i) PipValue: Double – the value of one pip per one contract in
system base currency at the current moment

j) NotionalValue(const BuySell: TBuySell):
Double – this function returns the Notional Value* on instrument per one lot (amount of 1 contract) according to trade direction (buy or
sell), which should be set as an argument

Below is an example of using an object Instr from the TInstrument class.

Example:

Let’s assume that the object Instr holds the instrument EURUSD. EURUSD is the first
on the instrument list, the current rate is 1.4223/1.4228, and the script includes the following
lines:

Var

 Instr : TInstrument;

 Number, Name : String;

 CondDst: Integer;

 Bid, Ask, PntSize, ContrSz, TradeStep, PipValue,
NotVal : Double;

 

// The ways how an instrument can be
assigned to the object will be described in the following chapters

Number := Instr.Id;

Name := Instr.Name;

Ask := Instr.Buy;

Bid := Instr.Sell;

PntSize := Instr.PointSize;

CondDst := Instr.CondDistance;

ContrSz := Instr.ContractSize;

TradeStep := Instr.TradeStep;

PipValue := Instr.PipValue;

NotVal := Instr.NotionalValue(bsBuy);

 

As a result we will get:

Number = 1

Name = EURUSD

Bid = 1.4223

Ask = 1.4228

PntSize = 0.0001

CondDst = 8

ContrSz = 10000

TradeStep = 10000

PipValue = 10

NotVal = 134950

* Notional Value

Trade’s Notional value is
the value of a trade in the system base currency.

Basically, notional value
is calculated by multiplying the trade amount by the rate of the instrument’s
first currency to the system base currency. The trade amount = [number of lots *
contract size], measured in the first currency of the instrument (also called
the contract or transaction currency).

1) For indirect currency
pairs (where the system base currency is the first currency) the notional value
is equal to the trade amount – there is no need to convert it.

2) Direct pair: The
system base currency is currency2 (quote currency), therefore the trade amount
should be converted into System Base Currency. In this case the notional value
of trade changes with every new tick, because the rate of the first currency in
the pair changes relative to the System Base Currency rate.

3) Cross pair: Requires
the MID price of the first currency / base currency. The MID price is the
average of the Dealer’s Bid and Ask rate: MID = (BID + ASK)/2. In this case the
notional value of trade also changes with every new tickat the current moment

TAccount

TAccount is a class which can be used to store an account along with all of its
properties.

In order to use an object from this class, you must declare it:

Var

 Acc: TAccount;

The objects belonging to this class have 5 properties:

a) Id: String – the account number

b) Balance: Double – the account balance

c) Equity: Double – the account equity

d) UsedMargin: Double – the used margin

e) EquityLevel: Double – the equity level, %
(Equity Level= Equity/Used Margin*100)

Below is an example of using an object Acc from the class TAccount.

Note: In the strategy’s testing mode Balance, Equity,
Used Margin and Equity Level values will not change.

Example:

Let’s assume that the object Acc holds the account number 12434, with a $2000
balance, and a $2250 equity. The used margin is $500, and the equity level is 450%. The script
includes the following lines:

Var

 Acc : TAccount;

 AccNum: String;

 Balance, Equity, UsedM, EqLevel : Double;

 

// The ways how an account can be assigned
to the object will be described in the following chapters

AccNum := Acc.Id;

Balance := Acc.Balance;

Equity := Acc.Equity;

UsedM := Acc.UsedMargin;

EqLevel := Acc.EquityLevel;

As a result we will get:

AccNum = 12434

Balance = 2000

Equity = 2250

UsedM =  500

EqLevel =  450

TOrder

TOrder is a class which can be used to store an order along with all of its
properties.

In order to use an object from this class, you must declare it:

Var

 Ordr : TOrder;

The objects belonging to this class have 7 properties:

a) Id: String – the ticket number of the
order

b) Instrument: TInstrument– the instrument
on which the order is placed

c) Account: TAccount – the account on which
the order is placed

d) Tag: String – the order tag which can be
used to mark an order in the script

e) Rate: Double – the order rate

f) BuySell: TBuySell – the direction of
order . See TBuySell type below in this section.

g) OrderType: TOrderType – the type of
order. There are 14 different types of orders:

0: otInit – a market order to open a position

1: otRejInit – a market order rejected by the dealer

2: otClose – a market order to close a position

3: otRejClose – an order to close a position rejected
by the dealer

4: otEStop – an Entry Stop type of order

5: otELimit – an Entry Limit type order

6: otStop – a stop order on a position

7: otLimit – a limit order on a position

8: otMargin – a margin call order

9: otMinEquity –  an order to close the position due
to the Equity declining below the Minimal Equity level

10: otInitFailed –  failed market order due to
unsufficient usable margin

11: otEFailed – failed entry order due to
unsufficient margin or margin call

12: otStopFailed – failed stop order on a position
due to margin call

13: otLimitFailed – failed limit order on a position
due to margin call

Please note that the Instrument property holds the data type TInstrument, and the
Account property holds the data type TAccount. There are two ways to use this:

Example:

Let’s assume that the object Ordr holds the order placed on the instrument EURUSD.
EURUSD is the first on the instrument list, the current rate is 1.4223/1.4228), the account number
is 32234 (with a $2000 balance, and a $2250 equity), the order tag is ‘a123’, and the order ticket
is 988898.

Method 1:

The script includes the following lines:

Var

 Acc : TAccount;

 Ordr : TOrdr;

 Instr : TInstrument;

 Ticket, Tag : String;

 Bid, Ask, Balance : Double;

 

// The ways how an order can be assigned to
the object will be described in the following chapters

Ticket := Ordr.Id;

Tag := Ordr.Tag;

Instr := Ordr.Instrument;

Acc := Ordr.Account;

Ask := Instr.Buy;

Bid := Instr.Sell;

Balance := Acc.Balance;

As a result we will get:

Ticket = 988898

Tag = a123

Bid = 1.4223

Ask = 1.4228

Balance =  2000

As you can see, in order to get the current rate of the instrument on which the
order is placed, we had to create a Tinstrument type object Instr and attach it to the Instrument
property of the object Ordr. We had to do the same thing with the Account.

Method 2:

There is another way to use the information. In this case we do not need to create
additional objects. For instance, if we need to get the Ask rate of the Instrument on which the
order is placed, we can type the following line:

Ask := Ordr.Instrument.Buy;

In this case we need the following script:

Var

 Ordr : TOrdr;

 Ticket, Tag : string;

 Ask, Bid, Balance : double;

 

// The ways how an order can be assigned to
the object will be described in the following chapters

Ticket := Ordr.Id;

Tag := Ordr.Tag;

Instr := Ordr.Instrument;

Acc := Ordr.Account;

Ask := Ordr.Instrument.Buy;

Bid := Ordr.Instrument.Sell;

Balance := Ordr.Account.Balance;

We will get the same result as in the previous case:

Ticket = 988898

Tag = a123

Bid = 1.4223

Ask = 1.4228

Balance =  2000

TTrade

TTrade is a class which can be used to store an open position along with all of its
properties.

In order to use an object from this class, you must declare it:

Var

 OpenPos: TTrade;

The objects belonging to this class have 12 properties:

a) Id: String – the open position ticket

b) Instrument: TInstrument– the instrument
on which the position is opened

c) Account: TAccount – the account on which
the position is opened

d) Amount: Double – the number of lots

e) OpenRate: Double – the open rate

f) CloseRate: Double — the current close
rate

g) Tag: String — the position tag

h) NetPL: Double — the NetP/L of the open
position

i) LimitOrder: TOrder —  the limit on this
position (if there is one)

j) StopOrder: TOrder — the stop on this
position (if there is one)

k) BuySell: TBuySell – bsBuy or bsSell

l) StrategyId: String – the Id number of the
strategy which opened the position.

Below is an example of using an object OpenPos from the class TTrade.

Example:

Let’s assume that the object OpenPos holds a position with the following parameters:

1)Ticket = 12221

2)Instrument

 a) Id = 1

 b) Name = EURUSD

 c) Buy = 1.4223

d) Sell = 1.4228

3)Account

a) Id = 433334

b) Balance = 2000

c) Equity = 2200

4)Number of lots = 2

5)The open rate = 1.4225

6)The current close rate
= 1.4228

6)Tag = ‘a123’

7)Predefined stop =
1.4200

8)Predefined Limit =
1.4300

The script includes the following lines:

Var

 OpenPos : TTrade;

 PosTicket, InstNum, InstName, AccNum, PosTag:
String;

 Ask, Bid, Balance, Equity, PosAmount, Open, Close,
Stop, Limit: double;

 

// The ways how a position can be assigned
to the object will be described in the following chapters

PosTicket := OpenPos.Id;

InstNum := OpenPos.Instrument.Id;

InstName := OpenPos.Instrument.Name;

Ask := OpenPos.Instrument.Buy;

Bid := OpenPos.Instrument.Sell;

AccNum := OpenPos.Account.Id;

Balance := OpenPos.Account.Balance;

Equity := OpenPos.Account.Equity;

PosAmount := OpenPos.Amount;

Open := OpenPos.OpenRate;

Close := OpenPos.CloseRate;

PosTag := OpenPos.Tag;

NetPL := OpenPos.NetPL;

Limit:=OpenPos.LimitOrder.Rate;

Stop:=OpenPos.StopOrder.Rate;

As a result we will get:

PosTicket = 12221

InstNum = 1

InstName = EURUSD

Bid = 1.4223

Ask = 1.4228

AccNum = 433334

Balance = 2000

Equity = 2200

PosAmount = 2

Open = 1.4225

Close = 1.4228

PosTag = a123

Limit = 1.4300

Stop = 1.4200

TClosedTrade

TClosedTrade is a class which can be used to store closed position along with all of
its properties.

In order to use an object from this class, you must declare it:

Var

 ClosedPos: TClosedTrade;

The objects belonging to this class have 14 properties:

a) Id: String – the closed position ticket

b) Instrument: TInstrument – the instrument
on which the position was opened

c) Account: TAccount – the account on which
the position was opened

d) Amount: Double – the number of lots

e) OpenRate: Double – the open rate

f) CloseRate: Double — the close rate

g) CloseTag: String — the position close tag

h) NetPL: Double — the NetP/L of the closed
position

i) BuySell: TBuySell – Buy or Sell

j) OpenStrategyId: String – the Id number of
the strategy which opened the position

k) CloseStrategyId: String – the Id number
of the strategy which closed the position

l) OpenTime: TDateTime – the date and time
of position openning

m) CloseTime: TDateTime – the date and time
of position closing

n) Comment: String – the tickets comment

Example:

procedure
OnStart;

var

BuySellvar : TBuySell;    

begin

 ClosedTradeList.LoadData;

 Log(‘Id : ‘ +
ClosedTradeList.Get(0).Id);

 Log(‘Instrument : ‘ + ClosedTradeList.Get(0).Instrument.Name);    

 Log(‘Account : ‘ + ClosedTradeList.Get(0).Account.Id);  

 Log(‘Amount : ‘ + FloatToStr(ClosedTradeList.Get(0).Amount));

 Log(‘OpenRate : ‘ + FloatToStr(ClosedTradeList.Get(0).OpenRate));

 Log(‘CloseRate : ‘ + FloatToStr(ClosedTradeList.Get(0).CloseRate));

 Log(‘CloseTag : ‘ + ClosedTradeList.Get(0).CloseTag);

 Log(‘NetPL : ‘ + FloatToStr(ClosedTradeList.Get(0).NetPL));

If
ClosedTradeList.Get(0).BuySell = bsSell
then

   Log(‘BuySell : Sell’)

else if
ClosedTradeList.Get(0).BuySell = bsBuy
then

   Log(‘BuySell : Buy’);    

 Log(‘OpenStrategyId : ‘ + ClosedTradeList.Get(0).OpenStrategyId);  

 Log(‘CloseStrategyId : ‘ + ClosedTradeList.Get(0).CloseStrategyId);  

 Log(‘OpenTime : ‘ + DateTimeToStr(ClosedTradeList.Get(0).OpenTime));

 Log(‘CloseTime : ‘ + DateTimeToStr(ClosedTradeList.Get(0).CloseTime));

 Log(‘Comment : ‘ + ClosedTradeList.Get(0).Comment);

end;

Logged:

Id : 1843

Instrument : EURUSD

Account : 10

Amount : 425

OpenRate : 3.2319

CloseRate : 3.1319

CloseTag : YZoA7fKz*3

NetPL : -1357966.62

BuySell : Buy

OpenStrategyId :
// position was opened manually

CloseStrategyId :
// position was closed manually

OpenTime : 07.11.2012 9:14:43

CloseTime : 07.11.2012 9:15:18

Comment :
// there was no comment for trade

TTick

TTick is a class which can be used to store an individual tick from the chart along
with all of its properties.

In order to use an object from this class, you must declare it:

Var

 Tick : TTick;

The objects belonging to this class have 2 properties:

a) Time: TDateTime – Date and time of the
tick

b) Rate: Double – the Bid rate

Below is an example of using an object Tick from the class TTick.

Example:

Let’s assume that the object Tick holds a tick received on January 21, 2007 at
12:10:00. The tick rate was 1.4234, and the script includes the following lines:

Var

 Tick : TTick;

 TickTime : TDateTime;

 Rate : double;

 

// The ways how a Tick can be assigned to
the object will be described in the following chapters

TickTime := Tick.Time;

Rate := Tick.Rate;

As a result we will get:

TickTime = 12.01.2007 12:10:00

Rate = 1.4234

TCandle

TCandle is a class which can be used to store a candle from the chart along with all
of its properties.

In order to use an object from this class, you must declare it:

Var

 Candle : TCandle;

The objects belonging to this class have 9 properties:

a) Time: TDateTime – Date and time when the
candle was opened

b) Open: Double – the candle’s open rate

c) Close: Double – the candle’s close rate

d) High: Double – the candle’s maximum value

e) Low: Double – the candle’s minimum value

f) Median: Double – the candle’s median
value = (High+Low)/2

g) Typical: Double – the candle’s typical
value = (High+Low+Close)/3

h) Weighted: Double – the candle’s weighted
value = (High+Low+2*Close)/4

i) TickVolume: Integer – number of the ticks
contained in the candle with given index*

  * Number of ticks (prices) arrived in the system, on
current instrument, in period between begin and end of the candle with given index.

    Indirectly it may show the market activity level.

 

Below is an example of using an object Candle from the class TCandle.

Example:

Let’s assume that the object Candle holds a candle which was opened on January 21,
2007 at 12:10:00.  Open = 1.4230, Close = 1.4240, High = 1.4250, Low = 1.4210, and the program
includes the following lines:

Var

 History : TCandleHistory;

 Candle : TCandle;

 CandTime : TDateTime;

 Open, Close, High, Low: Double;

 Volume : Integer;

// The ways how a candle can be assigned to
the object will be described in the following chapters

Candle := History.Last(1);

CandTime := Candle.Time;

Open := Candle.Open;

Close := Candle.Close;

High := Candle.High;

Low := Candle.Low;

Volume := Candle.TickVolume;

As a result we will get:

 

CandTime = 12.01.2011 12:10:00

Open = 1.4230

Close = 1.4240

High = 1.4250

Low = 1.4210

Volume = 457

TChartInterval

Type

Description

CI_Tick

The tick chart interval.

CI_1_Minute

1 minute chart interval.

CI_5_Minutes

5 minute chart interval.

CI_15_Minutes

15 minute chart interval.

CI_30_Minutes

30 minute chart interval.

CI_1_Hour

1 hour chart interval.

CI_2_Hours

2 hour chart interval.

CI_4_Hours

4 hour chart interval.

CI_1_Day

1 day chart interval.

CI_1_Week

1 week chart interval.

CI_1_Month

1 month chart interval.

TStrategy

TStrategy is a class which can be used to store a user strategy along with its
properties.

We can use only one object from this class inside the strategy (Strategy:
TStrategy),

and we do not need to declare it.

The objects belonging to this class have 2 properties:

a) Caption: String;

b) Id: String;

Example:

Let’s assume that the strategy id is 4665, and the the script is as follows:

const

 StrategyName = ‘MyStrategy’;

 

var

 Capt: String;

 IdNum: String;

 

Capt := Strategy.Caption;

IdNum := Strategy.Id;

As a result we will get:

Capt = ‘MyStrategy’

IdNum = 4665

Lists of Objects

Lists are objects, while at the same time each individual member of the list is an
object as well.

ActFX allows you to work with 4 different collections:

1)TradeList – all open positions (as can be seen in the Open
Positions window, including the ones opened manually)

2)ClosedTradeList – specified list of closed positions, depends on
LoadSettings*property of ClosedTradeList.

3)OrderList – all orders (as can be seen in the Orders window,
including the ones opened manually)

4)AccountList – all accounts (as can be seen in the Account window)

Each of lists has 3 methods:

1)Count – returns number of objects in the list

2)Get – returns objects by Index

3)Find – returns objects by Id

The ClosedTradeList has additional method

4)LoadData – loads a list of closed trades from server

Constructor:

function
Count(): Integer;

function
Get(
const Index:
Integer): TTrade;
//or TClosedTrade, TOrder, TAccount

function
Find(
const Id:
String):
TTrade;  
//or TClosedTrade, TOrder, TAccount

procedure
LoadData();

Note: the Get() and Find() methods return objects of the TTrade, TClosedTrade,
TOrder and TAccount
types, so the objects that receive the values must be from the same class.

* ClosedTradeList.LoadSettings

Unlike other lists the ClosedTradeList works with historical data, the volume of which
can be unlimited.

For comfort handling of this data the ClosedTradeList has a property LoadSettings which is an object of TClosedTradeDataLoadSettings type.

The LoadSettings object is a container for a few ClosedTradeList’s settings:

Constructor:

property
Count: Integer;  
// number of last closed trades to load from
server

property
DaysAgo: Integer;
// number of last days(from now) for which to
load closed trades from server

property
Account:
String;
// specify the account number for which the
closed trades should be loaded

Any or all off these settings are not required, in case you didn’t specify them the next values will be
applied as default:

Account – the first from account
list;

Count – 100;

DaysAgo – Ignored;

Note: In case you specified both settings Count and DaysAgo – the last
one will have priority:

Data will be loaded for last ‘DayAgo’ number of days and the setting Count will be ignored.

 

Example for ClosedTradeList:

procedure
OnStart;

var


i: Integer;          

begin


ClosedTradeList.LoadSettings.Count := 50;  


ClosedTradeList.LoadSettings.DaysAgo := 5;  


ClosedTradeList.LoadSettings.Account :=
‘8’;  


ClosedTradeList.LoadData;


Log(
‘ClosedTradeList.Count: ‘ + IntToStr(ClosedTradeList.Count));

for i := 1
to
ClosedTradeList.Count – 1
do


Log(
‘ClosedTrade Id: ‘ + ClosedTradeList.Get(i).Id);

 

procedure
OnTradeChange(
const Action:
TDataModificationType;
const Trade:
TTrade);

begin

if Action =
dmtDelete
then  


Log(
‘Closed Trade CloseRate: ‘ +
FloatToStr(ClosedTradeList.Find(Trade.Id).CloseRate));

 

Each list has an index, which allows us to refer to individual objects.

The objects are numbered from 0 to (Count-1). For instance, there are 3 orders in the list.

The first one will be index number 0, the second one will be index number 1, and the last one will be index
number 2.

Therefore, to get the first object of the list, you should use 0
(zero) as passed index, like TradeList.Get(0);

 

Note: the Get() method returns objects from the TTrade, TClosedTrade, TOrder and
TAccount class, so the objects that receive the values must be from the same class.

 

Example 1
General:

 

You need to use the open trade with a ticket number 113423.

 

var


a: TTrade;

procedure
MyProc;

begin


a:= TTradeList.Find(
‘113423’);

Example 2 General:

Let us create a strategy that will output the tickets of all open positions, the id
numbers of all orders, and the numbers of all accounts into the log.

procedure OnStart;

var 

  i:integer;

begin

  for TradeList.Count-1   downto i:=0 do log(‘Trade (‘ + IntToStr(i) + ‘): ‘ + TradeList.Get(i).Id);

  for OrderList.Count-1   downto i:=0 do log(‘Order (‘ + IntToStr(i) + ‘): ‘ + OrderList.Get(i).Id); 

  for AccountList.Count-1 downto i:=0 do log(‘Account (‘ + IntToStr(i) + ‘): ‘ + AccountList.Get(i).Id);     

end;

Trade Functions

Trade functions are used to work with orders and positions.

CreateOrder

CreateOrder() function allows you to open a position at the current market rate.
It has 8 parameters:

 

1.Instrument:
TInstrument– the instrument.

2.Account: TAccount –
the account.

3.Amount: Double– the
number of lots.

4.BuySell: TBuySell–
buy or sell.

5.StopRate: Double –
the predefined stop order rate (enter ‘NullRate’ if you do not want to place a stop order).

6.LimitRate: Double –
the predefined limit order rate (enter ‘NullRate’ if you do not want to place a limit order).

7.TraderRange:
Integer – Trader Range.

8.OperationTag:
String – the custom order tag.

 

Custom order tags are used to make it easier to identify and access
the individual orders and consequent positions. Note that tags should have unique names.

You may want to use a counter for tagging the orders and positions.

Note: In the time of high market volatility, Bid and Ask rates can
change very frequently. In such condition it is advisable NOT to set predefined stop and limit
too close

        to the order execution rate, as it may result in a conditional
order reject causing the termination of a strategy.

Example: Let
us create a strategy that will open a buy position if the difference between High and Low of the
last finished candle is greater than 50 points.

It should also set a Stop 20 points below the Sell rate, and a Limit 60 points
above the Sell rate.

We will use the procedure OnNewCandle, as it runs when a new candle opens.
Remember, that you must set this function in the procedure OnCreate().

The script will be as follows:

const

 StrategyName=‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 History: TCandleHistory;

 Account: TAccount;

 Amount, Point: Double;

 Stop, Limit, TraderRange: Integer;

 

procedure OnCreate;

begin

 Settings.AddCandleHistory(@History, ‘Candle History’, ,
CI_1_Minute, 100);

 History.OnNewCandleEvent := @OnNewCandle;

 Settings.AddAccount(@Account, ‘Account’, );

 Settings.AddFloat(@Amount, ‘Amount(Lots)’, 5);

 Settings.AddInteger(@Stop, ‘Stop in pips’, 20);

 Settings.AddInteger(@Limit, ‘Limit in pips’, 60);

 Settings.AddInteger(@TraderRange, ‘Trader Range’, 2);

end;

 

procedure OnNewCandle;

begin

 Point := History.Instrument.PointSize;

if
((History.Last(1).High-History.Last(1).Low)>50*Point)
then

   CreateOrder(History.Instrument, Account,
Amount, bsBuy,

               History.Instrument.Sell
-Stop*Point,

               History.Instrument.Sell
+Limit*Point, TraderRange,
‘MyTrade’);

end;

Note: Since Stop and Limit are set in pips, in order to convert them to the same
measurement as the rates, we need to use the value of the PointSize property.

CreateEntryOrder

The CreateEntryOrder() Function allows you to place an entry order. It has 9
parameters:

1.Instrument:
TInstrument – the instrument.

2.Account: TAccount –
the account.

3.Amount: Double —
the number of lots.

4.BuySell: TBuySell —
buy or sell.

5.Rate: Double — the
entry rate.

6.StopRate: Double –
the predefined stop order rate (enter ‘NullRate’ if you do not want to place a stop order).

7.LimitRate: Double –
the predefined limit order rate (enter ‘NullRate’ if you do not want to place a limit order).

8.OrderType:
TOrderType — the order type. Values: otEStop, otELimit.

9.OperationTag:
String — the custom order tag.

Custom order tags are used to make it easier to identify and access the individual orders and
consequent positions. Note that tags should have unique names.

You may want to use a counter for tagging the orders and positions.

Example: Let
us create a strategy that will place 2 entry orders: one to buy at the rate 30 points higher
than the current rate, and

the other one to sell at the rate 50 points higher than the current rate.

The strategy should place orders when the Close rate of the last (current)
candle is higher than the Close rate of the previous candle.

We will use the procedure OnNewCandle as it runs every time a new candle appears
in the chart. Remember, that you must set this function in the procedure OnCreate().

The script will be as follows:

const

 StrategyName=‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 History: TCandleHistory;

 Account: TAccount;

 Amount, Point: Double;

 ESrate, ELrate, Stop, Limit: Integer;

 

procedure OnCreate;

begin

 Settings.AddCandleHistory(@History, ‘Candle History’, ,
CI_5_Minutes, 100);

 History.OnNewCandleEvent := @OnNewCandle;

 Settings.AddAccount(@Account, ‘Account’, );

 Settings.AddFloat(@Amount, ‘Amount(:Lots)’, 5);

 Settings.AddInteger(@ESRate, ‘ES in pips’, 30);

 Settings.AddInteger(@ELRate, ‘EL in pips’, 50);

 Settings.AddInteger(@Stop, ‘Stop’, 15);

 Settings.AddInteger(@Limit, ‘Limit’, 20);

end;

 

procedure OnNewCandle;

begin

 Point := History.Instrument.PointSize;

 if
History.Last.Close>History.Last(1).Close
then

  begin

    CreateEntryOrder(History.Instrument, Account,
Amount, bsSell,


History.Instrument.Sell+ELRate*Point,


History.Instrument.Buy+ELRate*Point+Stop*Point,


History.Instrument.Buy+ELRate*Point-Limit*Point,

                     otELimit, ‘EntryLimitSell’);

    CreateEntryOrder(History.Instrument, Account,
Amount, bsBuy,


History.Instrument.Buy+ESRate*Point,


History.Instrument.Sell+ESRate*Point-Stop*Point,


History.Instrument.Sell+ESRate*Point+Limit*Point,

                     otEStop, ‘EntryStopBuy’);

  end;

end;

CreateStopLimitOrder

The CreateStopLimitOrder() Function allows you to set stops and limits on open
positions (in case the position was opened without predefined stop and limit). It has 4
parameters:

1.Trade: TTrade – the
open position (object) on which the order is placed.

2.Rate: Double – the
stop or limit rate.

3.OrderType:
TOrderType — the order type. Values: otStop, otLimit.

4.OperationTag:
String — the custom order tag.

Example: Let
us create a strategy that will open a buy position when the strategy is started, without a
predefined stop and limit.

Then it will set a stop 20 points below the market rate, and a limit 30 points
above the market rate, once the Ask rate of the instrument rises above the predefined level,
indicated in the settings.

We will use the tick history for this strategy. The procedure OnNewRate will
check the conditions every time a feed update is received.

We will also use the procedure OnTradeChange in order to identify the position
that was opened when the strategy started.

After the Stop and Limit orders are created, the strategy will stop (terminate).

The script will be as follows:

const

 StrategyName = ‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 History: TTickHistory;

 Account: TAccount;

 Amount, Point: Double;

 Stop, Limit, TraderRange: Integer;

 MyTrade: TTrade;

 Rate: Double;

 

procedure OnCreate;

begin

 Settings.AddTickHistory(@History, ‘Tick History’, ‘EURUSD’, 100);

 History.OnNewRateEvent := @OnNewRate;

 Settings.AddAccount(@Account, ‘Account’, );

 Settings.AddFloat(@Amount, ‘Amount(Lots)’, 5);

 Settings.AddFloat(@Rate, ‘Rate to set Stop/Limit’, 1.7);

 Settings.AddInteger(@Stop, ‘Stop in pips’, 20);

 Settings.AddInteger(@Limit, ‘Limit in pips’, 60);

 Settings.AddInteger(@TraderRange, ‘Trader Range’, 3);

end;

 

procedure OnStart;

begin

 CreateOrder(History.Instrument, Account, Amount,
bsBuy,

             NullRate, NullRate, TraderRange,
‘MyPosition’);

end;

 

// this procedure is used to identify
the order when it is inserted

procedure OnTradeChange(const
Action: TDataModificationType;
const
Trade: TTrade);

begin

 if
(Action = dmtInsert)
and
(Trade.Tag=
‘MyPosition’) then
MyTrade:=Trade;

end;

 

procedure OnNewRate;

begin

 Point := History.Instrument.PointSize;

 if
History.Last.Rate>Rate
then

  begin

     CreateStopLimitOrder(MyTrade,
History.Instrument.Sell-Stop*Point,

                          otStop, ‘Stop’);

     CreateStopLimitOrder(MyTrade,
History.Instrument.Sell+Limit*Point,

                          otLimit, ‘Limit’);

     Terminate;

  end;

end;

CreateStopLimitOnEntry

The CreateStopLimitOnEntry() Function allows you to set stops and limits on a
placed entry order (in case the order was created without predefined stop and limit). It has 4
parameters:

1.EntryOrder: TOrder;
– the entry order, on which the conditional order is placed.

2.Rate: Double – the
stop or limit rate.

3.OrderType:
TOrderType — the order type. Values: otStop, otLimit.

4.OperationTag:
String — the custom order tag.

Example: Let
us create a strategy that will place an Entry Stop Buy Order 40 points above the market rate
when it is started, without a predefined stop and limit.

Then it will set a stop 25 points below the entry order rate, and a limit 40
points above the entry order rate, once the difference between the close

and the open rate of the last finished candle is bigger than 20 points.

We  will use the candle history for this strategy. The procedure OnNewCandle
will check the conditions every time a new candle appears.

We will also use the procedure OnOrderChange to identify the order which was
placed when the strategy started. After the Stop and Limit orders are created, the strategy will
stop (terminate).

The script will be as follows:

const

  StrategyName=‘My Strategy’;

  StrategyVersion = ‘1.0’;

 

var

  History: TCandleHistory;

  Account: TAccount;

  Amount, Point: Double;

  Stop, Limit, ESRate: Integer;

  MyOrder: TOrder;

 

procedure OnCreate;

begin

  Settings.AddCandleHistory(@History, ‘Candle History’, CI_1_Minute, 100);

  History.OnNewCandleEvent := @OnNewCandle;

  Settings.AddAccount(@Account,‘Account’);

  Settings.AddFloat(@Amount, ‘Amount(Lots)’, 5);

  Settings.AddInteger(@Stop, ‘Stop in pips’, 25);

  Settings.AddInteger(@Limit, ‘Limit in pips’, 40);

  Settings.AddInteger(@ESRate, ‘Entry Stop Distance in pips’, 40);

end;

 

procedure OnStart;

begin

  Point := History.Instrument.PointSize;

  CreateEntryOrder(History.Instrument,  Account,  Amount, bsBuy,

                   History.Instrument.Buy + ESRate*Point,

                   NullRate, NullRate, otEStop, ‘EntryStopBuy’);

end;

 

// this procedure is used to identify the order when it is inserted

procedure OnOrderChange(const Action: TDataModificationType; const Order: TOrder);

begin

  if (Action = dmtInsert)  and (Order.OrderType = otEStop) and

     (Order.Tag=‘EntryStopBuy’then

    MyOrder := Order; 

end;

 

procedure OnNewCandle;

begin

  if History.Last(1).Close – History.Last(1).Open > 20*Point  then

    begin

      CreateStopLimitOnEntry(MyOrder, MyOrder.Rate-(History.Instrument.Buy-History.Instrument.Sell)

                                                  -Stop*Point,otStop,‘Stop’);

      CreateStopLimitOnEntry(MyOrder, MyOrder.Rate-(History.Instrument.Buy-History.Instrument.Sell)

                                                  +Limit*Point,otLimit,‘Limit’);

      Terminate;

    end;

end;

CloseTrade

The CloseTrade() function allows you to close positions. In order to close a
position, you need to indicate the object from the TTrade class. The function has 4 parameters:

1.Trade: TTrade – the
open position which should be closed.

2.Amount: Double —
the number of lots.

3.TraderRange:
Integer — Trader Range.

4.OperationTag:
String — the custom order tag (may be used to identify closed positions).

     This is an optional parameter. It does
not have to be the same as the position tag.

Example: Let
us create a strategy that will open a buy position on start. Then it will close the position
when the Net P/L of the position is lower than or equal to -100 points.

We will use the OnNewRate procedure for this strategy, as it runs every time a
feed update is received. Remember that you must set this function in the procedure OnCreate().

The procedure OnTradeChange will be used to identify the position that was
opened when the strategy started. After the position is closed, the strategy will stop
(terminate).

const

 StrategyName=‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 History: TCandleHistory;

 Account: TAccount;

 Amount: Double;

 MyTrade: TTrade;

 TraderRange: Integer;

 

procedure OnCreate;

begin

 Settings.AddCandleHistory(@History, ‘Candle History’, ,
CI_1_Hour, 100);

 History.OnNewRateEvent := @OnNewRate;

 Settings.AddAccount(@Account, ‘Account’, );

 Settings.AddFloat(@Amount, ‘Amount(Lots)’, 5);

 Settings.AddInteger(@TraderRange, ‘Trader Range’, 2);

end;

 

procedure OnStart;

begin

 CreateOrder(History.Instrument, Account, Amount,
bsBuy,

             NullRate, NullRate, TraderRange,
‘MyPosition’);

end;

 

// this procedure is used to identify
the trade when it is inserted

procedure OnTradeChange(const
Action: TDataModificationType;
const
Trade: TTrade);

begin

if
(Action = dmtInsert)
and
(Trade.Tag =
‘MyPosition’) then
MyTrade:=Trade;

end;

 

procedure OnNewRate;

begin

if
((MyTrade.OpenRate-MyTrade.CloseRate)>=100*History.Instrument.PointSize)
then

  begin

     CloseTrade(MyTrade, MyTrade.Amount,
TraderRange,
‘MyPosition’);

     Terminate;

  end;

end;

Note: when the strategy is simultaneously closing a large number of open
positions, a situation may occur when the script will attempt to close a previously closed
position.

Also, your strategy might send a close order on a position regardless of the
fact that such order may already exist.

Each such situation constitutes an event. There are 4 system events which can be
managed (TSystemEvent class objects):

System events

System event

Description

EventTradeNotFound

The script tries to close a non-existent position

EventDuplicateCloseOrder

The script tries to place a close order regardless of the
fact that such order already exists

EventOrderCantBeRemoved

The script tries to remove a triggered order

EventOrderCantBeModified

The script tries to modify a triggered order

EventOrderIsCloseToMarket

The script tries to place order so close to the market price

 

To set the same reaction to all System events (described in the table below) use

 

SetSystemEventForAll(const
Reaction: TSystemEventReaction;

 

You can set an appropriate action for each of those events. There are 4 types of
action (TSystemEventReaction class objects):

System event actions

System event action

Description

serException

An exception will be raised. The strategy will be
terminated.

serMessage

The message will be output on the screen. The strategy will
continue to run.

serLog

The message will be output in the log. The strategy will
continue to run.

serNothing

Nothing will happen. The strategy will continue to run.

 

By default, the action to all the system events is set to serMessage. So if any
of them takes place, you will receive a message.

However, if you want some other action to be performed in any of these cases,
you can set it as desired.

Example:

 

EventTradeNotFound.Reaction := serLog;

 

Example: Let
us create a strategy that will close all the open positions when started, and output a message
in the log every time when a position cannot be closed:

const

 StrategyName = ‘MyStrategy’;

 StrategyVersion = ‘1.0’;

 

var

 TraderRange: Integer;

 

procedure OnCreate;

begin

 Settings.AddInteger(@TraderRange, ‘Trader Range’, 0);

end;

 

procedure OnStart;

var

 i: Integer;

begin

 EventTradeNotFound.Reaction := serLog;

 EventDuplicateCloseOrder.Reaction :=
serLog;

for
i:=Tradelist.Count-1
downto 0 do

   CloseTrade(TradeList.Get(i),
TradeList.Get(i).Amount,

              TraderRange,
TradeList.Get(i).Tag);

end;

Trailing Stop

SetTrailingStop

The SetTrailingStop() method allows you to set and modify trailing stop on a
position. In case the position already has a stop order, it will be replaced with trailing stop.

Constructor:

procedure SetTrailingStop(const Trade: TTrade; const TrailDistance: Integer; const OperationTag: String);

Trade — the open position on which the trailing stop should be placed or
modified

TrailDistance — the trailing
distance in pips.

OperationTag — the custom order tag. This is an optional parameter, it does not
have to be the same as the position tag.

Example:

procedure OnTradeChange(const
Action: TDataModificationType;
const
Trade: Ttrade);

begin

if
Action = dmtInsert
then

begin

   SetTrailingStop(Trade, 10, Trade.Tag);

Trailing Distance Value

If tailing stop is set on a position, you can find
out the Trailing Distance Value. This value is held in TrailDistance property of a TOrder
object.

The TrailDistance property is created for TOrder
object (Stop order only) at calling the SetTrailingStop procedure.

Constructor:

property TrailDistance: Integer;

Example:

procedure OnCommand(const
Command:
String);

var

 i: Integer;

 Order: TOrder;

begin

for i
:= TradeList.Count – 1
downto 0 do

begin

   Order := TradeList.Get(i).StopOrder;

  if
Order <>
nil then

     Log(‘Trail Distance: ‘ + FloatToStr(Order.TrailDistance));

end;

Nore: If returned value of TrailDistance is ‘0’
(zero), it means that Trailing Stop is not set for the position, but position has a Stop
order.

Order Actions
TOrder.Modify
TOrder.Remove

The Remove method of TOrder objects allows you to
remove orders. This method does not have any parameters.

For example, you have an object Ordr:TOrder, that holds an
order. To remove it, you need the following line:

 

Ordr.Remove;

 

Example1:
Let us create a strategy that will remove all the orders.

 

const

 StrategyName =
‘Orders’;

 StrategyVersion =
‘1.0’;

 

procedure OnStart;

var

 i: Integer;

begin

 for i:= OrderList.Count-1
downto 0 do

  begin

    if OrderList.Count>0
then


OrderList.Get(i).Remove;

  end;

end;

 

Example2:
Let us create a strategy that will remove all the stops and limits on the
open positions.

 

const

 StrategyName =
‘Orders’;

 StrategyVersion =
‘1.0’;

 

procedure OnStart;

var

 i: Integer;

begin

 for i:= TradeList.Count-1
downto 0 do

  begin

    if TradeList.Get(i).LimitOrder
<>
nil then


TradeList.Get(i).LimitOrder.Remove;

    if TradeList.Get(i).StopOrder
<>
nil then


TradeList.Get(i).StopOrder.Remove;

  end;

end;

TOrder.Comment and TTrade.Comment

The Comment method of TOrder and TTrade properties allows you to add/modify Comments in the Orders, Open Positions and
Closed positions windows:

OrderList.get(0).comment := ’Comment text’;  // add comment to the order

 

TradeList.get(0).comment := ’Comment text’;  // add comment to the Trade

In order to view Comments in the
Orders, Open Positions and Closed positions windows, use the following commands:

S := OrderList.get(0).comment; // S-string, return comment of the order or empty value

 

S := TradeList.get(0).comment; // S-string,  return comment of the trade or empty value

In order to delete Comments in
Orders, Open Positions and Closed positions windows use these commands:

OrderList.get(0).comment:=’’; // remove comment of the order 

 

TradeList.get(0).comment:= ’’; // remove comment of the trade

Note: Order execution may be delayed by several milliseconds or even seconds depending on speed and
quality of your internet connection.

Writing a strategy

Each strategy must have a unique name. It is specified in the const section of the script by declaring the constant
StrategyName.

Also there is a  constant StrategyVersion in the const section of the script. It’s used to synchronize the
script with FxApps, so

this parameter is not strongly required.

const


StrategyName =
‘My Strategy’


StrategyVersion =
‘1.0’;

StrategyName
value becomes the name of your strategy as displayed in the title of the strategy window:

Predefined Procedures

To write the first strategy you should learn how to work with predefined procedures.

OnCreate

When you launch the strategy, you first have to input necessary
settings before you proceed with executing that strategy.

The procedure OnCreate runs when the strategy window is opened (when
you click ‘Run’ from the Strategy List or Editor).

This procedure creates the strategy settings (and assigns default
values).

You can create any settings you need, but most strategies would
utilize at least the following: the instrument, the account and the time interval
for the chart data.

Let us describe the different possible settings, and the functions
that are used to create them.

a) Integer Type Settings

In order to add an integer data type setting, use the function Settings.AddInteger in
the procedure OnCreate.

Example:

Settings.AddInteger(@IntS,
‘Integer
Setting’
, 45);

The function Settings.AddInteger has
3 parameters:

1)@IntS – this is the variable that will hold
the value. It must be of the Integer type, and it must be declared in the global
variables list.

     Please note that the name of
this variable should be written with the @-prefix in the settings, but without it in
the global variables list.

2)‘Integer Setting’ – this is the label that
will appear in the settings tab.

3)45 – this is the default value.

 

 

 

b) Double Type Settings

In order to add a double data type setting, use the function Settings.AddFloat in the
procedure OnCreate.

Example:

Settings.AddFloat(@FS, ‘Float Setting’, 1.45);

The function Settings.AddFloat has 3
parameters:

4)@FS – this is the variable that will hold the
value. This variable must be of the Float type, and it must be present in the global
variables list.

     Please note that the name of
this variable should be written with the @-prefix in the settings, but without it in
the global variables list.

5)‘Float Setting’ – this is the label that will
appear in the settings tab.

6)1.45 – this is the default value.

 

 

 

c) String Type Settings

In order to add a string data type setting, use the function Settings.AddString in
the procedure OnCreate.

Example:

Settings.AddString(@SS, ‘String Setting’, ‘a123’);

The function Settings.AddString has 3
parameters:

7)@SS – this is the name of the variable that
will hold the value. This variable must be of the  String type, and it must be
present in the global variables list.

     Please note that the name of
this variable should be written with the @-prefix in the settings, but without it in
the global variables list.

8)‘String Setting’ – this is the label that
will appear in the settings tab.

9)‘a123’ – this is the default value.

 

 

Here is an example of using these types of settings:

Example:

To sum it all up, let us write a strategy that just creates a list
of settings: a Float setting, an Integer setting, and a String setting:

The script will be as follows:

const

 StrategyName = ‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 FS: Double;

 IntS: Integer;

 SS: String;

 

procedure OnCreate;

begin

 Settings.AddFloat(@FS, ‘Float Setting’, 1.45);

 Settings.AddInteger(@IntS,
‘Integer
Setting’
, 45);

 Settings.AddString(@SS, ‘String Setting’, ‘a123’);

end;

As a result, when we launch the strategy, we will see the following
results in the settings tab:

 

d) Account Settings

In order to add an account setting, use the function Settings.AddAccount in
the procedure OnCreate.

Example:

Settings.AddAccount(@Account,
‘Account’, ‘314’);

The Function Settings.AddAccount has
3 parameters:

10)@Acc – this is the name of the object that
will hold the value. This object must be of the  TAccount class, and it must be
declared in the global variables list.

     Please note that the name of
this object should be written with the @-prefix in the settings, but without it in
the global variables list.

11)‘Trading Account’ – this is the label that
will appear in the settings tab.

12)‘314’ – this is the default value.

Example:

Let us write a strategy that just creates a setting for an account.

The script will be as follows:

const

 StrategyName = ‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 Account: TAccount;

procedure OnCreate;

begin

 Settings.AddAccount(@Account,
‘Account’, ‘360’);

end;

As a result, such a strategy will build the following list of
settings:

e) Candle History Settings

A strategy normally uses chart data. Besides, one strategy can
utilize multiple time intervals (per instrument) and multiple instruments.

In order to add a candle history setting, use the function
Settings.AddCandleHistory in the procedure OnCreate.

Example:

Settings.AddCandleHistory(@History,
‘Candle History’, ‘EURUSD’, CI_1_Minute, 100);

The function Settings.AddCandleHistory has 5 parameters:

13)@History – this is the name of the object
that will hold the value. This object must be of the TCandleHistory class, and it
must be declared in the global variables list.

     Please note that the name of
this object should be written with with the @-prefix in the settings, but without it
in the global variables list.

14)‘Candle History’ – this is the label that
will appear in the settings tab.

15)‘EURUSD’ – the instrument name. This is the
default value.

16)‘CI_1_Minute’ – the time interval of a chart.
(Explained in more detail below). This is the default value.

17)100 — the number of preloaded candles. (You
need preloaded candles to calculate whatever indicators that you may want to use).
This is the default value.

The predefined time
intervals of the chart

Name

Description

CI_Tick: TChartInterval

The tick chart
interval.

CI_1_Minute:
TChartInterval

1 minute chart
interval.

CI_5_Minutes:
TChartInterval

5 minute chart
interval.

CI_15_Minutes:
TChartInterval

15 minute chart
interval.

CI_30_Minutes:
TChartInterval

30 minute chart
interval.

CI_1_Hour: TChartInterval

1 hour chart
interval.

CI_2_Hours: TChartInterval

2 hour chart
interval.

CI_4_Hours: TChartInterval

4 hour chart
interval.

CI_1_Day: TChartInterval

1 day chart
interval.

CI_1_Week: TChartInterval

1 week chart
interval.

CI_1_Month: TChartInterval

1 month chart
interval.

 

Example:

 

Let us write a strategy that just creates settings for a particular
instrument and chart interval.

The script will be as follows:

const

  StrategyName = ‘MyStrategy’;

  StrategyVersion = ‘1.0’;

 

var

  History: TCandleHistory;

 

procedure OnCreate;

begin

  Settings.AddCandleHistory(@History, ‘Candle History’‘EURUSD’, CI_1_Minute, 100);

end;

As a result, such a strategy will build the following list of
settings:

If your strategy uses more than one instrument, you can add settings
for each of these instruments.

Note: Each setting should have a unique label.

Example:

Let us write a strategy that just creates 5 instrument settings.

The script will be as follows:

const

  StrategyName = ‘MyStrategy’;

  StrategyVersion = ‘1.0’;

 

var

  History1: TCandleHistory;

  History2: TCandleHistory;

  History3: TCandleHistory;

  History4: TCandleHistory;

  History5: TCandleHistory;

procedure OnCreate;

begin

  Settings.AddCandleHistory(@History1, ‘Candle History1’‘EURUSD’, CI_1_Minute, 100);

  Settings.AddCandleHistory(@History2, ‘Candle History2’‘GBPUSD’, CI_5_Minutes, 50);

  Settings.AddCandleHistory(@History3, ‘Candle History3’‘USDCHF’, CI_30_Minutes, 200);

  Settings.AddCandleHistory(@History4, ‘Candle History4’‘USDJPY’, CI_1_Hour, 150);

  Settings.AddCandleHistory(@History5, ‘Candle History5’‘EURGBP’, CI_1_Day, 340);

end;

As a result, this strategy will build the following list of
settings:

 

When the strategy is started, each instrument chart will be
displayed in an individual tab.

f) Tick History Settings

If you want to use rate ticks in your strategy, you need to utilize
a tick history setting. Use the function Settings.AddTickHistory in the procedure
OnCreate.

Example:

Settings.AddTickHistory(@History,
‘Tick History’, ‘EURUSD’, 100);

 

The function  Settings.AddTickHistory has 4 parameters:

18)@History – this is the name of the object
that will hold the value. This object must be of the TTickHistory type, and it must
be present in the global variables list.

     Please note that the name of
this object should be written with the @-prefix in the settings, but without it in
the global variables list.

19)‘Tick History’ – this is the label that will
appear in the settings window.

20)‘EURUSD’ – the instrument name. This is the
default value.

21)100 — the number of uploaded ticks. This is
the default value.

 

Example:

Let us write a strategy that just creates the settings for the tick
history of one instrument.

The script will be as follows:

const

 StrategyName = ‘MyStrategy’;

 StrategyVersion = ‘1.0’;

 

var

 History: TTickHistory;

 

procedure OnCreate;

begin

 Settings.AddTickHistory(@History,
‘Tick History’, ‘EURUSD’, 100);

end;

As a result, such a strategy will build the following list of
settings:

OnStart

This procedure runs when you actually start executing(or testing)
the strategy after you are done with adjusting or modifying all the settings.

In other words, this procedure runs when you press ‘Start
Strategy’/’Test Strategy’.

Example:

Let us write a script that will just output the selected settings
into the log.

The script will be as follows:

Const

 StrategyName=‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 History: TCandleHistory;

 Account: TAccount;

 StrSetting: String;

 IntSetting: Integer;

 

procedure OnCreate;

begin

 Settings.AddCandleHistory(@History,
‘Candle History’, , CI_5_Minutes, 100);

 Settings.AddAccount(@Account,
‘Account’, ‘360’);

 Settings.AddString(@StrSetting,
‘String Setting’, ‘asd32’);

 Settings.AddInteger(@IntSetting,
‘Integer
Setting’
, 20);

end;

 

procedure OnStart;

begin

 Log(‘Strategy Started with the
following settings:’
);

 Log(‘Instrument: ‘ + History.Instrument.Name);

 Log(‘Account: ‘ + Account.Id);

 Log(‘String setting:
+ StrSetting);

 Log(‘Integer Setting:
+
IntToStr(IntSetting));

end;

Assuming that we are using the default values, the result will be as
follows:

Note that in order to output data into the log, it must be of the
string type. Therefore we used the IntToStr() function to convert integer type into
the string type.

OnTradeChange

This procedure runs when a position is opened, closed or modified.

The procedure OnTradeChange has 2 parameters:

1)Action:
TDataModificationType – the type of change:

a)
dmtInsert
– a position is opened

b)
dmtDelete
– a position is closed

c)
dmtUpdate
– a position is modified

2)Trade:
TTrade – the object from the TTrade class  that was affected by the change.

 

The objects Action and Trade can be accessed within the procedure.

Example:

Let us write a strategy that will output all the changes occurring
in the Open Positions Window into the log.

The script will be as follows:

const

   StrategyName=‘My Strategy’;

   StrategyVersion = ‘1.0’;

 

 

procedure OnTradeChange(const Action: TDataModificationType;
const Trade: TTrade);

begin

 Log(‘Some Changes were made in
open positions table’
);

 Log(‘Action: ‘ + IntToStr(Action));

 Log(‘Trade: ‘ + Trade.Id);

 Log(‘Instrument: ‘ + Trade.Instrument.Name);

 Log(‘Account: ‘ + Trade.Account.Id);

 Log(‘Lots count: ‘ + FloatToStr(Trade.Amount));

 Log(‘Close Rate: ‘ +
FloatToStr(Trade.CloseRate));

 Log(‘Position Tag: ‘ + Trade.Tag);

end;

As a result, the procedure OnTradeChange will run every time some
changes occur in the Open Positions Window, and

the information about the modified/opened/closed position will
appear in the log.

As a result, the output may look something like this:

OnOrderChange

This procedure runs every time when an order is created,
executed/removed or modified.

The procedure OnOrderChange has 2 parameters:

1)Action:
TDataModificationType – the type of change

a)
dmtInsert
– an order is placed

b)
dmtDelete
– an order is executed/removed

c)
dmtUpdate
– an order is modified

2)Order:
TOrder –  the object from the TOrder class that was affected by the change.

 

The objects Action and Order can be accessed within the procedure.

Example:

Let us write a strategy that will output all the changes that take
place in the Order Window into the log.

The script will be as follows:

Const

 StrategyName=‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

 

procedure OnOrderChange(const Action: TDataModificationType;
const Order: TOrder);

begin

 Log(‘Some Changes were made in
orders table.’
);

 Log(‘Action: ‘ + IntToStr(Action));

 Log(‘Order: ‘ + Order.Id);

 Log(‘Instrument: ‘ + Order.Instrument.Name);

 Log(‘Account: ‘ + Order.Account.Id);

 Log(‘Order Tag: ‘ + Order.Tag);

end;

As a result, the procedure OnOrderChange will run every time any
change occurs in the Order Window,

and the information about the modified/removed/placed order will
appear in the log.

As a result, the output may look something like this:

OnAccountChange

This procedure runs when the following occurs in any of the trader’s
accounts: balance change, group account changes, default amount change, markups
adjustment.

The procedure OnAccountChange has two parameters:

1)Action:
TDataModificationType – the type of change:

a) dmtUpdate
balance change, group account changes, default amount change, markups adjustment

2)Account:
TAccount – the object from the TAccount class that was affected by the change.

The objects Action and Account can be accessed within the procedure.

Example:

Let us write a strategy that will output all the changes that take
place in the Account Information Window into the log.

The script will be as follows:

Const

  StrategyName=‘My Strategy’;

  StrategyVersion = ‘1.0’; 

 

procedure OnAccountChange(const Action: TDataModificationType; const Account: TAccount);

begin

  Log(‘Some Changes were made in accounts table.’);

  Log(‘Action: ‘ + IntToStr(Action));

  Log(‘Account: ‘ + Account.Id);

  Log(‘Balance: ‘ + FloatToStr(Account.Balance));

  Log(‘Equity: ‘ + FloatToStr(Account.Equity));

end;

As a result, the procedure OnAccountChange will run every time any
change occurs in the Account Information Window,

and the information about the changed account will appear in the
log.

As a result, the output may look something like this:

OnCommand

ActFX enables the user to directly input specific commands which can
affect the strategy that is being executed.

Those can be used to place an order, close a position, make a record
in the log etc.

This procedure is used to define the custom commands that can be
used during the strategy execution.

Example:

Let us write a strategy that will output the used account number
into the log, when we type ‘acc’ in the command line.

The script will be as follows:

const

 StrategyName = ‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

 

procedure OnCommand(const Command: String);

begin

if Command = ‘acc’ then

   log (‘Account number:
+Account.Id);

end;

The command line is located in the very bottom of the strategy
window.

 

Example
2:

Let us write a strategy that will assign the value that we type in
the Command line to the variable Amount.

For instance, if we type ‘3’ in the command line, the variable
Amount will change its value to 3.

The script will be as follows:

Const

 StrategyName=‘My Strategy’;

 StrategyVersion = ‘1.0’;

 

var

 Amount: Integer;

 

procedure OnCreate;

begin

 Settings.AddInteger(@Amount,
‘Amount(Lots)’, 1);

end;

 

procedure OnCommand(const Command: String);

begin

 Amount := StrToInt(Command);

end;

As a result, every time we click ‘Send Command’, the procedure
OnCommand (const Command:String) will run, and transmit the value in the command
line as a parameter.

Please note that the Command parameter transmitted into the
procedure is of the string type; therefore it should be converted into the needed
type.

Using the candle history

Most strategies use chart data to make trading decisions.

In order to access a candle chart data, you must declare an object from the
TCandleHistory class. The candle history will be stored in that object:

var

 History: TCandleHistory;

You must also add a candle history setting (Settings.AddCandleHistory) in
the procedure OnCreate, and indicate the procedures that will run when a new rate is
received,

and when a new candle opens on the chart. This can be done as follows:

Example:

var

  History: TCandleHistory;

 

procedure OnCreate;

begin

  Settings.AddCandleHistory(@History, ‘Candle History’‘EURUSD’, CI_1_Minute, 200);

  History.OnNewCandleEvent := @OnNewCandle;

  History.OnNewRateEvent := @OnNewRate;

end;

 

 

procedure OnNewCandle;

begin

  …

end;

 

 

procedure OnNewRate;

begin

  …

end;

Note that the names of the procedures should be written with the @-prefix.

See detailed information about candle objects in the paragraph below

Candle objects

An object from the TCandleHistory class holds a number of
objects from the
TCandle class (each object from the TCandle class represents an individual
candle in the
chart).

The strategy will start working only after the specified number
of candles
is preloaded (as they are required for data analysis and/or indicators).

In the example above we indicated that the strategy  uses 200
candles.

As new candles appear, the chart history will expand and hold
the additional
values. Due to this it is sometime difficult to determine the exact number of
candles in the
chart.

In order to obtain this information, the Count method (of the
TCandleHistory
objects) is used .

Example:

a := History.Count;

As a result, the variable ‘a’ will hold the number of candles of
the chart
history.

There are 2 methods of the TCandleHistory objects to access
individual
candles. We can index the candles either from the oldest candle that we use in
the chart
going forward, or

from the most recent (current) one going backwards.

1)The Last() method

 

When using the Last() method, the index goes from the most
recent candle.
Note that indexing  starts with 0 not 1.

You can refer to the current candle as to Last(0), to the
previous one as to
Last(1), etc.

Here is an example of using this method:

a := History.Last(3).Close;

You can also refer to the current (the Last(0)) candle, as to
Last.

Example:

a := History.Last.Open;

The example below illustrates an alternative way to access
individual
candles.

var

 a: Double;

 Cand: TCandle;

 

 

Cand := History.Last(3);

a := Cand.Close;

2)The Get() method

When you are using the Get() method, the index starts
from the
oldest candle. Note that indexing  starts with 0 not 1.

You can refer to the oldest candle as to Get(0), to
the next one
as to Get(1), etc.

 

Example:

a := History.Get(5).Close;

It is obvious that the Last method is more convenient when you
want to refer
to the most recent candles, and the Get method is more convenient when you want
to refer to
the oldest candles.

Nevertheless, you can use any of the two methods to refer to any
candle in
the chart. You can combine the Last() or the Get() method with the Count method.
For
instance,

History.Last(0) =
History.Get(History.Count-1)

History.Last(1) =
History.Get(History.Count-2)

and vice versa

History.Get(0) =
History.Last(History.Count-1)

History.Get(1) =
History.Last(History.Count-2)

Using the tick history

Chart data can be presented in either candle or tick charts.

In order to access tick chart data, you must declare an object from the
TTickHistory
class. The tick history will be stored in this object:

var


History:TTickHistory;

You must also add a tick history setting (Settings.AddTickHistory) in the
procedure
OnCreate, and indicate the procedures that will run when a new rate is received.

This can be done as follows:

Example:

var


History: TTickHistory;

 

procedure
OnCreate;

begin


Settings.AddTickHistory(@History,
‘Tick History’, ‘EURUSD’,
100);


History.OnNewRateEvent := @OnNewRate;

end;

 

procedure
OnNewRate;

begin


end;

Note that the names of the procedures should be written with the @-prefix.

See detailed information about tick objects in the paragraph below

Tick objects


An object from the TTickHistory class holds the set number of objects from the TTick
class (each
object from the TTick class represents an individual tick in the chart).

The strategy will start working only after the specified number
of ticks is
preloaded
(as they are required for data analysis and/or indicators).

In the example above we indicated that the strategy uses 100
ticks.

As new ticks appear, the tick history will expand and hold the
additional
values. Due to
this it is sometimes difficult to determine the exact number of ticks in the
chart.

In order to obtain this information, the Count method (of the
TTickHistory
objects) is
used.

Example:

a
:= History.Count;

As a result, the variable a will hold the number of ticks of the
chart
history.

There are 3 methods of the TTickHistory objects to access
individual ticks.
We can index
the ticks either from the oldest tick that we use in the chart going forward, or

from the most recent (current) one going backwards.

1) The Last() method

 

When using the Last() method, the index goes from the most
recent tick. You
can refer to
the current tick as to Last(0), to the previous one as to Last(1), etc.

Here is an example of using this method:

a
:= History.Last(3).Rate;

You can also refer to the current (the Last(0)) tick, as to
Last.

Example:

a
:= History.Last.Rate;

The example below illustrates an alternative way to access
individual ticks.

var


a: Double;


T: TTick;

 

 

T
:= History.Last(3);

a
:= T.Rate;

2) The Get() method

When you are using the Get() method, the numeration goes from
the beginning
of the chart
history. The first tick is the tick number 0, the second one is the tick number
1, etc.

As a result, the last tick is the tick number 199. Here is an
example of
using this
method:

a
:= History.Get(5).Rate;

It is obvious that the Last method is more convenient when you
want to refer
to the most
recent ticks, and the Get method is more convenient when you want to refer to
the oldest
ticks.

Nevertheless, you can use any of the two methods to refer to any
tick in the
chart. You
can combine the Last() or the Get() method with the Count method. For instance,

History.Last(0) =
History.Get(History.Count-1)

History.Last(1) =
History.Get(History.Count-2)

and vice versa

History.Get(0) =
History.Last(History.Count-1)

History.Get(1) =
History.Last(History.Count-2)

Indicator Usage

It is common practice to use indicators in strategies. Strategies can be written to analyze
indicators’ signals
and make trading actions based on it.

It is common practice to use indicators in strategies. You can utilize both
standard
indicators and custom indicators in the Strategy Editor.

To work in strategies’ scripts with indicators’ scripts there are used
objects of TIndicatorScript class.

Introduce Indicator into Strategy

1)Declare
an object
from the TIndicatorScript class

2)Create
this object
in the procedure OnCreate.

Constructor:

function
TIndicatorScript.Create(CandleHistory:TCandleHistory,
CustomName:
String, OrigName:String);

CandleHistory – the chart where
indicator will be
added;

CustomName – the name of indicator
displayed on a
chart;

OrigName – the original name of used
indicator;

3)Set the
properties
of the newly created object (such as periods etc.) If you do not set the indicator
properties,
the default values will be used.

Example:

var

 MACD: TIndicatorScript;

 

procedure OnCreate;

begin

 MACD :=
TIndicatorScript.Create(History,
‘My MACD/OsMA’, ‘MACD/OsMA’);

 MACD.SetVariableValue(‘ShortPeriod’, 12);

 MACD.SetVariableValue(‘LongPeriod’, 26);    

 MACD.SetVariableValue(‘SignalPeriod’, 9);

 MACD.SetVariableValue(‘AT’,
‘Exponential’);      

 MACD.SetVariableValue(‘CalculationType’, cbClose);

end;

The used indicators will appear in the candle history settings (at
the time when
you set up the initial strategy parameters before the strategy is launched).

A lot of indicators consists of not the only graph but several, and even of
different
types.

Let’s take the MACD/OsMA indicator as an example with three graphs: two
lines and one
volume graph

Work with indicator’s graphs

Your indicator may have a TOHLCGraph which has four values on each
indicator’s candle:
Open, High, Low, Close – custom candlestick.

In this case you might need to get any of that value for some candle.

Work with OHLC indicator

To get the custom candlestick’s (TOHLCGraph) values from the script
you should
use following functions:


TOHLCGraph(TIndicatorScript.GetGraph(0)).OpenValue(Index);


TOHLCGraph(TIndicatorScript.GetGraph(0)).CloseValue(Index);


TOHLCGraph(TIndicatorScript.GetGraph(0)).HighValue(Index);


TOHLCGraph(TIndicatorScript.GetGraph(0)).LowValue(Index);


TOHLCGraph(TIndicatorScript.GetGraph(0)).TickVolume(Index);

Where Index is the index number
of
TIndicatorScript from the beginning.

To get the last value index should be equal to the
TIndicatorScript.Count-1

ActFX allows you to get the values of any of these lines at any given
candle.

Method GetGraph(n) of a TIndicatorScript object returns a TChartGraph
object –
indicator’s graph with n index number. Note: indexing  starts with 0 not 1.

TIndicatorScript.GetGraph

This returned TChartGraph
object has a
few methods for work with its values:

Get(), Last(), LastByCandle(), Count
:

The
Get() method allows you to get the value of
the
specified graph’s point by it own index number used as parameter.

The
Last() returns the value of the specified
graph’s point
by it own index number from the end of graph used as parameter. Works like Get(), but with indexing from another end of
graph. The
method Last may be used without parameter –
it’s equal
to Last(0)

The
LastByCandle() method allows you to get the
value of the
indicator on the specified candle. This method is helpful when referring to the
values of an
indicator that is shifted forward or backward in relation to the candle history or
indicator’s
graph has values not for each candle. In case if the value does not exist, the NaN
value will
returned.

The
Count method returns the number of graph’s
plotted
points on the chart.

When you are using the Get()
method, the
index starts from the oldest value. Note: indexing  starts with 0 not 1.

When using the Last() and
the LastByCandle() methods, the index goes
from the most
recent value.

So you can get the last value of the indicator in the following
ways:

a := MACD.GetGraph(1).Last(0);

a :=
MACD.GetGraph(1).Get(MACD.GetGraph(1).Count-1);

Method VariableValue of a TIndicatorScript object allows you to get the
value of global
indicator’s variable from the strategy script

TIndicatorScript.VariableValue

Constructor:

function VariableValue(const VariableName: String): Variant;

Example:

//In the indicator:
‘MACD
Indicator’:
——————————————–

var

 Variable1: Boolean; //variables meant to be
global

 Variable2: Double;

 

//In the strategy:
—————————————————————

var

 History: TCandleHistory;

 ScriptMACD: TIndicatorScript;

 

procedure OnCreate;

begin


Settings.AddCandleHistory(@History,
‘Candle
History’
,
, CI_1_Minute, 100);

 History.OnNewRateEvent :=
@OnNewRate;

 ScriptMACD :=
TIndicatorScript.Create(History,
‘MACD
Indicator’
,
‘MACD/OsMA’);

procedure OnNewRate;

begin

if
ScriptMACD.VariableValue(
‘Variable1’) then


Log(FloatToStr(ScriptMACD.VariableValue(
‘Variable2’)));

Method SetVariableValue of a TIndicatorScript object allows you to set
(assign) the
value of indicator’s global variable from the strategy script

TIndicatorScript.SetVariableValue

Constructor:

procedure SetVariableValue(const VariableName: Stringconst VariableValue: Variant)

Example:

//In the indicator
‘MACD/OsMA’:
——————————————–

var

 ShortPeriod:
Integer;

 Color: TColor;

 

//In the strategy:
—————————————————————

var

 ScriptMACD:
TIndicatorScript;

 

procedure OnCreate;

begin

 ScriptMACD :=
TIndicatorScript.Create(History,
‘MACD
Indicator’
,
‘MACD/OsMA’);

procedure OnCommand(const Command: String);

begin


ScriptMACD.SetVariableValue(
‘ShortPeriod’, 13);  


ScriptMACD.SetVariableValue(
‘Color’, clRed);

There is a possibility to configure the indicator’s Moving Average object from
the
strategy script – it gives you additional ease of work with indicators.

This functionality allows you to read the parameters of MA and set
them (assign
new values). To do so you should declare the TMovingAverage object in
a strategy

TMovingAverage usage

//In the indicator: ‘BB indicator’:
———————————————-

var


MA: TMovingAverage

 

//In the strategy:
—————————————————————

var


BolingerBands: TIndicatorScript;      


Bbands_MA: TMovingAverage;

procedure
OnCreate;

begin


BolingerBands:= TindicatorScript.Create(History,
‘Bollinger Bands’, ‘BB indicator’);


Bbands_MA:= BolingerBands.VariableValue(
‘MA’);


Bbands_MA.Period := 20;  


Bbands_MA.AverageType := makSimple;


Bbands_MA.CalculationType := cbClose;

Let’s write a strategy that will open a Buy position when the moving
average of the
Stochastic indicator (%D) crosses the bottom level bottom-up,

and a Sell position if it crosses the top level top-down.

Strategy example

const

  StrategyName = ‘MyStrategy’;

  StrategyVersion = ‘1.0’;

 

var

  History: TCandleHistory;

  Account: TAccount;

  Amount: Double;

  TopLevel, BottomLevel, TraderRange: Integer;

  Stochastic: TIndicatorScript;

 

procedure OnCreate;

begin

  Settings.AddCandleHistory(@History, ‘History’, CI_4_Hours, 100);     //setting up the chart history

  History.OnNewCandleEvent := @OnNewCandle;     //indicating the procedure to run when a new candle opens

  Settings.AddAccount(@Account, ‘Account’);                                      //the account number

  Settings.AddFloat(@Amount, ‘Amount(Lots)’, 1);                                     //the number of lots

  Settings.AddInteger(@TraderRange, ‘TraderRange (pips)’, 2);       //setting up the trader range in pips 

  Settings.SetIntegerRestrictions(@TraderRange, 0, 100, 1);     

  Settings.AddFloat(@TopLevel, ‘Top Level (%)’, 80);                  //setting up the specific top level

  Settings.SetFloatRestrictions(@TopLevel, 0, 100, 1);       

  Settings.AddFloat(@BottomLevel, ‘Bottom Level (%)’, 20);         //setting up the specific bottom level

  Settings.SetFloatRestrictions(@BottomLevel, 0, 100, 1);    

 

  Stochastic:= TIndicatorScript.Create(History, ‘Stochastic’‘Stochastic’);  

  Stochastic.SetVariableValue(‘SType’‘Full’);

  Stochastic.SetVariableValue(‘LBPeriod’, 5);       

  Stochastic.SetVariableValue(‘FastPeriod’, 1);    

  Stochastic.SetVariableValue(‘SlowPeriod’, 3);      

  Stochastic.SetVariableValue(‘TopLevel’, TopLevel);     

  Stochastic.SetVariableValue(‘BottomLevel’, BottomLevel);

end;

 

procedure OnNewCandle;

begin

  if (Stochastic.GetGraph(1).Last(1) > BottomLevel) and (Stochastic.GetGraph(1).Last(2) < BottomLevel) then

      CreateOrder(History.Instrument, Account, Amount, bsBuy, 

                  NullRate, NullRate, TraderRange, ‘StochasticTrade’);

 

  if (Stochastic.GetGraph(1).Last(1) < TopLevel) and (Stochastic.GetGraph(1).Last(2) > TopLevel) then

      CreateOrder(History.Instrument, Account, Amount, bsSell,

                  NullRate, NullRate, TraderRange, ‘StochasticTrade’);

end;

You are able to use both standard and custom indicators in the
strategy.

There is almost no difference between using standard and
custom
indicators. The only point is:

standard indicator is already ready to use, but custom
indicators
firstly have to be compiled and added to Indicators and Strategies before
you compile
the strategy which uses that indicator – learn more about Writing an
indicator.

Below is the list of standard indicator objects with
descriptions/examples of their usage.

Accelerator/Decelerator Oscillator
ADX

 

Previous version
(4.4)

Current version
(starting
from 4.5)

Object
Class:

ADX: TIndicatorADX;

ADX: TIndicatorScript;

Creating the
object:

ADX :=
TIndicatorADX.Create(History, ‘ADX’);

ADX:=
TIndicatorScript.Create(History, ‘Average
Directional
Movement Index’, ‘Average Directional Movement
Index’);

Getting
values:

Main ADX line

ADX.Graph.Last

ADX.GetGraph(0).Last

DI+ Line

ADX.DIPlusGraph.Last

ADX.GetGraph(1).Last

DI- Line

ADX.DIMinusGraph.Last

ADX.GetGraph(2).Last

Setting the
parameters:

Period

ADX.Period := 14;

ADX.SetVariableValue(‘Period’,
14);

Set ADX calculation
type
(Ordinary,  By Wilder):

ADX.SetVariableValue(‘ADXType’,
‘Ordinary’);

ADX.SetVariableValue(‘ADXType’,
‘By Wilder’);

Level  Settings

ADX.SetVariableValue(‘Level’, 20);

ADX:  Line
Parameters

Line Settings
Object
Class:

GS:
TLineGraphSettings;

Creating the Line
Settings
Object

ADX main line settings

GS:=
ADX.VariableValue(‘ADXLineSettings’);

DI+ line settings

GS:=
ADX.VariableValue(‘PlusDILineSettings’);

DI- line settings

GS:=
ADX.VariableValue(‘MinusDILineSettings’);

Level Line settings

 

GS:=
ADX.VariableValue(‘LevelLineSettings’);

Setting the
parameters:

Color

GS.Color := clGreen;

Style (psDot, psSolid,
psDash)

GS.Style := psSolid;

Width (1,2,3)

GS.Width:= 1;

Show the Line on a
chart (true,
false)

GS.Visible := True;

There are 2 types of ADX calculation: Ordinary and
By Wilder.
You can indicate the ADXType parameter in the procedure OnCreate
(‘Ordinary’,
‘By Wilder’).

If you do not include this setting, ‘Ordinary’ will
be used by
default.

Alligator

 

Previous version
(4.4)

Current version
(starting
from 4.5)

Object
Class:

Alligator:
TIndicatorAlligator;

Alligator:
TIndicatorScript;

Creating the
object:

Alligator :=
TIndicatorAlligator.Create(History,
‘Alligator’);

Alligator:=
TIndicatorScript.Create(History, ‘Alligator’,
‘Alligator’);

Getting
values:

Jaw Graph line

Alligator.JawGraph.Last

ADX.GetGraph(0).Last

Teeth Graph Line

Alligator.TeethGraph.Last

ADX.GetGraph(1).Last

Lips Graph Line

Alligator.LipsGraph.Last

ADX.GetGraph(2).Last

Setting the
parameters:

Jaw
setting

Create Jaw object

JMA :=
Alligator.VariableValue(‘JMA’);

Period Jaw

Alligator.PeriodJaws
:= 13;

JMA.Period := 13;

MA type (makSimple;
makExponential;

makSmoothed;
makWeighted)

JMA.AverageType :=
makSmoothed;

Price type (cbOpen;
cbClose;
cbHigh; cbLow; cbMedian; cbTypical; cbWeighted)

JMA.CalculationType :=
cbMedian;

Shift Jaw

Alligator.ShiftJaws :=
8;

Alligator.SetVariableValue(‘JShift’, 8);

Teeth
setting

Create Jaw object

TMA :=
Alligator.VariableValue(‘TMA’);

Period Teeth

Alligator.PeriodTeeth
:= 5;

TMA.Period :=5;

MA type (makSimple;
makExponential;

makSmoothed;
makWeighted)

TMA.AverageType :=
makSmoothed;

Price type (cbOpen;
cbClose;
cbHigh; cbLow; cbMedian; cbTypical; cbWeighted)

TMA.CalculationType :=
cbMedian;

Shift Teeth

Alligator.ShiftTeeth
:= 3;

Alligator.SetVariableValue(‘TShift’, 3);

Lips
setting

Create Jaw object

LMA :=
Alligator.VariableValue(‘LMA’);

Period Lips

Alligator.PeriodLips
:= 8;

LMA.Period := 13;

MA type (makSimple;
makExponential;

makSmoothed;
makWeighted)

LMA.AverageType :=
makSmoothed;

Price type (cbOpen;
cbClose;
cbHigh; cbLow; cbMedian; cbTypical; cbWeighted)

LMA.CalculationType :=
cbMedian;

Shift Lips

Alligator.ShiftLips :=
5;

Alligator.SetVariableValue(‘LShift’, 5);

Alligator:
Line Parameters

Line Settings
Object
Class:

GS:
TLineGraphSettings;

Creating the Line
Settings
Object

Jaw Line Settings

GS:=
Alligator.VariableValue(‘JawSettings’);

Teeth Line Settings

GS:=
Alligator.VariableValue(‘TeethSettings’);

Lips Line Settings

GS:=
Alligator.VariableValue(‘LipsSettings’);

Setting the
parameters:

Color

GS.Color := clGreen;

Style (psDot, psSolid,
psDash)

GS.Style := psSolid;

Width (1,2,3)

GS.Width:= 1;

Show the Line on a
chart (true,
false)

GS.Visible := True;

There are 7 different price values that can be used
for
calculating Alligator (for each line): Open, Close, High, Low,
Median, Typical
and Weighted.

You can indicate the Calculate By parameter in the
procedure
OnCreate (cbOpen, cbClose, cbHigh, cbLow; cbMedian; cbTypical;
cbWeighted).

If you do not include this setting, cbMedian will be
used by
default.

There are 4 types of moving average that
can be used
for calculating Alligator (for each line): Simple, Exponential,
Smoothed and
Weighted.

You can indicate the type you want as a
parameter in
the procedure OnCreate (makSimple; makExponential; makSmoothed;
makWeighted).

If you do not include this setting,
makSmoothed will
be used by default.

 

Aroon

 

Previous version
(4.4)

Current version
(starting
from 4.5)

Object Class:

Aroon:
TIndicatorAroon;

Aroon:
TIndicatorScript;

Creating the object:

Aroon :=
TIndicatorAroon.Create(History, ‘Aroon’);

Aroon:=
TIndicatorScript.Create(History, ‘Aroon’,
‘Aroon’);

Getting
values:

Aroon Oscillator

Aroon.Graph.Last (if
Aroon type
‘Oscillator’ is selected)

Aroon.GetGraph(0).Last

Aroon GraphUp

Aroon.GraphUp.Last (if
Aroon type
‘Indicator’ is selected)

Aroon.GetGraph(1).Last

Aroon GraphDown

Aroon.GraphDown.Last
(if Aroon
type ‘Indicator’ is selected)

Aroon.GetGraph(2).Last

Aroon Up Oscillator

Aroon.GetGraph(3).Last

Aroon Down Oscillator

Aroon.GetGraph(4).Last

Setting the
parameters:

Period

Aroon.Period := 14;

Aroon.SetVariableValue(‘Period’,
14);

Aroon type
Indicator/Oscillator

Aroon.IsOscillator :=
True;

Aroon.SetVariableValue(‘AType’,
‘Oscillator’);

Aroon.SetVariableValue(‘AType’,
‘Indicator’);

Top Level Settings

Aroon.SetVariableValue(‘TopLevel’,
70);

Buttom Level Settings

Aroon.SetVariableValue(‘BottomLevel’, 30);

Aroon:
Line Parameters

Line Settings
Object
Class:

GS:
TLineGraphSettings;

Creating the Line
Settings
Object

Aroon Up Line settings

GS:=
Aroon.VariableValue(‘UpSettings’);

Aroon Down Line
settings

GS:=
Aroon.VariableValue(‘DownSettings’);

Level Line Settings

GS:=
Aroon.VariableValue(‘LevelLineSettings’);

Setting the
parameters:

Color

GS.Color := clGreen;

Style (psDot, psSolid,
psDash)

GS.Style := psSolid;

Width (1,2,3)

GS.Width:= 1;

Show the Line on a
chart (true,
false)

GS.Visible := True;

Auto Trendlines

 

Previous version
(4.4)

Current version
(starting
from 4.5)

Object
Class:

AutoTrendlines:
TIndicatorAutoTrendlines;

AutoTrendlines:
TIndicatorScript;

Creating the
object:

AutoTrendlines :=
TIndicatorAutoTrendlines.Create(History,
‘AutoTrendlines’);

AutoTrendlines:=
TIndicatorScript.Create(History, ‘Auto Trend
Lines’, ‘Auto
Trend Lines’);

Getting
values:

Support line

AutoTrendlines.Support.Last

AutoTrendlines.GetGraph(0).Last

Resistance Line

AutoTrendlines.Resistance.Last

AutoTrendlines.GetGraph(1).Last

Setting the
parameters:

Period

AutoTrendlines.BarsToCalculate :=
34;

AutoTrendlines.SetVariableValue(‘BarsToCalculate’,
34);

Bars Back To Begin

AutoTrendlines.BarsBackToBegin :=
2;

AutoTrendlines.SetVariableValue(‘BarsBackToBegin’,
2);

Points To Break

AutoTrendlines.PointsToBreak := 1;

AutoTrendlines.SetVariableValue(‘PointsToBreak’,
1);

Auto
Trendlines:  Line Parameters

Line Settings
Object
Class:

GS:
TLineGraphSettings;

Creating the Line
Settings
Object

Support line settings

GS:=
AutoTrendlines.VariableValue(‘SupportSettings’);

Resistance line
settings

GS:=
AutoTrendlines.VariableValue(‘ResistanceSettings’);

Setting the
parameters:

Color

AutoTrendlines.ColorSupport :=
clGreen;

AutoTrendlines.ColorResistance
:= clRed;

GS.Color := clGreen;

Style (psDot, psSolid,
psDash)

GS.Style := psSolid;

Width (1,2,3)

GS.Width:= 1;

Show the Line on a
chart (true,
false)

GS.Visible := True;

ATR
Awesome Oscillator
Bollinger Bands
Chandelier Stop
CCI
DeMarker
Dual Moving Averages
Envelopes
Flipit
Fractals
Gann Swing Chartist
Gator
Hi Lo Activator
Ichimoku Kinko Hyo
Kairi
Keltner Channel
Linear Regression
MACD/OsMA
Momentum
MA
ParabolicSAR
Perry Kaufman’s Adaptive Moving Average
Pivot Points
Price Channel
Range Action Verification Index
Rate of Change
RSI
Standard Deviation
Stochastic
StochasticRSI
T3 Tilson
TRIX
Weighted Close
William’s Percent Range
Pattern: Morning and Evening Star
Pattern: Tweezer
Pattern: Engulfing

Examples of using the indicators can be found in FXApps store or at the ActFX forum

Specific Functions
Running Mode
System Type
Available Amount
Notional Value
System Base Currency
Periodical Action
Candle Custom Value
TimeFrame
Aborting a strategy

The Terminate function can be used to abort the execution of the strategy. For instance, you may want for the strategy to stop in case on an order reject.

In such case, the script should include the following lines:

procedure OnOrderChange(const Action: TDataModificationType; const Order: TOrder);begin

if (Order.OrderType = otRejInit) or (Order.OrderType = otRejClose) then     Terminate;

end;

Testing a strategy

Before you actually run your strategy, you can test it using historical data.

In order to test a strategy, it has to be present in the Indicators and Strategies (Tools => Indicators and Strategies or main application menu => ActFX => Indicators and Strategies (  )). Choose a strategy and click ‘Test’.

You can also test your strategy by clicking  the ‘Test Strategy’ button on the Strategy Editor toolbar (  ).

You will see the Strategy Tester window.

This window includes a space for charts, and 7 tabs:

1) Settings – the settings of the strategy

2) Test – the testing parameters

3) Open Positions – the positions opened by this particular strategy

4) Orders – the orders created by this particular strategy

5) Closed Positions – the positions opened and closed by this particular strategy

6) Trading Statistics – the statistics of the strategy

7) The internal log

These tabs are the same as the ones used used in the running strategy window, with the exception of the Test tab.

In the Test tab, you can set the time in the past from which to start testing, and the test speed, from low to high. Normally the strategy test is executed very fast.

If you want to observe the process more closely, you may adjust the test speed.

You can also pause the testing process at any time if you wish. These options make the testing process more flexible.

Adjust the settings in the Settings tab, and click ‘Start Testing’.

The opened positions, closed positions and orders are displayed in the same way as on the charts in the Running Strategy Window (as long as the options to show them in charts are enabled).

When the testing is finished, you can further modify different parameters, and start testing again.

Running a strategy

In order to run a strategy, it has to be  present in the Indicators and Strategies. Click the Indicators and Strategies button in the ActFX tab of the FXVoyager toolbar. Choose a strategy and click ‘Run’.

You can also run your strategy by clicking  the ‘Run Strategy’ button on the Strategy Editor toolbar ().

Note: Clicking ‘Run’ will not start the strategy right away. It will open the Strategy window,where  you can modify the strategy settings or use the default ones,

and launch the strategy by clicking ‘Start Strategy’.

Account selection

You can run a strategy on an individual account, managed (group) account or any of its components. Account can be selected before starting a strategy in the Account drop-down box of the strategy settings:

If you select a managed account, the strategy will trade from several accounts simultaneously. Position amount will be distributed between accounts belonging to the group according to the Managed order amount allocation mode selected in the Main Settings of ActTrader.

If strategy tries to open a position for amount that is not allowed by settings – the strategy will automatically correct amount to the nearest available value.

Example: Managed Order Amount Allocation Mode is set to Fixed Default Amount. Managed account consists of two accounts with different DAs: the first account has DA = 10% (that is 351 lots), the second has DA = 2 lots, i.e. minimum amount that can be open from the managed account is 353 lots. If the strategy tries to open a position for 10 lots, amount will be automatically corrected to 353 lots.

Please note: If you exit ActTrader, or close the window of a started strategy, the strategy will be stopped.

You can see an example of a started strategy in the picture above. The window includes chart(s) of the used instruments and 6 tabs:

1) Settings – the parameters of the strategy

 

2) Open Positions – the currently open positions created by this particular strategy

3) Orders – the outstanding orders created by this particular strategy

4) Closed Positions – the positions opened and closed by this particular strategy

5) Trading Statistics – the statistics of the strategy

6) The internal log – used to output system and script generated messages

Please make note of the Log tab. You can output your own records in this tab, by using the Log() function.

For instance, you want to output the word ‘Hello’ in the Log tab.

Your script has to include the following line:

Log(‘Hello’);

As a result, you will see the following record in the Log tab:

 

Please note:

1) Some records in the Log are made automatically, such as ‘Strategy Started’, ‘Strategy Stopped’, and various errors which stop the started strategy.

2) The time displayed in the log is the time shown in the WinTrader Application – not the time set on your computer.

If you are using several charts in your strategy, each chart will be displayed in a separate tab:

 

 

If you are using any indicators in your strategy, they will also be displayed on the chart(s):

The chart toolbar in the window of a started strategy contains the following buttons:

 

1.)Zoom buttons. These buttons allow you to zoom in, zoom out, and reset the zoom to the default chart display.

2.)Vertical Auto-Scale. The Vertical Auto-Scale button determines whether the vertical scale of the chart will automatically change in order to fit in all vertical data,

     whenever the chart is scrolled or zoomed.Zoom Out

3.)Crosshair. The crosshair tool turns the cursor into a crosshair, allowing you to pinpoint exact locations on the chart.

4.)Indicator Setup. Opens the indicator setup menu, where you can configure the indicators appearing in the chart.

5.)Apply Template. This is a pull-down menu allowing you to choose from the list of existing templates.

6.)Print Chart. Prints the chart.

7.)Save and Export chart data. This feature lets you export data from the current chart in the form of a table.

8.)Open Chart Table. This button will open the chart in the form of a table.

9.)Save Chart as Picture. This feature lets you save chart as graphical file.

10.)Save Chart. Saves chart (with all opened objects on it) in ActTrader for further using.

11.)Drawing Tools. This is a pull-down menu allowing you to choose from several drawing tools.

12.)Show Linked Objects. Allows you to show or hide objects which are linked with other chart of the same instrument.

13.)Delete Object(s). This button allows you to remove a selected line, or all lines, from the chart.

14.)Show/Hide Orders, Open and Closed Positions. Push this button to show/hide Orders, Open and Closed Positions on the chart.

     You can click on the arrow next to the button to hide/show these items separately.

15.)Chart Type. Allows you to select the type of the chart: candlestick, bar, or line.

16.)Indicator Log. Opens the window of indicator log.

17.)Chart Settings. Opens the chart settings menu.

Displaying Orders and Positions in the Chart

You can choose whether you want to see the entry orders, the open positions and the closed positions displayed in the chart.

Note: You will see only those positions and orders that were opened, closed and created by this particular strategy.

Each open position, order, and closed position has its own triangle marker. The triangles allow the user to review and modify positions and orders.

Upward triangles  indicate a BUY direction for the position/order. Downward triangles indicate a SELL direction for the position/order.

Note: he triangle colors displayed and referred to here are system defaults. Triangle color settings can be changed in the chart menu.

Entry orders are marked with a pink line and triangle marker. Orders to open a position (I orders) that have not been confirmed by the dealer are marked as a translucent open position triangle.

Orders to close a position (C orders) are shown as a translucent open position triangle attached to the triangle of the position that is to be closed, and pointing in the opposite direction.

Stop/limit orders are marked with an orange line and triangle marker. The point of order creation is marked with a dot.

The line to the left of the dot is perforated; the line to the right of the dot is solid. An upward triangle indicates a buy order; a downward triangle indicates a sell order.

Hover the cursor over the order triangle to view information about the order, including:

1)The position ID

2)The number of lots, Buy or Sell

3)The open rate

4)Date and time when the order was created

Open positions are marked by a horizontal green line with a green triangle at the rate where the position was opened. The moment the position was opened is marked by a green dot.

The line to the right of the dot is solid; the line to the left of the dot is dotted. An upward triangle indicates a buy position; a downward triangle indicates a sell position.

The number inside the triangle is the number of lots in the position. Triangles representing positions with a negative P/L have a red border.

Hover the cursor over the position triangle to view information about the position, including:

1)The position ID

2)The number of lots, Buy or Sell

3)The open rate

4)Date and time when the position was opened

5)Profit/Loss

6)Stop order ticket and rate if there is one

7)Limit order ticket and rate if there is one

 

 

Closed positions are marked by a line connecting two green triangles: one at the time and rate when the position was opened, and the other one at the time and rate when it was closed.

An upward triangle indicates a buy operation; a downward triangle indicates a sell operation. The number inside the triangle is the number of lots in the position.

Triangles representing positions with a negative P/L have a red border.

Hover the cursor over the position triangle to view information about the position, including:

1)The position ID

2)The number of lots, Buy or Sell

3)The open rate

4)The close rate

5)Date and time when the position was opened

6)Date and time when the position was closed

7)Profit/Loss

Possible Errors

Floating point division by zero

This error means that the script contains division by zero.

Such strategy already exists

This error means that a strategy with such a name is already present in the Strategy List.

When a strategy is imported to the WinTrader, the program stores its name, the source file, and the path to it.

Such error means that either the name of the source file, or the name of the strategy was repeated, i.e. a strategy with such a name or source file is already present in the Strategy List.

In order to avoid such a mistake, change the name of the source file and the name of the strategy when you resave it.

Reference to undefined object

This error means that the program referred to an uninitialized variable. For instance, if you refer to the variable a: TTrade, which does not hold any object at the moment, you will receive this error.

Candle number <number> doesn’t exist

This error means that the program cannot find a candle with specified index. For instance, you are using 100 candles of the chart history.

If you try to refer to the candle number 201 (which does not exist), you will receive this error.

[/dt_sc_toggle][dt_sc_toggle title=”User Indicators”]This section describes in detail how to use the Indicator Editor to create your own technical indicators that you can use in charts.

General Script Structure

A user indicator is a script consisting of a number of procedures. Some procedures are required and some are optional .

Saved indicator script files have a *.acti extension. The script has following general structure:

 

const

 IndicatorName = ‘Indicator’s Name’;

 IndicatorVersion = ‘1.0’; {used to synchronize with FxApps}

 Layout = Separated or Embedded; {Layout determines indicator placement within the chart. Embedded will be placed in the main chart window,   while Separated will be placed in a separate/dedicated section of the chart and will have its own vertical scale}

 

 {This is also the place where you create Constants that will be used in the script.}

 

var

 {There global variables are declared here}

 

procedure CreateSettings;

begin

 {This is an optional procedure. It is used to create indicator settings (such as color or time period) that will be available for adjustment in the indicator setup dialog box. You can modify these settings when you are adding your indicator to the chart}

end;

 

procedure ApplySettings;

begin

 {This is an optional procedure. As the name implies, it applies the settings that were entered by the user. This procedure also sets values for selected variables}

end;

 

procedure Init;

begin

 {This is a required procedure. It is executed every time the indicator is added to a chart. This procedure  contains important setting (such as chart type and color)}

end;

 

procedure Add(const Index: Integer);

begin

 {This is a required procedure. It calculates indicator values and draws the indicator in a chart window. }

end;

 

procedure Recalculate;

begin

 {This is a required procedure. It recalculates indicator values every time there is a change in variables/parameters, or when new chart data is received}

end;

 

procedure Draw;

begin

 {This is an optional procedure. It is used to create indicator boundaries (top and bottom), draw additional lines, etc}

end;

Indicator Editor

Indicator Editor is a dedicated internal application designed for creating, reviewing and editing indicator scripts:

Editor Interface

To open the user indicator editor, go to the main application menu => ActFX => Indicator Editor. The User Indicators Editor has the following interface:

 

 

1)Script tabs, which allow you to switch between the opened scripts

2)The Editor menu

3)Create a script

4)Open a script

5)Save the script

6)Print the script

7)Cut the selected text

8)Copy the selected text

9)Paste from the clipboard

10) Undo

11) Redo

12)Compile the script

13)Compile the script and Add it to the List of User Indicators or Update it

14)Current script

15)Vertical cursor position in the editor (line #)

16)Horizontal cursor position in the editor (column #)

17)Debugger.

 

 

Creating an indicator

In order to create a strategy, you have to go through the following steps:

Writing a script

 

You can open and edit an existing script (File => Open ( )), or create a new one (File => New (  )).

The script you are writing needs to be saved on your hard disk. In order to do this use File => Open (  ) or it will be automatically provided to you when you try to compile a script.

We strongly recommend that you do not save your indicators in the application folder.

 

Compiling the script

 

After you finish writing your code, you need to compile it. This will translate your script into machine code.

This can be done by:

 – clicking the ‘Compile‘ button (  ) on the Indicator Editor Toolbar or

 – selecting Tools => Compile Current (  ) or

 – pressing the F9 button on the keyboard.

If there are no errors, the debugger will show the message “Compiled successfully”.

If the script contains any errors, the debugger will indicate them. It will show the type of every error, the line # and the column #, therefore it will be easy to find and correct them.

 

If you wish, you can also hide the script when compiling the indicator. You can create a file with the extension *.actic, and use it in the same way as a file with the extension *.acti,

however it will not be possible to open such a file from the Indicator editor to see or edit the script. This opportunity allows you to share the indicators you created reserving your copyright.

You can create a file with the extension *.actic by selecting File => Save As Compiled.

 

Adding the indicator to the Indicators and Strategies

 

In order to use your indicator, you have to add it to the Indicators and Strategies. This list contains all indicators ready for adding to charts.

This can be done by:

 – clicking the ‘Compile and Add/Update‘ button (  ) on the Indicator Editor Toolbar or

 – selecting Tools => Compile and Add/Update (  ) or

 – pressing Ctrl + F9 combination on the keyboard.

If the indicator is already present in the Indicators and Strategies, it will be automatically updated.

 

After that you will be able to see your indicator in the ‘Chart Indicators’ and ‘Indicators and Strategies’ windows in the MyApps tab

 

 

You can manage available indicators by opening the Indicators and Strategies (Tools => Indicators and Strategies or main application menu => ActFX => Indicators and Strategies (  )).

You can add an indicator by clicking on ‘Add Script( ), delete an indicator by clicking on ‘Remove Script/Folder(),

or open the script for viewing or editing by clicking on ‘Edit Script() button.

Clonning an indicator

The clone function allows you to make changes in the indicator script and save it under a new name, without affecting the original script.

 

In order to clone an indicator select File => Clone. The Save As window will open. After you give a new name to the script, it will open in a separate tab.

The original script and the new script are completely independent, and you can make changes in either one without affecting the other.

Also an indicator can be cloned via ‘Indicators and Strategies’ functionality. To do it, go to the main application menu=> ActFX => Indicators and Strategies

Select an indicator and click the ‘Clone’ button

To open the User Indicator Editor, go to the main application menu => ActFX => Indicator Editor.

Writing an indicator

Each indicator must have a unique name. It is specified in the const section of the script by declaring the constant IndicatorName.

Also there is a  constant IndicatorVersion in the const section of the script. It’s used to synchronize the script with FxApps, so

this parameter is not strongly required.

Constant Layout determines indicator placement within the chart. It can have two values: Embedded or Separated

oEmbedded indicator will be placed directly in the main chart window.

oSeparated will be placed in a separate/dedicated section of the chart and will have its own vertical scale.

const 

  IndicatorName = ‘MyIndicator’;  

  IndicatorVersion = ‘1.0’;      

  Layout = Separated;          

IndicatorName value becomes the default title of your indicator as displayed in the title of the separated indicator or in Details window:

 

Predefined Procedures

To write your indicator you should learn about predefined procedures firstly

 

ActFX contains a number of predefined procedures for indicators:

 

CreateSettings

The CreateSettings Procedure

 

This procedure allows you to configure script variables (time period) and parameters (color) when you are adding an indicator to a chart (in the indicator setup dialog box).

In the body of the script, this procedure should be placed after the declaration of constants and variables (before the Init procedure).

The CreateSettings procedure contains a number of Settings object’s procedures.

Settings object’s procedures, in turn, must be used in order to apply each variable and/or parameter entered by the user when setting up the indicator.

Let’s consider the following example where we add the variable ‘MA_period’:

 

Settings.AddInteger(@Period, ‘Period for MA’, 14);

 

Where:

1)Period‘ – name of the variable that we use in the script. This variable will be assigned whatever value the user enters for it during indicator setup.

2)‘Period for MA’ – The name for this variable as it will be shown in the indicator setup dialog box.

3)’14’  is the default value for the variable.

 

 

Note: You can apply changed settings immediately, without closing of ‘Chart Indicators’ dialog window, by clicking button Apply

 

Example:  Let’s assume that there are three lines in your indicator. We want to be able to set colors and time periods for each line.

The first line should have a default period of 12 and the color green, the second line should have a default period of 26 and the color blue,

and the last line should have a default period of 9 and the color red.  To achieve this, the CreateSettings  procedure should contain the following code:

 

procedure CreateSettings;

begin

 Settings.AddInteger(@Line1_period, ‘Period for Line1’, 12);

 Settings.AddInteger(@Line2_period, ‘Period for Line2’, 26);

 Settings.AddInteger(@Line3_period, ‘Period for Line3’, 9);

 Settings.AddColor(@Line1_color, ‘Color for Line1’, clGreen);  

 Settings.AddColor(@Line2_color, ‘Color for Line2’, clBlue);

 Settings.AddColor(@Line3_color, ‘Color for Line3’, clRed);

end;

 

As a result, the indicator setup dialog box will look as follows when you select your custom indicator:

 

 

 

Init

The Init Procedure

After declaring the constant and variables, we create the Init procedure. This procedure creates the indicator graph as an object and sets up its parameters.

 

Creating the Indicator graph as an object.

Let’s assume that our indicator is a line graph called MyIndicator. Therefore procedure Init should contain following code:

MyIndicator := TLineGraph.Create();

 

It is important that the type of the graph you create is the same type as you declare (in the Variables creation section).

 

Color settings

In procedure Init  you set up indicators color(s). By default (if you do not specify any particular color) your indicator will be green.

To set up your desired color you need to include the following code:

MyIndicator.Color := clBlue;

 

In this particular example we are using BLUE. In a table below you can see codes for different colors.

 

    – clRed     – clGreen     – clYellow     – clBlue
    – clWhite     – clGray     – clFuchsia     – clTeal
    – clNavy     – clMaroon     – clLime     – clOlive
    – clPurple     – clSilver     – clAqua     – clBlack

 

Zero Line  (X-axis) setting

 

This setting applies only for histogram charts (TVolumeGraph). If this setting is not used then the minimal value of vertical scale in histogram will be the same

as the minimal value of the histogram while the maximum value of the vertical scale will be the same as the maximal value of the histogram.

When the chart is scrolled horizontally, the vertical scale will automatically adjust to show the min/max values of the indicator.

 

 

If you want the indicator bar to be drawn upward and downward from the X-axis, you will need to add the following code to the Init procedure:

 

MyIndicator.UseYOrigin := True; //specifies that the indicator will use a custom axis 

 

MyIndicator.YOrigin := 0; // Specifies that the X-axis will intersect the Y-axis at point 0 (on Y-axis).

 

Example:  You want to create an indicator that will show the difference between the closing prices of the current and previous candle.

It is obvious that some of the values will be positive are others negative. If you don’t use a fixed starting point for the Y-axis then your indicator will appear as follows:

 

 

If, on the contrary, you do use the 0 starting point for the Y-axis, then your indicator will appear as shown below:

 

 

Many indicators use the same approach, including Accelerator/Decelerator, Awesome Oscillator, MACD/OsMA and others.

 

Indicator name Setting

 

It is also possible to create an indicator name/title that will be shown when the indicator is displayed in a dedicated section of the chart (Separated).

To do so, we use the function SetTitle(Title:String). For example, to display the title ‘My Own Indicator’ over the indicator section we need to add the following code:

 

SetTitle(‘My Own Indicator’);

 

 

Utilizing the abovementioned functions, the Init procedure may look as follows:

 

Example 1: Case when Y-axis setting is not used

 

procedure Init;

begin

   MyIndicator := TPointGraph.Create;

   MyIndicator.Color := clYellow;

end;

 

 

Example 2: Case when Y-axis setting (0) is used

 

procedure Init;

begin

   MyIndicator:= TVolumeGraph.Create;

   MyIndicator.Color:=clBlue;

   MyIndicator.UseYOrigin := True;

   MyIndicator.YOrigin := 0;

end;

 

Example 3: Case when the indicator consists of a line graph and a histogram with a Y-axis setting (5)

 

procedure Init;

begin

   MyIndicator1:= TLineGraph.Create;

   MyIndicator1.Color:=clYellow;

   MyIndicator2:= TVolumeGraph.Create;

   MyIndicator2.Color:=clOlive;

   MyIndicator2.UseYOrigin := True;

   MyIndicator2.YOrigin := 5;

end;

ApplySettings

The ApplySettings Procedure

 

The ApplySettings procedure is executed every time you change the indicator’s settings in the Indicator setup dialog box when you click ‘OK’ or ‘Apply’ button.

 

Setting up colors

 

Let’s consider how color settings are applied. As previously described, the color of an indicator is set in the Init procedure.

 

Examle:  Our indicator is called MyIndicator.

 

Var

 MyIndicator: TLineGraph;

 Indicator_color: TColor;

 

In order to be able to change the indicator’s colors in the indicator set up dialog box, you must add the following code in the Create Settings procedure:

 

procedure CreateSettings;

begin

 …

 Settings.AddColor(@Indicator_color, ‘Color for MyIndicator’, clRed);

 …

end

 

Later, the ApplySettings procedure should contain the following code:

 

procedure ApplySettings;

begin

 …

 MyIndicator.Color := Indicator_color;

 …

end;

 

The variable ‘Indicator_color‘ is of the color data type TColor.

 

Period  Settings

 

Let’s see how various data types can be converted using the following functions:

 

The SetTitle procedure can be placed inside the ApplySettings procedure.

It can be quite useful when you want to show indicator parameters (along with indicator’s title/name) in the chart body,

especially when observing indicator behavior across various instruments and time intervals.

 

Let’s consider the usage of the CreateSettings and ApplySettings  procedures in the following somewhat more complex example.

 

Example:  We need to create an indicator consisting of a line and a histogram. The histogram will show the difference between the opening and closing rates for each candle.

The histogram will have a 0 origin for its Y-axis. The line will show a moving average of the histogram’s values multiplied by a variable (parameter).

The moving average period will be set in indicator settings. Default values will be as follows:

 

1)line_period = 12;

2)parameter = 3;

3)line_color = clRed

4)histogram_color = clAqua

 

This indicator will be shown in a dedicated section of the chart along with the period and parameter values.

 

const                                                                         // Declare global constants

  IndicatorName = ‘MyIndicator’;                                                      // Indicator’s name

  IndicatorVersion = ‘1.0’;                                                        // Indicator’s version

  Layout = Separated;                                // Show indicator in a separate section of the chart

 

var                                                                           // Declare global variables

  Line: TLineGraph;                                                                 // Declare Line graph

  Histogramm: TVolumeGraph;                                                    // Declare Histogram graph

  parameter: Double;                                                           // Declare float variables

  line_period: Integer;                                                      // Declare integer variables

  line_color, histogramm_color: TColor;                                       // Declare colors variables

 

procedure CreateSettings;        // Create setting that can be adjusted in the indicator setup dialog box

begin

  Settings.AddInteger(@line_period, ‘Period for Moving Average’, 12);                // MA Period setting

  Settings.SetIntegerRestrictions(@line_period, 2, 100, 1);          // Restrictions for integer variable

  Settings.AddFloat(@parameter, ‘Parameter’, 3);                                     // Parameter setting

  Settings.SetFloatRestrictions(@parameter, 1, 100, 0.1);              // Restrictions for float variable

  Settings.AddColor(@line_color, ‘Line Color’, clRed);                              // Line color setting

  Settings.AddColor(@histogramm_color, ‘Histogramm Color’, clAqua);            // Histogram color setting

end;

 

procedure Init;                                                                   // initialize indicator

begin

  Line := TLineGraph.Create;                                                         // Create line graph

  Line.Title := ‘SMA of Amplitude’;                                       // individual title of the Line

  Histogramm := TVolumeGraph.Create;                                            // Create histogram graph

  Histogramm.Title := ‘Amplitude’;                                   // individual title of the Histogram

  histogramm.UseYOrigin := True;                                            // Set 0 Y-axis for histogram

  histogramm.YOrigin := 0;

end;

 

procedure ApplySettings;                                                                // Apply Settings

begin

  Histogramm.Color := histogramm_color;                                  // Apply histogram color setting

  Line.Color := line_color;                                                   // Apply line color setting

  SetTitle(‘MyIndicator: period = ‘ + IntToStr(line_period) +

                     ‘; parameter = ‘ + FloatToStr(parameter));                 // Create indicator title

end;

 

procedure Recalculate;                                                    // Recalculate indicator values

begin

  FullRecalculation;

end;

 

procedure Add(const ValueIndex: Integer);                             // Add a new value to the indicator

var                                                                            // Declare local variables

  i: Integer;

  mysma: Double;

begin

  mysma:=0;                                                                       // Reset variable mysma

  if ValueIndex >= line_period-1 then

    begin

      for i := ValueIndex-line_period+1 to ValueIndex do

        mysma := mysma+SourceGraph.OpenValue(i)-SourceGraph.CloseValue(i);

      // Calculate average difference between open and close rates within specified line_period (mysma)

      mysma := mysma/line_period;

      //Create a dot in a line graph equal to the value of mysma multiplied by parameter

      Line.AddXY(SourceGraph.XValue(ValueIndex), mysma*parameter);

      Histogramm.AddXY(SourceGraph.XValue(ValueIndex),   //Calculate and add new value to histogram graph

                       SourceGraph.OpenValue(ValueIndex)-SourceGraph.CloseValue(ValueIndex));

    end;

end;

 

You can see a possible result in the picture below:

 

Add

The Add Procedure

 

The Add procedure calculates the individual value of the indicator and plots it on the chart. Most indicators are based on past rates/candle values.

Often indicators use some form of average to smooth out market rates

Let’s consider various candles parameters that can be used in indicator calculations. There are 8 of these:

 

1)SourceGraph.OpenValue(Index) – Returns Open rate for the candle with given Index

2)SourceGraph.CloseValue(Index) – Returns Close rate for the candle with given Index

3)SourceGraph.HighValue(Index)– Returns Max rate for the candle with given Index

4)SourceGraph.LowValue(Index) – Returns Min rate for the candle with given Index

5)SourceGraph.XValue(Index) – Returns number of the candle with given index

6)SourceGraph.YValue(Index) – Returns Close rate for the candle with given Index (the same as SourceGraph.CloseValue(Index))

7)SourceGraph.DateTime(Index) – Returns the date and time when the candle with given index opened

8)SourceGraph.TickVolume(Index) – Returns number of the ticks contained in the candle with given index*

   

  * Number of ticks (prices) arrived in the system, on current instrument, in period between begin and end of the candle with given index.

    Indirectly it may show the market activity level.

 

Index is a sequential number given to and uniquely identifying each candle. Index numbers start with 0 for the leftmost candle and increase by 1 for each consecutive candle.

Using the index number we can access any individual candle on the chart.

 

To plot the indicator’s value on the chart we use method AddXY(x,y:Double) where x and y are coordinates for the indicator’s value in the chart.

Example 1: let’s create an indicator that will measure candle height (High-Low) and display resulting values in a separate section of the chart window.

 

The Add procedure will appear as follows:

 

procedure Add(const ValueIndex: Integer);

begin

   MyIndicator.AddXY(SourceGraph.XValue(ValueIndex),

   SourceGraph.HighValue(ValueIndex) – SourceGraph.LowValue(ValueIndex));

end;

 

 

Example 2: let’s create a Simple Moving Average indicator with a period of 14.

For that we will need to create a couple of additional variables:

1)sma – a temporary variable designed to store the average.

2)i – an integer variable used to keep count of the cycle.

 

Var 

  sma: Double;

  i: Integer;

 

procedure Add(const ValueIndex: Integer);

  begin

    sma:=0;          //reset variable

    for i:= 0 to 13 do 

      sma:=sma+ SourceGraph.CloseValue(ValueIndex-i)  //Sum of the closing rates of 14 candles

    sma:=sma/14;      

    MyIndicator.AddXY(SourceGraph.XValue(ValueIndex), sma); //Plot received value of sma

  end;

 

Example 3: let’s create a script that will display the date and time when the last candle on the chart opened.

The Add procedure will appear as follows:

 

procedure Add(const ValueIndex: Integer);

  begin

    if ValueIndex = SourceGraph.Count-1 then

     ShowMessage(DateTimeToStr(SourceGraph.DateTime(ValueIndex)));

  end;

Example 4: let’s create a volume indicator that will display the number of ticks arrived in the system during every candle:

 

var

 MyIndicator: TVolumeGraph;

procedure Init;

begin

 MyIndicator := TVolumeGraph.Create;

end;

procedure Add(const ValueIndex: Integer);                            

begin

 MyIndicator.AddXY(SourceGraph.XValue(ValueIndex), SourceGraph.TickVolume(Valueindex));

end;

Use this indicator, for example, on ‘1 Hour’ chart and it will indirectly show how the market activity changes from hour to hour:

Recalculate

The Recalculate Procedure

 

The Recalculate and Add procedures (regardless of order) come after the Init procedure.

The Add procedure contains an algorithm that is used in calculation of indicator value at an individual candle.

The Recalculate procedure goes through all candles and applies the Add procedure individually to each one.

Before drawing the recalculated indicator, the chart must be cleared.

To do so we use the command: MyIndicator.Clear (where MyIndicator is the name of the indicator as you previously declared/created)

or it will be done automatically in case you are using FullRecalculation procedure.

 

Example: let’s assume that your indicator has three graphs with the following names:  Signal_Line, MA_Line, and Signal_Vol.

The first lines of code in the Recalculate procedure should be:

 

Signal_Line.Clear;

MA_Line.Clear;

Signal_Vol.Clear;

 

There are two ways to apply the Add procedure to every candle in the chart. The first one is to use a cycle:

 

for i := 0 to SourceGraph.Count – 1 do

 Add(i);

 

The second way is to use the command AddAllValues. It works in the same way as above cycle.

There is also FullRecalculation, which clears all indicators and performs complete re-calculation of indicators.

 

Hence it is possible to recalculate and redraw indicators in three different  ways:

 

First way:

procedure Recalculate;

begin

 Graph.Clear;

for i := 0 to SourceGraph.Count – 1 do

   Add(i);

end;

 

Second way:

procedure Recalculate;

begin

 Graph.Clear;

 AddAllValues;

end;

 

Third:

procedure Recalculate;

begin

 FullRecalculation;

end;

 

Each of the three ways accomplishes the same result.

NewRate

The NewRate Procedure

 

NewRate is not strongly required procedure, it used for optimization of indicator building.

This procedure is called automatically by the system every time when new rate (tick, price) is arrived for current instrument in the system.

 

Using of NewRate procedure allows to avoid using of FullRecalculation when the changes of price can affect only last indicator’s value:

you can recalculate and rebuild just only needed points of indicator instead of recalculation all series – it will seriously improve performance of your script.

To do so, you have to delete last indicator’s point, recalculate it and build again with a new value.

For deleting some point (by its index nuber) of graph use method DeleteValue() of TChartGraph object and

for building a new point of indicator on that place use procedure Add passing to it corresponding candle’s index as a parameter.

If the NewRate procedure is absent in the indicator script, then every time new tick (rate, price) is arrived for current instrument – the system

will call the procedure Recalculate (i.e. classical implementation).

 

Example:

procedure NewRate;

begin

if Graph.FitSourceGraphIndex(SourceGraph.Count-1) <> -1 then

   Graph.DeleteValue(Graph.Count-1);

 Add(SourceGraph.Count-1);

end;

NewCandle

The NewCandle Procedure

 

NewCandle is not strongly required procedure, it used for optimization of indicator building.

This procedure is called automatically by the system every time when new candle opens on current instrument.

Using of NewCandle procedure may be demanded to complement script’s logic when the NewRate procedure is used there,

also it allows you to correct the indicator’s value for previous candle – such correction is needed if indicator’s value is depend on candle’s Close Value,

because the Close value of previous candle becomes the final at the same time when new candle opens, i.e. when NewCandle procedure is being called.

To do so, you have to delete last indicator’s point before building a new one, then recalculate it and build again with a new value and

after that build a point corresponding to new opened candle.

For deleting some point (by its index nuber) of graph use method DeleteValue() of TChartGraph object and

for building a new point of indicator on that place use procedure Add passing to it corresponding candle index as a parameter.

If the NewCandle procedure is absent in the indicator script, then every time new candle is opened – the system

will call the procedure Add passing to it the last candle’s index as a parameter (i.e. classical implementation).

 

Example:

procedure NewCandle;

begin

if Graph.FitSourceGraphIndex(SourceGraph.Count-2) <> -1 then

   Graph.DeleteValue(Graph.Count-1);

 Add(SourceGraph.Count-2);

 Add(SourceGraph.Count-1);

end;

Note: at that moment when a new candle opens (when NewCandle procedure is being called) the chart has one extra candle!

It is caused by sequence of system actions:

first action – the new candle is being added as last candle on the chart;

second action – the first (earliest) candle of the chart is being deleted from the chart to match the “Load Candles” value of Chart Settings;

If the chart has number of candles less than “Load Candles setting” then  the chart will have no extra candle on calling a NewCandle procedure,

so the first (earliest) candle will not be deleted.

Draw

The Draw Procedure

 

This procedure enables the user to add supplementary lines on the chart. For example, the indicator Stochastic utilizes 2 horizontal lines at 20% and 80% levels.

In order to create such lines in charts, we use the Draw procedure.

In order to position supplementary lines, we must calculate their positions relative to four corners of the chart window (Top, Bottom, Right, Left).

When we display an indicator in a dedicated section of the chart window (separated), we use the four corners of that separate section rather than the main chart.

 

 

Supplementary Lines

 

In order to add supplementary lines to the indicator we use the function Canvas.Line(x1,y1,x2,y2) where x1y1 andx2y2 are starting and ending coordinates for the line.

For example assume that we need to draw a horizontal line in the middle of the chart. In this case the Draw procedure will contain the following code:

 

procedure Draw;

var

 Height, Y: Integer;

begin

 Height := Bottom – Top;

 Y := Bottom – Round(0.5 * Height);

 Canvas.Line(Left, Y, Right, Y);

end;

 

Below you can see the resulting chart window:

 

 

The function Canvas.LineTo(X,Y) allows you to draw sections of the line.

For example let’s draw zigzag line across the entire area of the chart. One of many possible ways is presented below:

 

procedure Draw;

var

 Height, Y, i: Integer;

begin

 Height := Left – Right;

for i:= 1 to 100 do

  begin

    if frac(i/2)=0 then

      begin

         Y := Left – Round(i/100 * Height);

         Canvas.LineTo(Y, Bottom);

      end else

      begin

         Y := Left – Round(i/100 * Height);

         Canvas.LineTo(Y, Top);

      end;

  end;

end;

 

You can see the resulting chart below:

 

za

 

View Settings

 

In order to manage the look and feel of the lines we can use the standard properties of TPen object, such as Color, Width, Style and Mode.

 

Constructor:

property Color: TColor;

property Width: Integer;

property Style: TPenStyle;

property Mode: TPenMode;

TPenStyle

psSolid, psDash, psDot, psDashDot, psDashDotDot, psClear

TPenMode

pmBlack, pmWhite, pmNop, pmNot, pmCopy, pmNotCopy, pmMergePenNot, pmMaskPenNot,
pmMergeNotPen, pmMaskNotPen, pmMerge, pmNotMerge, pmMask, pmNotMask, pmXor, pmNotXor

Example:

procedure Draw;

begin

 Canvas.Pen.Color := clYellow;  

 Canvas.Pen.Width := 8;    

 Canvas.Pen.Style := psSolid;

 Canvas.Pen.Mode := pmMaskPenNot;          

 Canvas.Line(Left, Bottom, Right, Top);

end;

 

TCanvas methods

The method FillBetweenLineGraphSpace fills the space between two lines of an indicator with a specified color.

This functionality allows you to use two different colors of filling depending on which line is higher:

if Line1 is higher than Line2 then Color1 will be used to fill the space between them and vice-versa.

The filling is made only at that area where both lines are exist.

Note: You can combine using Canvas.FillBetweenLineGraphSpace() method with different types of  Canvas.Pen.Mode to get a lot of rendering results.

Example:

// this is code fragment from ‘Ichimoku Kinko Hyo’ indicator

var

 SenkouSpanA,SenkouSpanB: TLineGraph;

procedure Draw;

begin

 Canvas.FillBetweenLineGraphSpace(SenkouSpanA, SenkouSpanB, SenkouSpanA.Color, SenkouSpanB.Color);

end;

Below is a sequential order of predefined procedures:

Order Of Procedures
Types of Indicators

To make your indicator more useful and comfortable, please learn more info about types of indicators and their possibilities

 

There are five graph types in the ActFx: TLineGraph, TPointGraph, TVolumeGraph, TFormationGraph and TVirtualGraph.

TLineGraph
Line Graph is a type of indicators which are displayed as a solid line connecting the successive points of the indicator.

 

Separated:

 

Embedded:

 

TLineGraph.AddNull();

In some indicators we have few lines which replace each other alternately without overlay (for example support and resistance lines).

To build it nicely we should break a line at needed point. To do so we can use method TLineGraph.AddNull

 

Constructor:

procedure AddNull(const X: Double);

 

Example:

var

  GraphLine: TLineGraph;

…  

procedure Add(const ValueIndex: Integer);

begin

  if (ValueIndex in [200..250]) or (ValueIndex in [300..350]) then

    GraphLine.AddXY(SourceGraph.XValue(ValueIndex), SourceGraph.CloseValue(ValueIndex));

  GraphLine.AddNull(SourceGraph.XValue(251));

TLineGraph.IsNull();

When you are using procedures NewRate and/or NewCandle and rebuild only last point instead of FullReacalculation, then possible situations

when you need to delete a point and rebuild it with a new value. In some cases there is a need to check if the existing point is null-value or not.

For this purposes you may use method TLineGraph.IsNull(index). Where argument ‘index’ is the index number of a linegraph point.

 

Constructor:

function AddNull(const X: Double);

 

Example:

procedure Add(const ValueIndex: Integer);

 SomeValue: Double;                

 NeedChange: Boolean;            

begin // last point correction

 …

if MyIndicator.IsNull(MyIndicator.Count-1) and NeedChange then  

  begin

     MyIndicator.DeleteValue(MyIndicator.Count-1);      

     …      

    // some code, for example building non-null point

  end;

end;

TLineGraph.Stairs

We can easily draw Line Graph like steps of stairs: line goes from point “A” to point “B” horizontally,

on the height of point “A” and then changes the height to value of point “B” – goes vertically.

 

The simplest way to do so is to use property Stairs of a TLineGraph object

This functionality has ability to build ‘Inverted Stairs’ e.g. line goes vertically from point “A” to the height of point “B”,

and then goes horizontally to point “B”.

To switch the type of stairs you should use property TLineGraph.InvertedStairs (works only if TLineGraph.Stairs = True)

Note: Using of InvertedStairs has only visual effect, it doesn’t change the location of graph’s points, so the value of

indicator between two points is equal to to the value of left point. It may cause the visual difference between real

graph’s value and its graphical implementation in InvertedStairs mode.

 

Constructor:

property Stairs: Boolean;

property InvertedStairs: Boolean;

 

Example:

procedure Init;

begin

 GraphLine := TLineGraph.Create;

 GraphLine.Title := ‘Line with stairs’;

 GraphLine.Stairs := True;

 GraphLine.InvertedStairs := False; // not required

 

View Settings

In order to manage the look and feel of the lines we can use the properties of TLineGraph object, such as Color, Width, Style, Mode and Visible

 

Constructor:

property Color: TColor;

property Width: Integer;

property Style: TPenStyle;

property Mode: TPenMode;

property Visible: Boolean;

TPenStyle >

psSolid, psDash, psDot, psDashDot, psDashDotDot, psClear

 

TPenMode >

pmBlack, pmWhite, pmNop, pmNot, pmCopy, pmNotCopy, pmMergePenNot, pmMaskPenNot,

pmMergeNotPen, pmMaskNotPen, pmMerge, pmNotMerge, pmMask, pmNotMask, pmXor, pmNotXor

 

Example:

var

 LineGraph: TLineGraph;

…    

procedure Init;

begin              

 LineGraph := TLineGraph.Create;  

 LineGraph.Color := clGreen;

 LineGraph.Width := 4;

 LineGraph.Style := psSolid;

 LineGraph.Visible := True;

…  

Note: Those view settings can be also assigned to LineGraph via TLineGraphSettings object – more info in topic Interface Settings, paragraph Settings.AddLineGraph

TPointGraph
TVolumeGraph
TFormationGraph
TVirtualGraph
TOHLCGraph
Candle Custom Value

Read this paragraph, if you want to use the prices of candles which should not been ‘hard-coded’ and may be changed via settings

 

Often inside the script it becomes necessary to work with some price of candle, which is not predefined and may be changed at setup window.

To use such data, SourceGraph object has a function CustomValue, which returns a value of custom price (the index of a candle and the calculation type should be passed as parameters).

Constructor:

function CustomValue(ValueIndex: Integer; CalculationType: TCalculationType): Double;

Example:

var

 CalculationType: TCalculationType;

 MyPrice: Float;

procedure CreateSettings;

begin

 Settings.AddCalculationType(@CalculationType, ‘Calculation Type’, cbClose);

procedure Add(const ValueIndex: Integer);

begin

 MyPrice := SourceGraph.CustomValue(ValueIndex, CalculationType);

ChartGraph

Here you can find the information about how to set title for graph, change color for any point of indicator or how to delete any point of indicator

 

TChartGraph.Title
TChartGraph.FitSourceGraphIndex
TChartGraph.SetColorByIndex
TChartgraph.DeleteValue
Instrument

In this section you can find how to get details about instrument of the chart where the indicator is working

 

Like in strategies you can use the information about the current instrument used on chart with the indicator.

There is pre-declared object Instrument of TInstrument type with corresponding properties

Constructor:

property Name: String;         // instrument name

property Buy: Double;           // current Ask rate

property Sell: Double;         // current Bid rate

property PointSize: Double;     // the smallest rate change that a given dealing rate can make

property Id: Double;           // number of instrument in the instrument list

property CondDistance: Integer; // condition distance of instrument (in pips)

property ContractSize: Double; // contract size of instrument (amount of 1 lot)

// * PointSize also known as a pip (for example, the PointSize of EURUSD is 0.0001)

Example:

procedure ApplySettings;

begin

 log(‘PointSize = ‘+floatToStr(Instrument.PointSize));  

 log(‘Buy = ‘+floatToStr(Instrument.Buy));  

 log(‘Sell = ‘+floatToStr(Instrument.Sell));  

 log(‘ContractSize = ‘+floatToStr(Instrument.ContractSize));  

 log(‘CondDistance = ‘+IntToStr(Instrument.CondDistance));  

 log(‘Id = ‘+Instrument.Id);  

 log(‘Name = ‘+Instrument.Name);

Logged:

PointSize = 0.0001

Buy = 1.2064

Sell = 1.2063

ContractSize = 100000

CondDistance = 1

Id = 21

Name = EURCHF

TimeFrame

Use this function to define the currently used timeframe of a chart

 

Some indicators may have different calculation algorithms depending on what chart’s timeframe is being used, so user should select the correct algorithm (e.g. via settings interface).

So for automatic definition of the current chart timeframe there exists function TimeFrame.

The TimeFrame function returns timeframe used on a chart as a TChartInterval object which has properties Name and Duration.

See detailed information about TChartInterval Type and its properties in Data Types

Constructor:

function TimeFrame(): TChartInterval;

Example:

procedure Recalculate;

begin

if TimeFrame.Duration <= 480 then

  // do some action, change some parameter

else if TimeFrame.Name = ‘1 Month’ then

  // do some action, change some parameter

else { do some action, change some parameter } ;

 Log(TimeFrame.Name);

 Log(IntToStr(TimeFrame.Duration));

end;

Additional Capabilities

Also this additional capabilities may be helpful for you

 

Moving Averages

 

For simplest work with Moving Average of chart data there was created TMovingAverage type in ActFx.

When a TMovingAverage object is created and its parameters are set the data from chart is being automatically collected into statistics and the

value of MA for needed candle can be easily found.

 

The object of TMovingAverage class can be created via method Settings.AddMovingAverage (see also topic Interface Settings)

Graphical interface of this element allows you to set average type of MA via drop down list, period of MA via edit box, and calculation type of MA via drop down list.

GUI may be disabled by using the property ControlIsVisible and other parameters of MA  may be changed also via properties of object.

Constructor:

property AverageType: TAverageType;

property Period: Integer;

property CalculationType: TCalculationType;

property ControlIsVisible: Boolean;

Work with properties of TMovingAverage object allows us to read (find out) current value of MA’s parameters

and change them thru script without GUI.

Example:

var

 MovingAverage: TMovingAverage;

procedure CreateSettings;

begin

 Settings.AddMovingAverage(@MovingAverage, ‘Moving Average’, makSimple, 5, cbClose);

 Log(MovingAverageKindToStr(MovingAverage.AverageType));

 Log(IntToStr(MovingAverage.Period));

 Log(CalculationTypeToStr(MovingAverage.CalculationType));

 Log(BoolToStr(MovingAverage.ControlIsVisible));

 MovingAverage.AverageType := makExponential;

 MovingAverage.Period := 7;

 MovingAverage.CalculationType := cbMedian;

 MovingAverage.ControlIsVisible := False;

 

 

Function SMA(Period, ValueIndex).

Function SMA(Period, ValueIndex) returns value of indicator Simple Moving Average for the given Period.

Calculation of Indicator starts with a candle with a number ValueIndex and ends on a candle with a number (ValueIndex-Period).

For example function SMA(14,SourceGraph.Count()-1) would return value Simple Moving Average starting from the last candle with period 14.

 

Function EMA(Period, ValueIndex).

Function EMA(Period, ValueIndex) returns value of indicator Exponential Moving Average for the given Period.

Calculation of Indicator starts with a candle with a number ValueIndex  and ends on a candle with a number (ValueIndex-Period).

For example  function EMA(14,SourceGraph.Count()-1) would return value Exponential Moving Average starting from the last candle with period 14.

 

 

Using Past Values

 

In addition to the SourceGraph values and Statistics, you can also use the past values of the indicators lines themselves, when calculating the future values.

You can refer to these values in the same way as to the values of the SourceGraph:

 

NameOfTheLine.YValue(Index)

 

Example: let’s create a script that will draw an increasing line:

 

const

 IndicatorName = ‘PastValues’;

 Layout = Separated;      

 

var

 Ind: TLineGraph;

 

procedure Init;

begin

 Ind := TLineGraph.Create;

end;

 

procedure Recalculate;

begin

 FullRecalculation;

end;

 

procedure Add(const ValueIndex: Integer);                                    

begin

if ValueIndex=0 then

   Ind.AddXY(SourceGraph.XValue(ValueIndex), 0)

else

   Ind.AddXY(SourceGraph.XValue(ValueIndex), Ind.YValue(ValueIndex-1)+1);

end;

 

 

Setting up the vertical Scale

 

It is possible to limit the dimensions of the vertical scale of an indicator. If such a limitation is not used, then the indicator scale will be adjusted automatically

to include the min and max values of the indicator. The function SetYScale(const MinValue, MaxValue: Double)  is used to create a fixed scale.

For example, to use a scale from 0 to 1, the Init procedure should contain the following code:

 

procedure Init;

begin

 …

 SetYScale(0,1);

 …

end;

 

 

Scale marking setting

When using the function SetYScale, the vertical markings type can be altered depending on the type of your indicator.

The Function SetYValuesFormat (const Format: String) can be used for this purpose.

 

The Format string can include the following symbols:

 

Symbol

Influence

#

This symbol stands for a digit placeholder. The digit from the position where ‘#’ appears in the format string should be output in the corresponding position in the vertical markings. If there is no digit in that position, nothing is output in that position in the vertical markings.

0

This symbol stands for a digit placeholder. The digit from the position where ‘0’ appears in the format string should be output in the corresponding position in the vertical markings. If there is no digit in that position, then ‘0’ will be output in that position in the vertical markings.

The vertical markings will be rounded according to the number of ‘0’ and/or ‘#’ symbols after the decimal point in the format string.

.

This symbol stands for the decimal point. If there are more than one ‘.’ symbols, all of them except for the first one are ignored. This symbol specifies where the decimal separator should appear in the vertical markings.

,

This symbol stands for the thousand separator. If there is at least one ‘,’ symbol in the format string, the thousand separators will appear in the vertical markings between every three digits on the left side of the decimal point (the number of ‘,’ symbols and there positioning is ignored).

E+, E-, e+, e-

This symbol stands for the scientific notation. If there is any of the symbols ‘E+’, ‘E-’, ‘e+’, or ‘e-’ in the format string, the format of vertical markings will be set according to the scientific notation. The minimum number of digits in the exponent is determined depending on the number of ‘0’ symbols (up to four) which follow the scientific notation symbol. If the ‘E-’ or the ‘e-’ symbol is used in the format string, the sign symbol will be displayed only for the negative exponents. If the ‘E+’ or the ‘e+’ symbol is used, the sign symbol will be displayed for both positive and negative exponents.

;

This symbol is the separator. It allows to specify different formats for the positive, negative and zero values. If there is no such separator, the format string is applied to all of the values. If there is one separator in the format string, the first part corresponds to the positive and zero values, and the second part corresponds to the negative values. If there are two separators, then the first part is applied to the positive values, the second part corresponds to the negative values, and the third part corresponds to the zero values.

‘xx’ or “xx”

The symbols in the quotes will be displayed in the vertical markings, as indicated in the format string. These symbols do not have influence on the format.

Indicator Log

When you are writing a custom indicator, it often necessary to analyze and/or control some processes.

Using of Logging process in indicators can be very helpful in such cases.

To log a data you should use the Log() procedure. The data you are logging should be of String type – it should be passed as parameter

Constructor:

procedure Log(Text: String);

If you are going to log some data of non-String types you should convert it to String. See topic Other Functions, paragraph “Data Type Conversion Functions”

Example:

procedure Add(const ValueIndex: Integer);

begin

 Log(‘Bar number ‘+IntToStr(ValueIndex));

Click the button ‘Indicator Log’ to open a log window under the chart:

Check-box “Out Indicators Recalculation Time” allows you to see the execution time of  entire indicator script –

does the same time check as Stopwatch for Recalculate procedure.

As a result if “Out Indicators Recalculation Time” is checked, every time when indicator is being recalculated there

will appear corresponding information in the log: Indicator name and its recalculation time.

Log window has buttons ‘Clear’ – erases all logged data, and ‘Copy’ – copies all logged data to clipboard.

The size of console is customizable (1..100000 lines).

The cleaning of a log also can be done thru the indicator script. To do so, use the ClearLog method

 

Constructor:

procedure ClearLog;

Example:

procedure Add(const ValueIndex: Integer);

begin

 Log(‘Bar number ‘+IntToStr(ValueIndex));

if ValueIndex = 98 then // this will erase all data which  

   ClearLog;             // was logged before the 100th candle

Applying an indicator

In order to apply an indicator, it has to be  present in the Indicators and Strategies window. Click the Indicators and Strategies button in the ActFX tab of the FXVoyager toolbar. Choose an indicator and click ‘Apply Indicator’.

A drop-down menu will appear with the list of currently open charts and the Add To New Chart option which opens the ‘New Chart’ dialog window.

You can also add an indicator to the chart by selecting the ‘Setup Indicators’ option in the right-click menu on chart or pressing the Setup Indicators button on the chart toolbar:

If you are using  the Indicators and Strategies to add the indicator – it will be added to the chart immediately with default values of settings, but

using the ‘Setup Indicators’ you can change the settings for already used indicators or for setting up the starting parameters for a new one.

Possible Errors

Floating point division by zero

 

 

This error means that the program contains zero divide. Most possible this is caused by incorrect formulas that contain division.

While writing indicators where division is being used should be thought over very thoroughly to avoid possibility of zero divide.

This mistake can also be caused by usage of the null data. For example you use

SourceGraph.CloseValue(ValueIndex-20) meaning, then (ValueIndex-20) will be

negative number for the first 19 steps. This can lead to errors of different kind. Because of that if shift is used you should preset calculations conditions.

For example:

 

if ValueIndex>19 then a:= SourceGraph.CloseValue(ValueIndex-20)

 

In this case you will avoid errors caused by incorrect data.

 

Such user indicator already exists

 

 

This mistake means that indicator with the same name already exists in the list of the available indicators.

When the indicator is added to the list of user indicators– the program remembers its name, as well as the file name and way to the file, where the source is.

To avoid this mistake while saving the indicator you should change the name of the indicator and file name.

 

Cannot find trade

 

This error says that position with trade number 3596 was not found. It can be caused by incorrect work of CreateStopLimitOrder or CloseTrade functions.

 

 


Cannot find trade by operation tag

 

This error says that position with trade tag ‘a2342’ was not found. It can be caused by incorrect work of CreateStopLimitOrder or CloseTrade functions.

 

 

 

[/dt_sc_toggle][dt_sc_toggle title=”Common Features”]This section contains ActFx features, which can be used in both strategies and indicators.

 

Data Types

Here is list of ActFx Type used in scripts of indicators and strategies

Data Types
Variant Type
TAverageType
TCalculationType
TChartInterval Type
Interface Settings

Such settings can be added at OnCreate procedure in Strategy or at CreateSettings procedure in Indicator.

 

Below is a list of general Settings object’s methods and properties (can be used both in strategies and indicators)

Settings.AddString
Settings.AddRadioGroup
Settings.AddCheckBox
Settings.AddColor
Settings.AddTime
Settings.AddDate
Settings.AddSeparator
Settings.AddInteger
Settings.AddFloat
Settings.AddDropDown
Settings.AddCalculationType
Settings.AddMovingAverage
Settings.AddFileSelect
Settings.AddGroup
Settings.CaptionWidth
Settings.SetHint

Description:

SetHint is used to add a tooltip for a setting object. The hint pops up when mouse cursor is being placed over a setting.

Constructor:

procedure SetHint(const VariableName, HintText: String);

Example:

var

 LiveLine: Boolean;

procedure CreateSettings;

begin

 Settings.AddCheckBox(@LiveLine, ‘Draw Live-line’, True);  

 Settings.SetHint(@LiveLine, ‘Trailing line segment (tentative)’);

Result:

actfx_hint

Settings.AddCandleHistory
Settings.AddTickHistory
Settings.AddAccount

Settings object’s methods for indicators only

 

Settings.AddLineGraph
Global Variables

ActFx allows your scripts interact between each other thru the Global Variables.

This functionality allows you to use some common (public, global) variables in different running strategies and indicators at the same time, and

each of scripts can affect that variables.

There is pre-declared object GlobalVariables – container which holds the global variables: their names and corresponding values.

The type of Global Variables is Variant. And there is no need to declare such variables in ‘var‘ section.

The GlobalVariables object has 3 methods:

Constructor:

procedure SetValue(Name: String; Value: Variant);// creates or sets a value for global variable with specified name

function HasValue(Name: String): Boolean;       // checks if global variable with specified name exists (has value)

function GetValue(Name: String): Variant;       // returns the value of a global variable with specified name

Note: Attempt to GetValue of nonexistent global variable will cause an exception, to avoid such errors, please, use the HasValue method to check that.

Example:

//in script_1 (any strategy or indicator)

GlobalVariables.SetValue(‘abcVar’, ‘WOW!!!’);

GlobalVariables.SetValue(‘xyzVar’, 3.14);

 

//in script_2

if GlobalVariables.HasValue(‘abcVar’) then

 Log(‘My text is ‘ + GlobalVariables.GetValue(‘abcVar’));

if GlobalVariables.HasValue(‘xyzVar’) then

 Log(FloatToStr(GlobalVariables.GetValue(‘xyzVar’)*2.71));

Note: A strategy running in test mode can use the global variables and affect them as well as strategies running in real mode or indicators!

Custom Functions

It is possible to use custom functions in the Indicator Editor and Strategy editor.

Functions are the same as procedures except that they return a value in addition to executing statements.

A function, as its name suggests, is like a little program that calculates something, returning the value to the caller.

 

It is important to note that we return the value from a function in a special variable called Result that ActFx secretly defines for us to be the same type as the return type of the function.

We can call for it at any point in the function. When the function ends, the value held in Result is then returned to the caller.

function Average(a, b, c : Extended) : Extended;

begin

// return the average of the 3 passed numbers

 Result := (a + b + c)/3;

end;

 

Using Arrays

An array is a data structure that holds a collection of values of a single type. The individual elements of an array can be accessed by indexing.

Multi-dimensional arrays can be used as well in ActFX. They are accessed using more than one index: one for each dimension.

In order to use an array in your strategy, you must declare it in the variables section.

Declaration of Arrays

 

Please note, that it is not possible to use dynamic arrays in the Indicator Script. For instance, if you use the line:

Ar: array [0..SourceGraph.Count-1] of Double;

 

this will result in an error. If you need a dynamic array, you should declare an extensible array, and use the SetLength Function.

 

Example: We need to assign the close values of the candles on the chart to the array. We need the following lines:

procedure Add(const ValueIndex: Integer);

var

 Ar: array of Double;

 

begin

 SetLength(Ar, SourceGraph.Count);

 Ar[ValueIndex]:= SourceGraph.CloseValue(ValueIndex);

end;

 

In order to draw an indicator in a chart, you have to declare a variable that will be one of the following data types:

TLineGraph, TPointGraph, TVolumeGraph (depending on the type of indicator you want to draw). Let’s assume that you want to draw a line indicator called MyIndicator .

The variable declaration section should have following code:

Var

 MyIndicator: TLineGraph;

 

See examples below:

Example1:

var

 A: array of Double;

In this example, the array has only 1 element, indexed 0.

Example2:

var

 A: array [1..7] of Double;

In this example, the length of an array is established when the array is created. The array has 7 elements, indexed from 1 to 7.

The SetLength Function can be used to change the length of an array, by augmenting the end value of the index.

The first index remains as  is, while the last index is changed into the indicated value.

Example: We need to add the close values of the candles on the chart to the array when a new candle appears in the chart.

We will dynamically cahgne the size of an array depending on the number of used candles. The script should include the following lines:

procedure OnNewCandle;

var

 A: array of Double;

 i: Integer;

 

begin

 SetLength(A, History.Count);

for i:=0 to History.Count-1 do

   A[i]:= History.Last(i).Close;

end;

Case Structure

The “case(i: var)” operator provides a structured equivalent to a sequence of “if” statements for the same variable.

The “case” statement is more elegant, more efficient, and easier to maintain than multiple “if” conditions.

For i:=1 to 2 do

begin

  case (i) of       // sellected value according to the variable “i”

     1: ShowMessage (‘The first condition has occured’);  

     2: ShowMessage (‘The first condition has occured’);  

  else

     ShowMessage (‘Nothing happened’);

  end;

end;

Also it is possible to use default setting for the case structure:

default: ShowMessage (‘Default settings are applied’);    

 

Break, continue and exit

Break and continue statements are used only inside a loop.

 

The break statement is intended for early completion of the cycle. During its execution, it exits immediately from the current cycle and proceeds to the statement following the loop. The continue statement ends the current iteration of the loop jumping to the end of the loop body.

 

Example:

flag: = False;
for var i: = 1 to 10 do
begin  
    if x < 0 then continue; // skip the current iteration of the loop  
    if x = 5 then  
    begin    
         flag: = True;    
         break; // exit the loop  
    end;
end;

 

 

Using break and continue statements out of the loop body is incorrect.

 

The exit is designed for early completion of the procedure or function.

 

Example:

function Analyze (x: integer): boolean;
begin  
    if x < 0 then  
    begin    
         Result: = False;
         exit;
    end;  
    …
end;

Other Functions
Message notification
Sound Notification
Stopwatch
System Type
Statistics
Mathematical
Date/Time
Data Type Conversion Functions
String Functions
Other functions
TStringList class objects
Platform version

 

Data Flow

ActForex allows using flow data inside ActFx with the help of HTTP requests.

The process of receiving stream data is different in Indicator and Strategy editors.

In Strategy editor, synchronic request is used:

The function HTTPRequest(URL: string); returns the data from the URL presented as the parameter of the request.

Strategy sample:

const
 StrategyName = ‘HTTP STR Test’;
 StrategyVersion = ‘1.0’;
 
var
 History: TCandleHistory;
 Account: TAccount;
 Amount: Double;
 
procedure OnCreate;
begin
 Settings.AddCandleHistory(@History, ‘Candle History’, ”, CI_1_Hour, 100); //setting up the chart history
 History.OnNewCandleEvent := @OnNewCandle;
 History.OnNewRateEvent := @OnNewRate;
 Settings.AddAccount(@Account, ‘Account’, ”); //the account number
 Settings.AddFloat(@Amount, ‘Amount(Lots)’, 1);
end;
 
procedure OnStart;
begin
if Pos(‘economic’, HTTPRequest(‘http://www.bbc.co.uk/news/’)) then
 showmessage(‘The economic news are on the front page of the site’);    
end;

To initiate the HTTP request in indicator editor, the user needs to use HTTPRequestAsync(URL: string, @procedure_name) structure. Because the chart operates directly with the price feed – the HTTP request is asynchronical (the request is executed in the parallel flow)

Where

URL – http request url;

@procedure_name – procedure that will be executed as soon as ActTrader receives the data from the URL.

Indicator sample:

const
 IndicatorName = ‘HTTP IND Test’;
 IndicatorVersion = ‘1.0’;
 Layout = Separated;      
 
var  Volume: TVolumeGraph;
 
procedure HTTPCallBackFunction(const Result: String);
begin
 Log(Result);
end;
 
procedure Init;
begin
 HTTPRequestAsync(‘http://www.bbc.co.uk/news/’, @HTTPCallBackFunction);
 Volume := TVolumeGraph.Create;
 Volume.Title := ‘Volume: ‘;    
end;
 
procedure Recalculate;
begin
 FullRecalculation;
end;
 
procedure Add(const ValueIndex: Integer);
begin
 Volume.AddXY(SourceGraph.XValue(ValueIndex), 0);
end;

The list of codes for possible responses of HTTP requests can be found by the link: http://en.wikipedia.org/wiki/List_of_HTTP_status_codes#4xx_Client_Error

Using External Libraries

The “Uses” keyword defines a list of one or more units that are used by the current unit, program or library.

Library file name,  My_trades.acts:

function mult(a,b:double):double;

begin

 result:=a*b;   

end;             

 

function plus(a,b:double):double;

begin

 result:=a+b;   

end;       

 

begin

end.

Strategy file, My:

uses ‘My_trades.acts’;

 

const

 StrategyName = ‘My’;

 

procedure OnCreate;

begin

 Log(‘OnCreate’);

end;

 

procedure OnStart;

begin

 showmessage(floattostr(mult(6,3)));

 showmessage(floattostr(plus(6,3)));

end;

Managing Errors

When the strategy is closing a big number of positions, a query to close a non-existent position may arise or, for example,

when the strategy should divide something by not-predefined variable (due to its logic) there also the exception is possible.

In order to avoid such errors, you can use a Try-Except construction with or without getting the exception information.

The Except keyword is used to mark the start of a block of statements that handle an exception in a Try clause.

If the Except block can handle the exception, then the program is not terminated. If the Try clause generates an exception the Except clause is executed.

This is used to take alternative action when something unexpected goes wrong. The except clause cannot determine the error type however.

The useful information that can be obtained from the exception event is:

ExceptionClassName

ExceptionMessage

It may be used as a quite informative message (without strategy break) or it may be handled further in the script.

Structure:

Try

//Statement

Except

//Statement

End;

Example:

procedure OnStart;

var  

 x, y : Double;

begin

 y := 0;

try

   x := x / y;

except

   ShowMessage(ExceptionClassName + ‘: ‘  + ExceptionMessage);

end;

end;

You may handle the exception processing according to its type or another basis

Example:

try

   OrderList.Get(i).Remove;

except

  if ExceptionClassName <> ‘ETradeNotFound’ then RaiseCurrentException;

end;

 [/dt_sc_toggle][/dt_sc_toggle_group][/dt_sc_tab][ultimate_spacer height=”4″][ultimate_spacer height=”10″][/dt_sc_tabs][/vc_column][/vc_row]