This is just some information, rather than a question, but I thought I'd share it since I've been wondering how to do this for some time.
The standard BITMAP and BITMAP_LABEL objects allow us to load bitmap images on to the chart, but do not support 32-bit images (with alpha channel).
This means if you want to load an image that has a transparent background, you have to first paint the background of the image the same colour as the background of your chart in a drawing program. This subsequently means if you are coding an indicator that you want to share with others, if they have a different background colour to their chart than you, it's going to show up as an ugly square of the incorrect colour.
By way of an example:
Original image with transparent background
Painted with my chart's background colour
How it looks on my chart
How it looks on someone else's chart with a white background
Not to mention that if the image ends up in front of candles even on my chart, it still looks ugly
This is where the Canvas class can come to the rescue. It had a method called LoadFromFile, which supports 32-bit bitmaps.
The syntax is simple:
canvas.CreateBitmapLabel(chartId, subwindowId, chartObjectName, x, y, width, height, COLOR_FORMAT_ARGB_RAW);
First however we must convert our bitmap to 32-bit alpha format.
There is a free program called Pixelformer which enables us to do this easily. Images can be imported in PNG format with transparency, and exported as 32-bit bitmaps. There is one small caveat - in order to display properly in MT4, the bitmap must be exported from Pixelformer with the "top-down row order" option selected. If this is not checked, only the top half of the bitmap shows up when you try to display it in MT4 (I think this is down to a bug in the section of the Canvas code which tries to flip an image when handling 32-bit format).
Once this has been done, the result can be seen as follows:
Arrow displays correctly on dark background
And against a light background
And can be superimposed in front of candles without obscuring them
A script for opening a grid of orders
If you need to quickly open several pending orders (Buy Limit, Sell Limit, Buy Stop, Sell Stop) on a certain distance from the current price, this script will do all the routine for you! Allow AutoTrading before running the script.
Run the script on a chart.
Language of messages displayed (EN, RU, DE, FR, ES) - language of the output messages (English, Russian, German, French, Spanish). Price for open - open price. If set to
Trade in the opposite directions with HedgeTerminalApi library!
HedgeTerminalApi is a program interface allowing you to use HedgeTerminal virtualization technologies in your robots and scripts. With HedgeTerminalApi, you are able to trade in the opposite directions when two or more trading algorithms occupy opposite positions on a single symbol. The library allows robots to track their positions even if these positions overlap entirely or partially. Moreover, with this library, you are able to
Active Lines - a powerful professional tool for operations with lines on charts. Active Lines provides a wide range of actions for events when the price crosses lines. For example: notify, open/modify/close a position, place/remove pending orders. With Active Lines you can assign several tasks to one line, for each of which you can set individual trigger conditions, as well as conditions for re-activations and the number of possible activations.
Active Lines helps you easily organize various tr
The script allows users to easily close positions if their profit/loss reaches or exceeds a value specified in pips.
Please set slippage value first. Sometimes some positions do not close due to high volatility of the market. Please set larger slippage or restart the script.
Exp COPYLOT CLIENT for MT5 is a copier for the МetaТrader 5 platform. It copies forex trades from any accounts. Including those from terminals МТ5 and МТ4.
Install the Expert Advisor in the terminal where you want to copy trades. Specify any text label name as pathRead, for example, "COPY". This should match the master terminal (to bind the two terminals). To copy trades, you need to install the free Master copier in the terminal from where you want to copy the trades: COPYLOT
Main Pivots is an indicator which looks for pivots points on preset intervals (days, weeks, months, years, etc.). Then all extreme points are checked for splice and consistent support and resistance lines are formed. These lines are useful for detecting the best pivot points.
It finds a pair of pivot lines for each interval which correspond to Low (support line) and High (resistance line) of the price movement on the interval. Difference between these lines represemt the price movement for the
The indicator consists of the two parts – entry system displayed on the chart and currency power analyzer.
The analyzer can take on values from 0 to 3:
the higher the value, the stronger the currency; the smaller the value, the weaker the currency; average values of the indicator suggest that the currency is in flat.Recommendations on usage:
Buy if Trader Dream shows Buy signal and the analyzer shows the currency's strength (the value exceeds 2). Sell if Trader Dream shows Se
Robust median renko style indicator for creating custom charts resembling median renko, mean renko, turbo renko and better renko candles as well as vanilla renko with wicks plus PointO charts. This all in one package provides all of the signals needed by day traders, scalpers and even long term traders.
Indicator is an overlay on the main chart so it is possible to utilize one click trading and order manipulation directly on the custom charts. Visual order placement is also
The EASIEST way to manage your risk for each trade!
Add the indicator to your chart, configure a risk percentage (of account equity) Enter the number of pips for your stop loss into the text entry field that appears on the chart The position size to take will automatically be updatedThe product features two modes - a compact mode which allows entry of stop loss pips and shows the resulting lot size based on the percent risk setting, as well as an expanded mode that also shows
This is a classical trading strategy, which falls into the category of breakout systems. They form support and resistance levels, which temporarily limit further price movement. When the price breaks down the support level or breaks up the resistance level, there emerges a strong momentum in the breakout direction, which allows to make profit on strong price movements with moderate risk.
To create the strategy, we used historical data with the quality of history of 99.9%.
It uses filtration o
Pipfinite creates unique, high quality and affordable trading tools.
Our tools may or may not work for you, so we strongly suggest to try the Demo Version for MT4 first. Please test the indicator prior to purchasing to determine if it works for you.
We want your good reviews, so hurry up and test it for free...we hope you will find it useful.
Energy Beam with Swing Control
Strategy: Confirm swing pullback signals Watch Video: (Click Here)Energy Beam with Trend Laser
The Expert Advisor implements the classic "triangular arbitrage", which is successfully used by hedge funds.
"Triangular" arbitrage refers to a class of neutral-market strategies, in which the profit or loss of open positions does not depend on the direction of the market movement as a whole.
In order to take profit, the EA exploits a weak spot of market makers - it utilizes the difficulty of balancing cross rates of all currency pairs.
The advantages of the strategy are the following:
Fast Copy MT5 allows to copy trades between different MetaTrader 5 (netting)(hedge) and MetaTrader 4 accounts in any direction and amount, quickly and easily (without loading the system).
Any type of copying is available
MT5 —> MT5 MT5 —> MT4 MT4 —> MT5 MT4 —> MT4
* For any interaction with the MT4, it is necessary to additionally install Fast Copy MT4
One tool for sending and receiving transactions: [master] > [slave] operation mode can be selected in
Quest Candlestick Pattern Indicator v2.0 is an indicator that monitors more than 37 signals in the real-time mode. It notifies about the signals using Arrows, Emails and Sounds. It is really a good tool to help you trade.
HammerEngulfingMorning StarEvening StartShooting StarInvert HammerDark CloudPiercingHaramiTweezers TopTweezers BottomBelt Hold LineUpside Gap Two CrowsMat Hold PatternThree CrowsCounter Attack LinesSeparating LinesGravestone DojiLong Leg DojiBear DojiTas
The PZ Day Trading indicator detects reversals in a zig-zag fashion, without repainting or backpainting. Based on breakouts of variable lengths, the indicator uses only price action to pick trades and reacts to the market very fast. The positional accuracy of its signals offers huge opportunity for profits, easily up to 80% winners.
Amazingly easy to tradeChart statistics will help you to optimize your tradingIt works on every single timeframe without fine tuningThe indicator analyzes its own q
The Red Green Trade Signals indicator just gives you the direct signal to open and close your positions, just like traffic signals.
When the signal turns to red, the market goes to short position, while the signal turns to green, the market goes to long position.
This indicator also provides the precise time and price to open/close your positions with the 'buy' (green) and 'sell' (red) arrows. It's easy to use, and it's ready to go without any parameter to set.
This indicator is implemented b
The indicator draws a trend channel and adds Fibonacci levels (extension).
It is a part of Argo-Trix strategy's set. However, it can also work as an independent strategy (trading within a channel, side channel's breakdown or Fibonacci levels).
The indicator has plenty of settings that can be changed according to your strategy and trading style. For those who trade within a channel, the indicator displays inclined or inclined + side channels and defines the side channel's width in the terminal
The script is intended for automatic placing of Sell Stop pending orders, Stop Losses and Take Profits on the user specified levels. This script is not that useful as "Virtual pending buy stop", since short positions are opened as Bid price crosses the levels. Thus spread widening is not dangerous. Nevertheless, you need to have this script to prevent unwanted hitting of the Stop Loss levels.
Automation of the process of placing the Sell Stop pending orders, Stop Losses and T
The most profitable trend traders are the ones who know how to recognize not only the market trend, but also the trading opportunities that arise once a trend has been established. The Pz Trend Trading indicator has been designed to profit has much as possible from trends taking place in the maket.
Established trends offer dozens of trading opportunities, but most trend trading indicators neglect them completely, and leave the trader completely uninformed about what the market is doing during a
The script creates account summary report in a separate window.
The report can be created for all deals and on deals for selected financial instruments.
It is possible to specify a time interval of calculation and save report to htm-file.
The script creates account summary report in a separate window.
The report can be created for all deals and for deals of the selected financial instruments.
It is possible to specify a time interval of calculation and save report to htm-file.
The indicator enhances the potential of standard fractals and allows you to identify, display and use them, calculating them for any odd length, i.e. 3,5,7,9 bars and so on.
The number of bars to be used is set in the 'Left fractal bars count' variable (by default set to 2). Its value determines the number of bars on one side, not including the central one, i.e. for a standard fractal of 5 bars it is equal to 2 (2 bars * 2 sides + 1 central bar = 5 bars for a fractal search and identification).
This indicator allows you to enjoy the two most popular products for analyzing request volumes and market deals at a favorable price:
Actual Depth of Market Chart Actual Tick Footprint Volume ChartThis product combines the power of both indicators and is provided as a single file.
The functionality of Actual COMBO Depth of Market AND Tick Volume Chart is fully identical to the original indicators. You will enjoy the power of these two products combined into the single super-indicator!
The indicator generates early signals basing on ADX reading data combined with elements of price patterns.
Works on all symbols and timeframes.
The indicator does not redraw its signals. You see the same things on history and in real time.
For better visual perception signals are displayed as arrows (in order not to overload the chart).
The indicator is a complete analogues of the Trend Monitor indicator for MetaTrader 4
The best results are obtained when the indicator works o
The script is intended for automatic placing of Buy Stop pending orders, Stop Losses and Take Profits on the user specified levels.
Avoiding unwanted entering a long position in case of false hitting the level as a result of widening of the spread by a dealing center. Avoiding unwanted triggering of a Stop Loss in case a quote pierces a significant level (fractal) without further confirmation with the close price. Setting a necessary virtual order and entering the market in
The indicator is intended for determining the spread and swap size, the distance for setting stop orders and stop losses from the current price allowed and the risk per 1 point in the deposit currency.
The indicator informs a trader about possible additional expenses and profits connected with transferring a position to the next trade session of the financial instrument. It also informs about the spread size and the distance of pending orders, stop loss and trailing from the current price. In a
This is an open interest indicator for MetaTrader 5. It fixes open interest value once per minute and writes it to the file (on your PC). The product works on any timeframe but only with exchange instruments.
Here is the product, which truly reveals all the computing and graphical capabilities of the MetaTrader terminal.
The TrendNavigator indicator helps you take the most effective trading decisions, features stunning accuracy, unlimited graphical capabilities and highly developed notification service.
3D graphics 4 unique trend determining algorithms 5 types of notifications of trend change which appear as Buy and Sell signals Very high accuracy Shows local lows and highs Free notification
The indicator bounds the price according to a cyclic wave dependency. Thus, all the crossing points, in which the movement is changed considering the indicator period, are the optimal ones. The crossing points can be used as the potential market reversal points. However, do not forget about the complex approach: the indicator signals require additional data to enter the market.
We present you an effective software solution for arbitrage between brokers.
The Arbitrage on the market became widespread due to decentralization. There are many liquidity providers, whose quotes differ for various reasons. By tracking the dynamics of changes in the quotes of different brokers, it is possible to determine the delayed and leading brokers, thereby predicting the future prices of the delayed broker for a short time. Knowing these prices and using efficient built-in software filte
Safe Automatic is a safe MetaТrader 5 trading robot working autonomously on a VPS server. The good results are achieved on EURUSD.
The EA applies modified versions of a trend-following strategy, half-pyramiding, scalping, Elliott Wave method and speculating trading with a deposit protection. The EA switches the strategies automatically. The program also takes the news calendar into account: the robot does not enter the market in a 10-minute interval before and after a news rel
If you replace the function LoadFromFile() by the fixed code, you will also be able to load images that were stored as resources. But you must not set the Top-Down-row-order flag, it won´t work.
This way you don´t need to copy the bitmaps into the files folder of any clients.
//| Load data from file |
bool CCanvas::LoadFromFile(const string filename)
//--- open file
//--- Modified by Doerk
//--- read header
Print("Failed to read file header");
//--- process depending on color depth
//--- flip image
//--- check if at least one pixel has alpha channel
//--- then leave image as is (consider it as premultiplied ARGB)
//--- there is alpha channel
//--- no alpha channel
//--- consider image as nontransparent, add alpha channel as 0xFF
//--- color components are not processed by terminal (they should be correctly specified by user)
//--- convert image to premultiplied ARGB
//--- 24 bits - change image color depth to 32 bits
//--- allocate memory for pixels
//--- the number of bytes that define a line of pixels must be multiple of 4
byte_width=m_width*3; // number of bytes in line of pixels
byte_width=(byte_width+3)&~3; // align line to the 4 byte boundary
Hallo and thank you for this publication,
I have tried the functions. The function to cerate ab BitmapLabel is running, but the image is not load.
I can see the Object in the Properties on chart and I can select it.
Now I controlled the File to the bmp and copy it for test in same Folder "Expert"
The bmp ist 32bit and I used Pixelformer and same format too.
I hope someone can help me... thank you.
I have tried the functions. The function to cerate ab BitmapLabel is running, but the image is not load...
Canvas #include is not necessary for bitmap image with alpha channel.
Bitmaps with alpha channel require #resource followed by path to image or they will not display. This is not found in MQL4 documentation but it's the only way it will work.
Example - If your image is located inside the folder /MQL4/Files/, then you would use the following: #resource"\\Files\\testbild.bmp";
Then add the image to the chart using whatever code you've created then use "::Files\\testbild.bmp" for your path.