Nikolai Semko / Publications
Codes
PNG for MetaTrader 5
Forget about BMP files like a bad dream. Thanks to this library, you can now use the PNG format, which has a number of advantages, such as being more compact without losing image quality and maintaining transparency
Time in microseconds (µs) since 01/01/1970 for MetaTrader 5
Simple class for getting the number of microseconds (µs) elapsed since January 1, 1970
3D Moving Average for MetaTrader 5
The first really 3D indicator "Moving Average"
3D Spiral Quotes for MetaTrader 5
Demonstration of Canvas's capabilities using 3D spiral quotes as an example
Price in polar coordinate system for MetaTrader 5
Just for experiment and to demonstrate the possibilities of Canvas. The price is drawn in the polar coordinate system by winding circles
3DMa for MetaTrader 5
Buffer-free indicator implemented on iCanvas
3DMa for MetaTrader 4
Buffer-free indicator implemented on iCanvas
Easy Canvas (iCanvas) for MetaTrader 4
The library and iCanvas class simplify writing programs using Canvas
Easy Canvas for MetaTrader 5
The library and iCanvas class simplify writing programs using Canvas
Four clicks to draw an arc-shaped channel for MetaTrader 5
A quick way to draw an arc-shaped channel in 4 mouse clicks
Forum
Canvas is cool!
I set myself a task: to demonstrate the capabilities of custom graphics via CCanvas class in a short code. Here's what came out of it. This script works in both MQL5 and MQL4. But it is much faster on MT5. Each frame is unique and does not repeat, i.e. the script is not cyclic. #include
Are you ready to meet the black swan?
"A black swan is a hard-to-predict and rare event that has significant consequences." Here is an example of one of the black swans that flew to the Swiss franc on 15 January 2015: The consequences were quite devastating. You can actually see for yourself. Here are some numbers on this swan: USDCHF
Speed of execution of the functions ceil(),round(),floor()
I want to share an unexpected, simple and useful finding with programmers. The rounding functions: floor (), ceil (), round () они же MathFloor (), MathCeil (), MathRound () Have proven to be very slow. To speed up the rounding process by 4-5 times (according to my tests in MQL5), you can replace
Possibilities of Canvas.
Demonstration of the possibilities of Сanvas in dynamics. The picture never repeats. This script also works on MQL4, but much slower. #include <Canvas\Canvas.mqh> void OnStart () { ChartSetInteger ( 0 , CHART_FOREGROUND , true ); CCanvas C; int Width=( ushort ) ChartGetInteger ( 0