VirtualTradePad mt4 Extra
VirtualTradePad - is a contol panel for working with orders in МetaТrader 4: buy, sell, buystop, buylimit, sellstop, selllimit, close, delete, modify, tralling stop.
You're holding a unique plugin for MetaTrader 4 terminal - virtual control panel VirtualTradePad.
This version of the panel has no limitations on symbols. You can download a demo version here: https://www.mql5.com/en/market/product/2893.
You can also try this panel on MetaTrader 5: https://www.mql5.com/en/market/product/167.
- Works with any account type and broker.
- Doesn't require specific skills.
- Easy and intuitive interface.
- The most important functions only.
Quick reaction on any command.
- When a position is successfully opened, you will hear a sound similar to the same action in the terminal;
- If there is an error, you will hear the error sound;
- You cannot place a stop order at a level less than allowed on the trade server or at 0 zero level;
- On the the BUY and SELL buttons the change of the ask and bid prices is displayed with arrows;
- The information pane that displays the currency pair, the open position size and the total profit;
- In the input parameters you can enable/disable the tips displayed on mouse over buttons, as well as the language of the tips - English / Russian;
- The Close button closes the application;
- The Minimize/Maximize button maximizes/minimizes the panel on the chart;
- The chart can be moved on the chart. To do it, click the upper part of the pane near the Close and Minimize buttons and move the pane in a desired place.
VirtualTradePad "Positions style"
This version has been designed for trading via BUY and SELL orders, as well as using additional functions, such as: Stop Loss modification, Take Profit, Trailing Stop, Position reverse, Position closing.
- Lots - lots managing object. When pressing "+-", lots will be increased by the minimum available lot on the server. A lot cannot drop below the minimum allowable lot on the server;
- BUY - opening a buy position (Ask price above);
- SELL - opening a sell position (Bid price above);
- REVERSE - position reverse function. Positions are reversed having 0 stop levels;
- CLOSE - entire position is closed;
- Takeprofit/Stoploss - selecting Take Profit and Stop Loss for a position. When pressing "+-", Take Profit/Stop Loss will be increased by 1 point. Take Profit/Stop Loss cannot drop below 0 or the minimum allowable value on the server. When pressing "+", Take Profit value will change from zero to the minimum allowable value on the server. If Take Profit/Stop Loss = 0, its value is shown in red. If Take Profit/Stop Loss is not equal to 0, its value is shown in green;
- MODIFY - urgent position modification with specified Take Profit/Stop Loss. Also, stop levels can be reset to 0 or changed;
- Trailing stop - selecting trailing stop;
- ON - enabling Trailing Stop. Enabled for the current selected pair. Press OFF to disable. Trailing Stop level is determined by Stop Loss parameter.
VirtualTradePad "Orders style"
This version has been developed for trading with Buy Stop, Buy Limit, Sell Stop and Sell Limit; and it includes additional functions such as Stop Loss, Take Profit, order distance, order grid and order deletion.
- Distance - distance (in points) for placing pending orders. As for Take Profit/Stop Loss, this value cannot be less than the minimum allowed on the server;
- TakeProfit - distance (in points) of Take Profit for pending orders;
- StopLoss - distance (in points) of Stop Loss for pending orders;
- Lots - trade volume (in lots) for pending orders;
- PLACE Section - order placing options: Buy Stop, Sell Stop, Buy Limit, Sell Limit;
- DELETE Section - order deleting options: Buy Stop, Sell Stop, Buy Limit, Sell Limit;
- GRIDs - number of opened orders. If it is greater than 1, there will be a grid of orders with the same distance from each other. This feature is very useful in MetaTrader 4. Using it one can open additional lots on each level and move the stops on a potentially new level. In other words, this is a Trailing Stop with volume increasing.
VirtualTradePad "Signals style"
This version is for informational purposes. Analyzing the main trade strategies using 10 indicators and 8 timeframes, the panel draws signal direction.
- х - no signal;
- Arrow up - BUY signal;
- Arrow down - SELL signal.
List of Indicators and Signals
Moving Average (MA) (Signal 1)
The signal is calculated using relative position of two moving averages, one of which should have a smaller period (fast МА) while the other - a greater one (slow МА). Their parameters can be specified in the following variables:
- MAFastPeriod and MASlowPeriod - periods of Moving Averages.
- MAFastPrice and MASlowPrice - calculation price of Moving Averages.
- MAFastShift and MASlowShift - shift to the right.
- MAFastMethod and MASlowMethod - averaging method: simple, exponential, smoothed, linear-weighted.
BUY signal appears when the fast МА is located above the slow one, while SELL signal appears when the slow one is above than the fast one. "No signal" state is not used.
Moving Average Convergence/Divergence (MACD) (Signal 2)
Four variables are used:
- MACDFast - fast МА period
- MACDSlow - slow МА period
- MACDSignal - signal МА period
- MAPrice - MAs calculation price.
The signals are also simple: BUY - the main line is above the signal one, SELL - the main line is below the signal one. "No signal" state is not used.
Stochastic Oscillator (Signal 3)
Oscillator consists of two lines - the main and signal lines allowing to trade according to the lines crossing signals. Therefore, the signals are as following: BUY - the main line is above the signal one, SELL - the main line is below the signal one.
Parameters available to users:
- StochK - %К period.
- StochD - %D period.
- StochSlowing - slowing the indicator.
- StochPrice - calculation price.
- StochMethod - averaging method.
RSI (Signal 4)
The indicator is similar to CCI and DeMarker. Leaving overbought (RSIHighLevel) or oversold (RSILowLevel) zones is a signal. Therefore, rare BUY signals correspond to crossing the upper level downwards, while SELL signals correspond to crossing the lower level upwards. The main state is "no signal". The indicator period can be set in the RSIPeriod parameter, while calculation price is set in the RSIPrice parameter.
Commodity Channel Index (CCI) (Signal 5)
It also uses all three signals, but the main state is still "no signal". Rare trading signals correspond to crossing the upper level downwards (BUY) and crossing the lower level upwards (SELL). Upper and lower levels are determined by the values of CCIHighLevel and CCILowLevel external parameters. Indicator calculation period and price are determined by the CCIPeriod and CCIPrice values.
Williams Percent Range (WPR) (Signal 6)
The indicator is similar to RSI, CCI and DeMarker. Therefore, the signals are: BUY - crossing the overbought level (WPRHighLevel) downwards and SELL - crossing the oversold level (WPRLowLevel) upwards. All other cases refer to "no signal" state. Only the indicator period parameter (WPRPeriod) can be changed from outside.
Bollinger Bands (Signal 7)
All three types of signals are used: BUY - previous candle close price is below the lower line, SELL - previous candle close price is above the upper line, "no signal" - candle close price is between the lines. External variables:
- BandsPeriod - indicator period.
- BandsShift - shift to the right.
- BandsDeviation - deviation.
- BandsPrice - calculation price.
Alligator (Signal 9)
Since the indicator consists of three moving average lines, it has plenty of parameters:
- JawPeriod - jaw period, blue line.
- JawShift - jaw shift to the right.
- TeethPeriod - teeth period.
- TeethShift - teeth shift to the right.
- LipsPeriod - lips period.
- LipsShift - lips shift to the right.
The same averaging method (AlligatorMethod) and calculation price (AlligatorPrice) are also used for all lines. All lines have a positive shift to the right. This allows reading the indicator values on the current bar, as they are already complete and are not a subject to change. Therefore, the signals in this case are: BUY - the lips line is higher than the teeth line, while the latter one is higher than the jaw line; SELL - the lips line is below the teeth line, while the latter one is below the jaw line. There is no signal in all other cases.
Parameters of the Indicators:
- Moving Average parameters:
- MACD parameters:
- Stochastic Oscillator parameters:
- RSI parameters:
- CCI parameters:
- WPR parameters:
- Bollinger Bands parameters:
- Alligator parameters:
- Ichimoku Kinko Hyo parameters:
VirtualTradePad "CLP style"
- The panel can work only on its own symbol (Current Symbol) or consider the total profit or loss by all symbols (All symbols).
- The panel can be used as a virtual Stop Loss or Take Profit. To do it, set the profit and loss size in pips (Profit p or Loss p), put check marks and select your symbol. The Expert Advisor will close positions for the selected symbol considering the number of pips obtained or lost.
- You can choose the close type: by profit in dollars, in pips or in % of balance or by loss in dollars, in pips or in % of balance.
- There is also the "CLOSE ALL" button that instantly closes the current symbol position or all positions (depending on your choice).
- The current state of your account is displayed right on the panel in three different ways corresponding to the close types.
- Start the panel on your currency pair chart.
- On the panel select the option to close positions by all symbols or by the current symbol.
- To activate the options for selecting the close type, you need to specify a non-zero value for the corresponding parameters. Note that a positive value must be specified for the profit and a negative value must be specified for the loss, for example: -100.
- Check the options you want to use for closing.
- Enable the Close if Profit or Loss button, is should become blue. It means that the Expert Advisor has started working.
- Once the profit or loss of your position crosses the set levels, the positions will be closed.
- The emergency button CLOSE ALL is intended for closing all positions instantly.
VirtualTradePad "Info style"
- Symbol name, presence of an open position, its type and lot size.
- Bid and Ask prices displayed in a readable way.
- Current profit of the position in US dollars, points and in percentage of the current deposit size.
- Current spread (if the spread is floating, F is indicated in the caption).
- Current minimum distance for stop orders and pending orders.
- Swap for short and long positions.
- Execution type of the position.
- 1 point price in deposit current for the current volume of the position.
- Distance to stop loss in points and dollars.
- Distance to take profit in points and dollars.
- Daily profit or loss for the given currency pair for the current day in US dollars, deposit currency and in percentage of the current deposit size.
- Weekly profit or loss for the given currency pair for the current week in US dollars, deposit currency and in percentage of the current deposit size.
- Monthly profit or loss for the given currency pair for the current month in US dollars, deposit currency and in percentage of the current deposit size.
- Annual profit or loss for the given currency pair for the current year in US dollars, deposit currency and in percentage of the current deposit size.
- Entire profit or loss for the given currency pair for the entire available history in US dollars, deposit currency and in percentage of the current deposit size.
MovingInWLUSE (true - false) LevelWLoss(in points) LevelProfit (in points)
These parameters adjust the possibility to modify deals moving the Stop Loss to breakeven at the earliest opportunity.
You would like to set Stop Loss in the break even, when the deal will score +10 points of profit:
MovingInWLUSE = true; LevelWLoss=0 ; LevelProfit =10;
You want to set Stop Loss in +5 points, when the deal will score +20 points of profit:
MovingInWLUSE = true; LevelWLoss=5 ; LevelProfit =20;
Note that the difference between LevelProfit - LevelWLoss must always be greater than or equal to the minimum stop on the server.
Added AutoTrade_by_Signals parameter to the signals block. This parameter enables the automatic placing of a position in the signal direction, if the signal in that direction exceeded Signals_Alert_After_Percent.
Lot, Stop Loss, and Take Profit are set based on the data entered in the first Positions tab
Attention: the Expert Advisor automatically opens a position on the direction of the signal, without closing the previous one.
- Added parameter
UseAllMagicFromAllAccount - true by default, allows the VTP to manage and process all trades with any magic number on the current symbol.
For example: when using the Close button - all trades on the account of the current currency pair are closed. The CLP tab will also work with all trades.
If false - the panel works only with its own trades with the specified MagicNumber
General changes and improvements:
-Depending on the account currency, added the corresponding icon.
-Improved the function for displaying the trade levels when hovering the panel.
(when hovering the panel, the trade levels of the terminal are disabled, so that the stop levels are not caught when pressing buttons).
-Fixed and improved the function for calculating commission and swap for INFO,CLP.
-Changed the tooltip for lots when enabling the DynamicLotStopLoss || DynamicLotAuto options.
-Added new parameter Show_Future_Line - show the lines and description of the future trade.
This function displays the stop loss / take profit lines of the future trade on the chart, statement in points, price and current profit/loss.
It also displays the position opening line with indication of the lot. If you set the lot to be calculated based on stop loss/deposit in the settings, the EA will display the calculated lot.
-TrailingStop now calculates and considers the commission when trailing the position.
-Fixed display of the cumulative position type in the Info tab.
-Added the value of tick for 1 lot and for cumulative lot of the opened positions to the TickValue line.
-Added the Commission line for displaying the current commission of the open deals.
-Added parameter Use_Lots_in_CLP_Points for working with the CLP tab - true - the EA will also consider the lot of those positions during calculation of profit points. This option can be useful in trading on a hedging account with different lots.
opened 2 SELL positions on EURUSD
SELL 0.01 with profit of 20 and 0.2 USD
SELL 0.02 with loss of -12 points -0.24 USD
-If Use_Lots_in_CLP_Points = false the EA will calculate the "net" points.
In this case, the Profit will be: -0.04 USD or 8 points.
As we can see, the position gained profit in points, but it is a loss in USD.
-If Use_Lots_in_CLP_Points = true the EA will calculate points with consideration of lots.
In this case, the profit will be: -0.04 USD or -4 points.
If calculation of profit is in points and the "Include lots in profit calculation" is enabled,
the EA will find the minimum lot of the provided positions and calculate the Points on that basis.
Minimum position 0.01, 1 "net" point = 1 point,
If a position is opened with a lot of 0.02, then 1 net point = 2 points with consideration of the lot.
If a position is opened with a lot of 0.05, then 1 net point = 5 points with consideration of the lot.
-Added checking of the input values for closing profit or loss:
If the specified profit is lower than the current - system generates a warning and disabled the closure mode.
If the specified loss is greater than the current - system generates a warning and disabled the closure mode.
If set to 0 and user attempts to enable closure - system generates an error.
-Added the AutoCorrect_LevelCLP parameter:
Only negative values can now be entered to the loss field. If user enters +10, the system automatically converts it to -10.
Only positive values can now be entered to the profit field. If user enters -10, the system automatically converts it to +10.
Only a positive value can be entered in the CLP_TralOptions, otherwise the EA generates an error.
-Revised and improved the MAGIC TARGET button.
-When enabled and line is moved, the type of the future position and lot of the future position is displayed.
-When pressing Place, the EA checks the correctness of level placement, and if the levels are specified incorrectly, yjr EA cancels the order placement and points at the incorrect data.
-Added parameter MAGIC_FONTSIZE = size of text on the chart.
-Added check for the "Distance" field, if Distance ==0, the EA cancels the order placement.
-When using the MAGIC TARGET, the Grid and Distance fields can now be modified.
Added parameter CLP_DeleteStopOrders for the CLP block. When deals are closed by profit or loss, deletes all pending orders.
Added the MagicNumber parameter when opening positions and orders. The Magic number is involved in: opening/closing positions, placing/deleting pending orders, virtual stop loss/take profit, trailing stop of positions. All other blocks works without the magic number.
Without rounding - place stop orders without rounding
To 1 digit - rounding to 1 digit. For example, if Stoploss= 1.23456, the trade will be opened with a stop loss of 1.23450
To 2 digits - rounding to 2 digits. For example, if Stoploss= 1.23456, the trade will be opened with a stop loss of 1.23400
All variables and data changes made in the panel are now saved when the terminal is restarted.
If you turn off the terminal and turn it on again - all the parameters will be re-loaded from the global variables.
Added the TrailingProfit function to the CLP tab:
Trailing Stop at Closing.
A new function for trailing profits has been implemented on user demand. In this case, the profit is fixed with some correction. As soon as the profit reaches the specified value, the Expert Advisor saves the current profit level and starts trailing the profit.
If you made settings for closing at the profit of 10 dollars:
Profit $ - positive closing.
Profit $ - value of positive closing.
TrailingProfit- distance from Profit $, which, when reached, triggers trailing of profit.
If Profit $ is set to 10 and TrailingProfit is set to 5 the Trailing Stop will be set at 5 dollars. The Trailing Stop will come into play when the Expert Advisor passes the 10 dollar line and start moving following the profit. The Journal will show entries about the current profit status.
When the total profit falls below the last fixed level, TrailingProfit, the Expert Advisor will perform forced closing of all position.
The function works for all closure types: Every symbol, Current symbol, Separate BUY and SELL direction, Each order separately.
Virtual stop loss and take profit mode.
E.g. if you set closure at a loss of -5 $ and a profit of 100 points: each trade will be closed separately either by a loss-loss of -5 $ or by a take-profit of 100 points.
Added BUY SELL trend signals (in percentage) on the Signals tab.
Added the ability to hide individual indicators and timeframes for calculating percentages from the Signals tab:
Signals_M1 = true;
Signals_M5 = true;
Signals_M15 = true;
Signals_M30 = true;
Signals_H1 = true;
Signals_H4 = true;
Signals_D1 = true;
Signals_W1 = true;
Signals_BARS = true;
Signals_MA = true;
Signals_MACD = true;
Signals_Stoch = true;
Signals_RSI = true;
Signals_CCI = true;
Signals_WPR = true;
Signals_BB = true;
Signals_ICH = true;
Signals_ALI = true;
Added the ability to display the alert on the screen when using the Tab Signals (Note: Tab Signals thus should be active).
If Signals_Alert_After_Percent = 50, then if the selected timeframe and BUY or SELL indicators are higher than 50%, VIRTUALTRADEPAD shows Alert.
example: Step TrailingStop = 1 then every 1 point position will be modified.
example: Step_TrailingStop = 25, then every 25 points position will be modified.
Added checkbox "Separate BUYSELL" to panel CLP, which allows to calculate and close positions on the overall profit or loss separately for BUY and SELL.
Revised the system of signals for the Signals panel.
This tab shows the trend for the TF and indicator. Previously, signals were indicated after their activation. Now, the current trend is displayed.
If the priceline is higher than the current price - sets BuyStop
If the priceline is lower than the current price - sets SellStop
New color options:
color MAGIC_ORDER - color of the price line for MAGICTARGET;
color MAGIC_STOPLOSS - Stop Loss line color for MAGICTARGET;
color MAGIC_TAKEPROFIT - Take Profit line color for MAGICTARGET;
FontSizeTextPrice - Font size for the column Price
Digitss - Display value of the price for a 4-digit or 5 digit broker
CommentOrders - Comment orders at the opening panel
I am glad to present you a new function for trading via my panel in one click — MAGIC TARGET.
MAGIC TARGET is a functional button, a control element of the Orders tab. It is designed for the fast setting of a pending or a market order in the МТ4 and МТ5 platforms.
MAGIC TARGET button automatically defines a placed order type quickly and reliably.
Added parameters for setting a lot by an auto lot from a deposit and a stop loss
extern bool DynamicLotStopLoss=false; // Autolot from StopLoss
extern bool DynamicLotAuto=false; // Autolot from Deposit
Added step parameters for increasing and decreasing the settings (stop loss, take profit, lots, distance)
extern double Step_Lots=0.01;
input int Step_StopLoss=1;
input int Step_TakeProfit=1;
input int Step_Distance=1;
A new option called VirtualSLTPUse has appeared in the settings. When enabled, all stop losses and take profits on the panel become virtual. Virtual stop loss and take profit operation is also enabled by ticking the appropriate option. You should also set stop loss and take profit value. After that, stop lines appear on the chart for the appropriate position. The level is calculated from a position Open price.
- FontSizeEDIT - font size for input fields (lot, take profit, stop loss).
- FontSizeText - size of text labels.
- FontSizeArrow - size of arrows in Signals tab.