Вычисление прибыли в предполагаемом уровне цены
Info
The Вычисление прибыли в предполагаемом уровне цены is a Script for MetaTrader 4 that Всем доброго времени суток. Предлагаю вашему вниманию код, который я разработал для вычисления прибыли в предполагаемом уровне цены.
Usage
This tool is typically used for enhancing chart analysis and decision making.
Platform
This Script works exclusively on MetaTrader 4 (both build 600+ and newer versions).
Setup
Place the downloaded file in MQL4/Scripts folder via File ? Open Data Folder in MetaTrader 4.
How to Install and Use Вычисление прибыли в предполагаемом уровне цены
1. Installation: Move your script file into the MQL/Scripts directory and restart the platform.
2. Execution: Drag the script onto a chart; it will perform a one-time action, such as closing all open orders or clearing chart objects.
3. Editing: Use MetaEditor (F4) to modify code, click "Compile," and verify no errors appear in the terminal before running.
4. Removing: Scripts stop automatically, but you can remove them manually by right-clicking the chart and choosing "Remove Script."
Frequently Asked Questions
Q: How are scripts different from EAs? A: Scripts execute a single action and then stop; EAs monitor the market and trade continuously.
Q: Can I assign a hotkey to a script? A: Yes, right-click the script in the Navigator, select "Set Hotkey," and define your preferred keyboard shortcut.
Q: Why did my script stop? A: Scripts are designed to stop immediately after finishing their programmed command; this is normal behavior.
What this tool does
Всем доброго времени суток.
Typical Use Case
This Script excels in automated trading and technical analysis on MetaTrader 4.
Compatible Platform & Setup
This Script works on MetaTrader 4. Place the file in the MQL4/Scripts folder and restart the terminal.
Description & Settings
Related: Angulation Indicator for MT4/MT5 - another powerful script for MetaTrader 4 traders.
Всем доброго времени суток.Предлагаю вашему вниманию код, который я разработал для вычисления прибыли в предполагаемом уровне цены.
Also recommended: calculation of the number of lots by anton trefolev - similar script with strong performance on MetaTrader 4.
double getlots(double newsl) {
int opntime = 0;
double lotsum = 0;
for (int i = 0; i <= orderstotal()-1; i++) {
orderselect(i, select_by_pos);
if ((orderopentime() > opntime) && (ordertype() == op_buy || ordertype() == op_sell)) {
opntime = orderopentime();
if (ordertype() == op_buy) { lotsum += orderlots() * (newsl - orderopenprice()) / point; }
if (ordertype() == op_sell) { lotsum -= orderlots() * (newsl - orderopenprice()) / point; }
}
}
return (lotsum);
Этот код рассчитывает прибыль для каждой открытой позиции и суммирует ее в указанной точке в лотах * пунктах.
Вы можете использовать это значение для различных целей. Например, я использовал его в трейлинге, чтобы выставлять stop loss только при определенном уровне прибыли.
if ((getlots(stoploss) > 0) && ( ... )) {
ordermodify( ... );
}
В этом случае stop loss будет выставлен только в безубыток, независимо от количества открытых позиций.
Также вы можете использовать это для более сложных условий:
if ((getlots(stoploss) > 3) && ( ... )) {
ordermodify( ... );
}
В данном примере stop loss не будет выставлен, пока суммарная прибыль от всех позиций в точке stop loss не достигнет определенного значения.
Надеюсь, этот код окажется полезным для ваших торговых стратегий.
You may also like: JForex OHLC Data Converter - excellent alternative for script users on MetaTrader 4.
Source Code
#property copyright "robotfx"
#property link "https://robotfx.org"
double getlots(double newsl) {
int opntime = 0;
double lotsum = 0;
for (int i = 0; i <= orderstotal()-1; i++) {
orderselect(i, select_by_pos);
if ((orderopentime() > opntime) && (ordertype() == op_buy) || (ordertype() == op_sell)) {
opntime = orderopentime();
if (ordertype() == op_buy) { lotsum += orderlots() * (newsl - orderopenprice()) / point; }
.......
⚠ Limitations & Risk Warning
- This tool is provided for educational and testing purposes only.
- Past performance does not guarantee future results.
- Trading involves substantial risk of loss. Use on a demo account first.
- Results may vary depending on market conditions, broker, and settings.
- We recommend thorough backtesting and forward testing before using with real funds.