Forex Earth Robot
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «forex-earth-robot.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
«Forex Earth Robot» — торговый советник для MetaTrader 4, автоматизирующий открытие и управление ордерами на валютном рынке. Программа поддерживает несколько логик входа в сделку с фильтрами по ADX, таймфрейму, спреду и времени, а также позволяет задавать различные сценарии выхода из позиций.
В советнике реализованы управление денежными средствами с расчётом лота по риску, трейлинг-стоп, безубыточная сделка и управление ордерами, включая закрытие противоположных позиций. Доступна фильтрация по дням недели, часам торговли и торговым сессиям, а также уведомления через email, alert и звуковые сигналы.
Параметры настройки охватывают лот, магический номер, стоп-лосс, тейк-профит, ограничения по количеству сделок и ширине спреда. Советник работает на уровне текущего графика и использует стандартные торговые API MetaTrader 4 для выполнения операций.
Настройки программы
| Настройка | Описание |
|---|---|
| magic | Магический номер — Магический номер для идентификации ордеров советника. |
| moneymanagement | Управление капиталом — Группа настроек управления денежными средствами. |
| lots | Размер лота — Фиксированный размер лота. |
| mm | Управление капиталом — Включение или выключение управления денежными средствами. |
| risk | Риск — Процент риска для расчёта размера лота. |
| minlot | Минимальный лот — Минимально допустимый размер лота. |
| maxlot | Максимальный лот — Максимально допустимый размер лота. |
| lotdigits | Знаки лота — Количество знаков после запятой для округления лота. |
| ordersmanagement | Управление ордерами — Группа настроек управления ордерами. |
| ecn | Режим ECN — Переключатель режима ECN для ордеров. |
| oppositeclose | Закрытие противоположных — Автоматическое закрытие противоположных позиций. |
| reversesignals | Разворот сигналов — Разрешение разворота сигнала при наличии противоположной позиции. |
| maxtrades | Максимум сделок — Максимальное количество одновременных сделок. |
| tradesperbar | Сделок на бар — Максимальное количество сделок на бар. |
| hidesl | Скрыть стоп-лосс — Скрытие стоп-лосса при открытии ордера. |
| hidetp | Скрыть тейк-профит — Скрытие тейк-профита при открытии ордера. |
| stoploss | Стоп-лосс — Фиксированное значение стоп-лосса в пунктах. |
| takeprofit | Тейк-профит — Фиксированное значение тейк-профита в пунктах. |
| trailingstart | Начало трейлинга — Начальное значение прибыли для активации трейлинг-стопа в пунктах. |
| trailingstop | Трейлинг-стоп — Значение трейлинг-стопа в пунктах. |
| trailingstep | Шаг трейлинга — Шаг трейлинг-стопа в пунктах. |
| breakevengain | Безубыточный профит — Процент прибыли для активации безубыточного управления. |
| breakeven | Безубыточный стоп — Уровень безубыточной фиксации в пунктах. |
| maxspread | Максимальный спред — Максимально допустимый спред в пунктах. |
| adordersmanagement | Расширенное управление ордерами — Группа расширенных настроек управления ордерами. |
| firstticks | Первые тики — Переключатель ожидания первых тиков на новом баре. |
| ticks | Тики — Минимальный объём тиков для фильтра первых тиков. |
| changedirection | Смена направления — Разрешение смены направления текущей позиции. |
| onesideatatime | Одна сторона за раз — Разрешение только одной стороны позиции за раз. |
| stop | Стоп-лосс/Тейк-профит — Фиксированное значение стоп-лосса и тейк-профита. |
| trailing | Трейлинг-стоп — Величина трейлинг-стопа в пунктах. |
| entrylogics | Логика входа — Группа настроек логик входа в сделку. |
| lastxbars | Бары для входа — Количество последних баров для анализа входного сигнала. |
| ybarsago | Бары назад для входа — Количество баров назад для анализа входного сигнала. |
| adxfilter | Фильтр ADX — Включение и выбор таймфрейма фильтра ADX. |
| adxtf | Таймфрейм ADX — Таймфрейм, на котором рассчитывается фильтр ADX. |
| adxperiod | Период ADX — Период расчёта индикатора ADX. |
| adxlevel | Уровень ADX — Пороговое значение ADX для фильтрации сигналов. |
| exitrule | Правило выхода — Включение или выключение правила выхода из позиции. |
| exitlastxbars | Бары для выхода — Количество последних баров для проверки условия выхода. |
| exitybarsago | Бары назад для выхода — Количество баров назад для проверки условия выхода. |
| shift | Смещение бара — Смещение бара для анализа ценовых данных. |
| timefilter | Временной фильтр — Группа настроек временной фильтрации. |
| usetimefilter | Использовать временной фильтр — Включение или выключение временной фильтрации. |
| summergmtshift | Летнее GMT смещение — Смещение летнего GMT для временной фильтрации. |
| wintergmtshift | Зимнее GMT смещение — Смещение зимнего GMT для временной фильтрации. |
| mondayfilter | Фильтр понедельника — Включение фильтра понедельника. |
| mondayhour | Час понедельника — Час фильтра понедельника. |
| mondayminute | Минута понедельника — Минута фильтра понедельника. |
| weekfilter | Недельный фильтр — Включение недельной торговой фильтрации. |
| starthour | Начальный час — Начальный час торговой фильтрации. |
| startminute | Начальная минута — Начальная минута торговой фильтрации. |
| endhour | Конечный час — Конечный час торговой фильтрации. |
| endminute | Конечная минута — Конечная минута торговой фильтрации. |
| tradesunday | Торговля в воскресенье — Разрешение торговли в воскресенье. |
| fridayfilter | Фильтр пятницы — Включение фильтра пятницы. |
| fridayhour | Час пятницы — Час фильтра пятницы. |
| fridayminute | Минута пятницы — Минута фильтра пятницы. |
| testhour | Час тестирования — Час для тестирования стратегии. |
Поиск по коду файла
#import "stdlib.ex4"
string ErrorDescription(int a0); // DA69CBAFF4D38B87377667EEC549DE5A
#import
string RTRs_76 = "Forex Earth Robot";
extern int magic = 1234;
bool RTRi_88 = FALSE;
bool RTRi_92 = TRUE;
bool RTRi_unused_96 = FALSE;
bool RTRi_100 = FALSE;
bool RTRi_104 = FALSE;
bool RTRi_108 = FALSE;
bool RTRi_112 = FALSE;
bool RTRi_116 = FALSE;
bool RTRi_120 = FALSE;
bool RTRi_124 = FALSE;
bool RTRi_128 = FALSE;
bool RTRi_132 = FALSE;
extern string moneymanagement = "Money Management";
extern double lots = 0.1;
extern bool mm = FALSE;
extern double risk = 1.0;
extern double minlot = 0.01;
extern double maxlot = 50.0;
extern int lotdigits = 2;
bool RTRi_184 = FALSE;
double RTRd_188 = 2.0;
bool RTRi_196 = FALSE;
int RTRi_200 = 0;
double RTRd_204 = 2.0;
double RTRd_212 = 0.0;
bool RTRi_220 = FALSE;
int RTRi_224 = 0;
bool RTRi_228 = FALSE;
int RTRi_232 = 0;
double RTRd_236 = 1.0;
double RTRd_244 = 1.0;
int RTRi_252 = 500;
string RTRs_unused_256 = "Profit Management";
bool RTRi_264 = FALSE;
double RTRd_268 = 0.1;
double RTRd_276 = 100.0;
bool RTRi_284 = FALSE;
double RTRd_288 = 10.0;
double RTRd_296 = 10000.0;
bool RTRi_304 = FALSE;
double RTRd_308 = 5.0;
double RTRd_316 = 10000.0;
bool RTRi_324 = FALSE;
double RTRd_328 = 1.0;
double RTRd_336 = 0.5;
bool RTRi_344 = FALSE;
double RTRd_348 = 75.0;
double RTRd_356 = 20.0;
bool RTRi_364 = FALSE;
double RTRd_368 = 10.0;
double RTRd_376 = 5.0;
extern string ordersmanagement = "Order Management";
extern bool ecn = FALSE;
bool RTRi_396 = TRUE;
bool RTRi_400 = FALSE;
bool RTRi_404 = FALSE;
bool RTRi_408 = FALSE;
int RTRi_412 = 20;
bool RTRi_416 = FALSE;
bool RTRi_420 = FALSE;
extern bool oppositeclose = TRUE;
bool RTRi_428 = FALSE;
int RTRi_432 = 0;
extern bool reversesignals = FALSE;
extern int maxtrades = 500;
extern int tradesperbar = 1;
bool RTRi_448 = FALSE;
int RTRi_452 = 1;
extern bool hidesl = FALSE;
extern bool hidetp = FALSE;
extern double stoploss = 0.0;
extern double takeprofit = 0.0;
bool RTRi_480 = FALSE;
bool RTRi_484 = FALSE;
double RTRd_488 = 5.0;
double RTRd_496 = 50.0;
double RTRd_504 = 20.0;
double RTRd_512 = 25.0;
int RTRi_520 = 0;
extern double trailingstart = 0.0;
extern double trailingstop = 0.0;
double RTRd_540 = 0.0;
extern double trailingstep = 1.0;
extern double breakevengain = 0.0;
extern double breakeven = 0.0;
int RTRi_572 = 1440;
double RTRd_576 = 0.0;
extern double maxspread = 0.0;
extern string adordersmanagement = "Advanced Order Management";
extern bool firstticks = FALSE;
extern int ticks = 4;
bool RTRi_608 = FALSE;
extern bool changedirection = FALSE;
extern bool onesideatatime = FALSE;
extern double stop = 0.0;
extern double trailing = 0.0;
bool RTRi_636 = FALSE;
bool RTRi_640 = FALSE;
int RTRi_644 = 0;
double RTRd_648 = 20.0;
double RTRd_656 = 1.0;
bool RTRi_664 = FALSE;
bool RTRi_668 = TRUE;
int RTRi_672 = 0;
int RTRi_676 = 0;
bool RTRi_680 = FALSE;
int RTRi_684 = 4;
int RTRi_688 = 60;
bool RTRi_692 = FALSE;
int RTRi_696 = 2;
bool RTRi_700 = FALSE;
int RTR_timeframe_704 = 0;
int RTRi_708 = 10;
bool RTRi_712 = FALSE;
int RTR_timeframe_716 = 0;
int RTRi_720 = 10;
extern string entrylogics = "Entry Logics";
extern int lastxbars = 32;
extern int ybarsago = 20;
int RTRi_740 = 0;
extern string adxfilter = "0:NONE,1:M1,2:M5,3:M15,...,9:MN";
extern int adxtf = 5;
extern int adxperiod = 14;
extern int adxlevel = 20;
extern bool exitrule = TRUE;
extern int exitlastxbars = 32;
extern int exitybarsago = 20;
extern int shift = 1;
extern string timefilter = "Time Filter";
extern bool usetimefilter = FALSE;
extern int summergmtshift = 0;
extern int wintergmtshift = 0;
extern bool mondayfilter = FALSE;
extern int mondayhour = 12;
extern int mondayminute = 0;
extern bool weekfilter = FALSE;
extern int starthour = 7;
extern int startminute = 0;
extern int endhour = 21;
extern int endminute = 0;
extern bool tradesunday = TRUE;
extern bool fridayfilter = FALSE;
extern int fridayhour = 12;
extern int fridayminute = 0;
extern int testhour = 24;
bool RTRi_852 = FALSE;
int RTRi_856 = 1;
int RTRi_860 = 4;
int RTRi_864 = 12;
int RTRi_868 = 18;
bool RTRi_872 = FALSE;
int RTRi_876 = 3;
int RTRi_880 = 10;
bool RTRi_884 = FALSE;
int RTRi_888 = 21;
string RTRs_unused_892 = "News Filter";
bool RTRi_900 = FALSE;
int RTRi_904 = 30;
int RTRi_908 = 30;
bool RTRi_912 = FALSE;
bool RTRi_916 = FALSE;
bool RTRi_920 = FALSE;
string RTRs_unused_924 = "Time Outs and Targets";
bool RTRi_932 = FALSE;
int RTRi_936 = 30;
int RTRi_940 = 7;
int RTRi_944 = 70;
int RTRi_948 = 5;
int RTRi_952 = 95;
int RTRi_956 = 4;
int RTRi_960 = 120;
int RTRi_964 = 2;
int RTRi_968 = 150;
int RTRi_972 = -5;
int RTRi_976 = 180;
int RTRi_980 = -8;
int RTRi_984 = 210;
int RTRi_988 = -15;
bool RTRi_unused_992 = FALSE;
bool RTRi_996 = TRUE;
bool RTRi_1000 = TRUE;
bool RTRi_1004 = TRUE;
bool RTRi_1008 = FALSE;
bool RTRi_1012 = FALSE;
bool RTRi_1016 = TRUE;
bool RTRi_1020 = TRUE;
bool RTRi_1024 = TRUE;
bool RTRi_1028 = TRUE;
bool RTRi_1032 = TRUE;
bool RTRi_1036 = TRUE;
int RTR_count_1040;
int RTR_pos_1048;
int RTRi_1052 = 100;
int RTRi_1060;
int RTRi_1064;
int RTRi_1068;
int RTRi_1072;
bool RTRi_1080 = FALSE;
int RTRi_1084;
int RTRi_1092;
int RTRi_1100;
int RTRi_1104;
int RTRi_1108;
int RTR_count_1112;
int RTRi_1116;
int RTRi_1120;
int RTRi_1124;
int RTRi_1128;
int RTRi_1132 = 0;
int RTRi_1136 = 0;
int RTR_datetime_1144;
int RTR_datetime_1148;
int RTR_file_1152;
int RTR_str2time_1156;
bool RTRi_1160 = FALSE;
int RTRi_1164 = 0;
bool RTRi_1168 = FALSE;
int RTRi_1172 = 0;
int RTRi_unused_1176;
int RTRi_unused_1180;
double RTR_price_1192;
double RTR_price_1200;
double RTRd_1208;
double RTRd_1216;
double RTRd_1240;
double RTRd_1248;
double RTRd_1256;
double RTRda_1264[14];
double RTRda_1268[14];
double RTRd_1280;
double RTRda_1304[20];
double RTR_order_open_price_1308;
double RTR_order_open_price_1316;
double RTRd_1340;
double RTRd_1364 = 0.0;
double RTRd_1372;
double RTR_open_1380 = 0.0;
double RTRd_1388;
double RTRd_1396;
double RTRd_1404;
double RTRd_1412;
double RTRd_1420;
double RTRd_1428;
double RTRd_1436;
double RTRd_1444 = 0.0;
double RTRd_1452 = 0.0;
double RTRd_1460;
double RTRd_1468;
string RTRs_1476;
string RTRs_1484;
string RTRs_1492;
string RTRs_1500;
string RTRs_1508;
string RTRs_1516;
string RTRs_1524;
string RTRs_1532;
string RTRs_1540;
string RTRs_1548;
string RTRs_1556;
string RTRs_1564;
string RTRs_1572;
string RTRs_1580;
string RTRs_1588;
string RTRs_1596;
string RTRs_1604;
string RTRs_unused_1612 = "";
string RTRs_unused_1620 = "";
string RTRs_unused_1628 = "";
string RTRs_unused_1636 = "";
string RTRs_1644;
string RTRs_1652;
string RTRs_1660 = "";
string RTRs_1668 = "";
string RTRs_1676 = "";
string RTRs_1684 = "";
string RTRs_1692 = "";
string RTRs_1700 = "";
int RTR_str2time_1708;
int RTR_str2time_1712;
int RTR_str2time_1716;
int RTR_str2time_1720;
int RTR_datetime_1724;
int RTR_datetime_1732;
int RTRi_1740;
int RTRi_1744;
int RTRi_1748;
int RTRi_1752;
int RTRi_1756;
int RTRi_1760;
int RTR_datetime_1764;
datetime RTR_time_1768;
datetime RTR_time_1772;
int RTR_datetime_1776;
int RTR_str2time_1780;
double RTR_digits_1784;
double RTRd_1792;
double RTRd_1800;
int RTR_minute_1808 = -1;
int init() {
// код доступен только после оплаты
}
int f0_24(int xxxxi_0, int xxxxi_4) {
double ihigh_8 = iHigh(NULL, f0_45(RTRi_740), iHighest(NULL, f0_45(RTRi_740), MODE_HIGH, lastxbars, xxxxi_4 + 1));
double ilow_16 = iLow(NULL, f0_45(RTRi_740), iLowest(NULL, f0_45(RTRi_740), MODE_LOW, lastxbars, xxxxi_4 + 1));
if (Close[xxxxi_4] < ilow_16 && iHighest(NULL, f0_45(RTRi_740), MODE_HIGH, lastxbars, xxxxi_4 + 1) >= ybarsago && f0_45(adxtf) == 0 || (f0_45(adxtf) > 0 && iADX(NULL,
f0_45(adxtf), adxperiod, PRICE_CLOSE, MODE_PLUSDI, xxxxi_4) > adxlevel))
if (xxxxi_0 == 0) return (1);
if (Close[xxxxi_4] > ihigh_8 && iLowest(NULL, f0_45(RTRi_740), MODE_LOW, lastxbars, xxxxi_4 + 1) >= ybarsago && f0_45(adxtf) == 0 || (f0_45(adxtf) > 0 && iADX(NULL,
f0_45(adxtf), adxperiod, PRICE_CLOSE, MODE_PLUSDI, xxxxi_4) > adxlevel))
if (xxxxi_0 == 1) return (2);
return (0);
}
int f0_35(int xxxxi_0, int xxxxi_4) {
double ihigh_8 = iHigh(NULL, f0_45(RTRi_740), iHighest(NULL, f0_45(RTRi_740), MODE_HIGH, lastxbars, xxxxi_4 + 1));
double ilow_16 = iLow(NULL, f0_45(RTRi_740), iLowest(NULL, f0_45(RTRi_740), MODE_LOW, lastxbars, xxxxi_4 + 1));
if (Close[xxxxi_4] > ihigh_8 && iLowest(NULL, f0_45(RTRi_740), MODE_LOW, exitlastxbars, xxxxi_4 + 1) >= exitybarsago)
if (xxxxi_0 == 0) return (1);
if (Close[xxxxi_4] < ilow_16 && iHighest(NULL, f0_45(RTRi_740), MODE_HIGH, exitlastxbars, xxxxi_4 + 1) >= exitybarsago)
if (xxxxi_0 == 1) return (2);
return (0);
}
void f0_62() {
RTRi_1168 = FALSE;
RTRi_1172 = 0;
if (exitrule) {
if (f0_35(0, shift) == 1) RTRi_1168 = TRUE;
if (f0_35(1, shift) == 2) RTRi_1172 = 2;
}
}
void f0_6() {
if (RTRi_448) {
RTR_count_1040 = 0;
if (OrdersHistoryTotal() > 0) {
for (RTR_pos_1048 = OrdersHistoryTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != magic) continue;
if (OrderOpenTime() < iTime(NULL, PERIOD_D1, 0)) break;
RTR_count_1040++;
}
}
}
RTRi_1160 = FALSE;
RTRi_1164 = 0;
if (RTRi_1168 != TRUE && f0_24(0, shift) == 1 && RTRi_448 == FALSE || (RTRi_448 && RTR_count_1040 < RTRi_452) && RTRi_852 == FALSE || (RTRi_852 && (!Month() == RTRi_856 &&
Day() <= RTRi_860) && (!Month() == RTRi_864 && Day() >= RTRi_868)) && IsTradeContextBusy() == FALSE) RTRi_1160 = TRUE;
if (RTRi_1172 != 2 && f0_24(1, shift) == 2 && RTRi_448 == FALSE || (RTRi_448 && RTR_count_1040 < RTRi_452) && RTRi_852 == FALSE || (RTRi_852 && (!Month() == RTRi_856 &&
Day() <= RTRi_860) && (!Month() == RTRi_864 && Day() >= RTRi_868)) && IsTradeContextBusy() == FALSE) RTRi_1164 = 2;
}
int start() {
// код доступен только после оплаты
}
int f0_19(int xxxxi_0) {
int count_4 = 0;
if (OrdersTotal() > 0) {
for (RTR_pos_1048 = OrdersTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == magic && OrderCloseTime() == 0) {
if (OrderOpenTime() < iTime(NULL, 0, 0)) break;
if (OrderType() == OP_BUY || OrderType() == OP_BUYLIMIT || OrderType() == OP_BUYSTOP && xxxxi_0 == 0)
if (OrderOpenTime() >= iTime(NULL, 0, 0)) count_4++;
if (OrderType() == OP_SELL || OrderType() == OP_SELLLIMIT || OrderType() == OP_SELLSTOP && xxxxi_0 == 1)
if (OrderOpenTime() >= iTime(NULL, 0, 0)) count_4++;
}
}
}
if (OrdersHistoryTotal() > 0) {
for (RTR_pos_1048 = OrdersHistoryTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != magic) continue;
if (OrderOpenTime() < iTime(NULL, 0, 0)) break;
if (OrderType() == OP_BUY || OrderType() == OP_BUYLIMIT || OrderType() == OP_BUYSTOP && xxxxi_0 == 0)
if (OrderOpenTime() >= iTime(NULL, 0, 0)) count_4++;
if (OrderType() == OP_SELL || OrderType() == OP_SELLLIMIT || OrderType() == OP_SELLSTOP && xxxxi_0 == 1)
if (OrderOpenTime() >= iTime(NULL, 0, 0)) count_4++;
}
}
return (count_4);
}
void f0_9() {
if (RTRi_132) {
GlobalVariableSet("vGrafBalance", AccountBalance());
GlobalVariableSet("vGrafEquity", AccountEquity());
}
}
void f0_39() {
if (RTRi_88) {
if (RTR_datetime_1776 != iTime(NULL, PERIOD_D1, 0)) {
MathSrand(TimeLocal());
magic = MathRand();
RTR_datetime_1776 = iTime(NULL, PERIOD_D1, 0);
}
}
}
void f0_4() {
RTRd_1388 = AccountBalance();
if (stop > 0.0) {
stoploss = stop;
takeprofit = stop;
}
}
int f0_17() {
if (firstticks)
if (iVolume(NULL, 0, 0) > ticks) return (1);
return (0);
}
void f0_27() {
if (RTRi_608) RTR_open_1380 = Open[0];
}
int f0_47() {
if (RTRi_608)
if (RTR_open_1380 == Open[0]) return (1);
return (0);
}
int f0_60() {
if (Bars < 100) return (1);
return (0);
}
void f0_40() {
if (RTRi_1080 == TRUE) {
RTRi_1060 = 0;
RTRi_1064 = 0;
}
if (oppositeclose) {
RTR_datetime_1144 = 0;
RTR_datetime_1148 = 0;
}
RTR_order_open_price_1308 = 0;
RTR_order_open_price_1316 = 0;
if (OrdersTotal() > 0) {
for (RTR_pos_1048 = 0; RTR_pos_1048 < OrdersTotal(); RTR_pos_1048++) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == magic && OrderCloseTime() == 0) {
if (OrderType() == OP_BUY) {
if (oppositeclose)
if (RTR_datetime_1144 == 0 || RTR_datetime_1144 > OrderOpenTime()) RTR_datetime_1144 = OrderOpenTime();
RTR_datetime_1724 = OrderOpenTime();
if (RTRi_636) RTR_order_open_price_1308 = OrderOpenPrice();
if (RTRi_1080 == TRUE) RTRi_1060 = RTRi_1060 + OrderProfit();
}
if (OrderType() == OP_SELL) {
if (oppositeclose)
if (RTR_datetime_1144 == 0 || RTR_datetime_1148 > OrderOpenTime()) RTR_datetime_1148 = OrderOpenTime();
RTR_datetime_1732 = OrderOpenTime();
if (RTRi_636) RTR_order_open_price_1316 = OrderOpenPrice();
if (RTRi_1080 == TRUE) RTRi_1064 = RTRi_1064 + OrderProfit();
}
}
}
}
if (RTRi_1080 == TRUE) RTRd_1280 = RTRi_1060 + RTRi_1064;
}
void f0_50() {
RTRi_1008 = FALSE;
RTRi_1012 = FALSE;
}
void f0_8() {
RTRi_1024 = TRUE;
RTRi_1028 = TRUE;
if (onesideatatime) {
if (f0_58(OP_SELL) > 0) {
if (reversesignals) RTRi_1028 = FALSE;
else RTRi_1024 = FALSE;
}
if (f0_58(OP_BUY) > 0) {
if (reversesignals) RTRi_1024 = FALSE;
else RTRi_1028 = FALSE;
}
}
if (RTRi_1160 == TRUE && RTRi_1016 && RTRi_1024 && RTRi_996 && RTRi_1004 && RTRi_872 == FALSE || (RTRi_872 && Day() != RTRi_876 && Day() != RTRi_880)) {
if (reversesignals) RTRi_1012 = TRUE;
else RTRi_1008 = TRUE;
if (changedirection) {
RTRi_996 = FALSE;
RTRi_1000 = TRUE;
}
if (RTRi_428) {
if (reversesignals) RTRs_1540 = "SHORT";
else RTRs_1540 = "LONG";
}
}
if (RTRi_1164 == 2 && RTRi_1020 && RTRi_1028 && RTRi_1000 && RTRi_1004 && RTRi_872 == FALSE || (RTRi_872 && Day() != RTRi_876 && Day() != RTRi_880)) {
if (reversesignals) RTRi_1008 = TRUE;
else RTRi_1012 = TRUE;
if (changedirection) {
RTRi_996 = TRUE;
RTRi_1000 = FALSE;
}
if (RTRi_428) {
if (reversesignals) {
RTRs_1540 = "LONG";
return;
}
RTRs_1540 = "SHORT";
}
}
}
int f0_34(int xxxx_cmd_0, double xxxxd_4, double xxxxd_12, double xxxxd_20, double xxxxd_28, int xxxx_datetime_36, color xxxx_color_40) {
int ticket_44 = 0;
if (xxxxd_4 < minlot) xxxxd_4 = minlot;
if (xxxxd_4 > maxlot) xxxxd_4 = maxlot;
if (xxxx_cmd_0 == OP_BUY || xxxx_cmd_0 == OP_BUYSTOP || xxxx_cmd_0 == OP_BUYLIMIT) {
if (hidesl == FALSE && xxxxd_20 > 0.0) RTR_price_1192 = xxxxd_12 - xxxxd_20 * RTRd_1792;
else RTR_price_1192 = 0;
if (hidetp == FALSE && xxxxd_28 > 0.0) RTR_price_1200 = xxxxd_12 + xxxxd_28 * RTRd_1792;
else RTR_price_1200 = 0;
if (ecn) {
RTR_price_1192 = 0;
RTR_price_1200 = 0;
}
}
if (xxxx_cmd_0 == OP_SELL || xxxx_cmd_0 == OP_SELLSTOP || xxxx_cmd_0 == OP_SELLLIMIT) {
if (hidesl == FALSE && xxxxd_20 > 0.0) RTR_price_1192 = xxxxd_12 + xxxxd_20 * RTRd_1792;
else RTR_price_1192 = 0;
if (hidetp == FALSE && xxxxd_28 > 0.0) RTR_price_1200 = xxxxd_12 - xxxxd_28 * RTRd_1792;
else RTR_price_1200 = 0;
if (ecn) {
RTR_price_1192 = 0;
RTR_price_1200 = 0;
}
}
ticket_44 = OrderSend(Symbol(), xxxx_cmd_0, f0_46(xxxxd_4, lotdigits), f0_46(xxxxd_12, RTR_digits_1784), RTRd_576 * RTRd_1800, RTR_price_1192, RTR_price_1200, RTRs_76 +
" " + DoubleToStr(magic, 0), magic, xxxx_datetime_36, xxxx_color_40);
return (ticket_44);
}
void f0_0() {
if (RTRi_700) {
stoploss = (Ask - iLow(NULL, RTR_timeframe_704, iLowest(NULL, RTR_timeframe_704, MODE_LOW, RTRi_708, shift))) / RTRd_1792;
if (stoploss < MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD)) stoploss = MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD);
}
if (RTRi_712) {
takeprofit = (iHigh(NULL, RTR_timeframe_716, iHighest(NULL, RTR_timeframe_716, MODE_HIGH, RTRi_720, shift)) - Ask) / RTRd_1792;
if (takeprofit < MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD)) takeprofit = MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD);
}
if (RTRi_420) {
f0_2(OP_SELLSTOP);
f0_2(OP_SELLLIMIT);
}
RTRi_1116 = 0;
RTR_count_1112 = 0;
RTRi_1124 = 0;
if (RTRi_400 || RTRi_404)
if (RTRi_572 > 0) RTRi_1124 = TimeCurrent() + 60 * RTRi_572 - 5;
if (RTRi_396) {
if (RTRi_1080 == FALSE) {
while (RTRi_1116 <= 0 && RTR_count_1112 < RTRi_1052) {
while (!IsTradeAllowed()) Sleep(5000);
RefreshRates();
RTRi_1116 = f0_34(OP_BUY, RTRd_1208, Ask, stoploss, takeprofit, RTRi_1124, Blue);
if (RTRi_1116 < 0) {
if (RTRi_92) Print("Error opening BUY order! ", ErrorDescription(GetLastError()));
RTR_count_1112++;
}
}
}
if (RTRi_1080 == TRUE) {
while (RTRi_1116 <= 0 && RTR_count_1112 < RTRi_1052) {
while (!IsTradeAllowed()) Sleep(5000);
RefreshRates();
RTRi_1116 = f0_34(OP_BUY, RTRd_1208, Ask, stoploss, 0, RTRi_1124, Blue);
if (RTRi_1116 < 0) {
if (RTRi_92) Print("Error opening BUY order! ", ErrorDescription(GetLastError()));
RTR_count_1112++;
}
}
}
}
if (RTRi_400) {
if (RTRi_1740 != Time[0]) {
if (RTRi_416) f0_2(OP_BUYSTOP);
RefreshRates();
RTRi_1116 = f0_34(OP_BUYSTOP, RTRd_1208, Ask + RTRi_412 * RTRd_1792, stoploss, takeprofit, RTRi_1124, Blue);
RTRi_1740 = Time[0];
}
}
if (RTRi_404) {
if (RTRi_1744 != Time[0]) {
if (RTRi_416) f0_2(OP_BUYLIMIT);
RefreshRates();
RTRi_1116 = f0_34(OP_BUYLIMIT, RTRd_1208, Bid - RTRi_412 * RTRd_1792, stoploss, takeprofit, RTRi_1124, Blue);
RTRi_1744 = Time[0];
}
}
if (RTRi_664 && RTRi_1756 != Time[0]) {
if (RTRi_668) f0_2(OP_BUYSTOP);
RefreshRates();
RTRi_1116 = f0_34(OP_SELLSTOP, RTRd_1208, Bid - stoploss * RTRd_1792, RTRi_672, RTRi_676, RTRi_1124, Red);
RTRi_1756 = Time[0];
}
if (RTRi_396) {
if (RTRi_1116 <= 0)
if (RTRi_92) Print("Error Occured : " + ErrorDescription(GetLastError()));
}
if (RTR_time_1768 != Time[0]) {
RefreshRates();
if (RTRi_100) SendMail("[Long Trade]", "[" + Symbol() + "] " + DoubleToStr(Ask, RTR_digits_1784));
if (RTRi_104) Alert(Symbol(), " Long Trade @ Hour ", Hour(), " Minute ", Minute());
if (RTRi_108) PlaySound("alert.wav");
RTR_time_1768 = Time[0];
}
}
void f0_37() {
if (RTRi_700) {
stoploss = (iHigh(NULL, RTR_timeframe_704, iHighest(NULL, RTR_timeframe_704, MODE_HIGH, RTRi_708, shift)) - Bid) / RTRd_1792;
if (stoploss < MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD)) stoploss = MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD);
}
if (RTRi_712) {
takeprofit = (Bid - iLow(NULL, RTR_timeframe_716, iLowest(NULL, RTR_timeframe_716, MODE_LOW, RTRi_720, shift))) / RTRd_1792;
if (takeprofit < MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD)) takeprofit = MarketInfo(Symbol(), MODE_STOPLEVEL) + MarketInfo(Symbol(), MODE_SPREAD);
}
if (RTRi_420) {
f0_2(OP_BUYSTOP);
f0_2(OP_BUYLIMIT);
}
RTRi_1116 = 0;
RTR_count_1112 = 0;
RTRi_1124 = 0;
if (RTRi_400 || RTRi_404)
if (RTRi_572 > 0) RTRi_1124 = TimeCurrent() + 60 * RTRi_572 - 5;
if (RTRi_396) {
if (RTRi_1080 == FALSE) {
while (RTRi_1116 <= 0 && RTR_count_1112 < RTRi_1052) {
while (!IsTradeAllowed()) Sleep(5000);
RefreshRates();
RTRi_1116 = f0_34(OP_SELL, RTRd_1216, Bid, stoploss, takeprofit, RTRi_1124, Red);
if (RTRi_1116 < 0) {
if (RTRi_92) Print("Error opening BUY order! ", ErrorDescription(GetLastError()));
RTR_count_1112++;
}
}
}
if (RTRi_1080 == TRUE) {
while (RTRi_1116 <= 0 && RTR_count_1112 < RTRi_1052) {
while (!IsTradeAllowed()) Sleep(5000);
RefreshRates();
RTRi_1116 = f0_34(OP_SELL, RTRd_1216, Bid, stoploss, 0, RTRi_1124, Red);
if (RTRi_1116 < 0) {
if (RTRi_92) Print("Error opening BUY order! ", ErrorDescription(GetLastError()));
RTR_count_1112++;
}
}
}
}
if (RTRi_400) {
if (RTRi_1748 != Time[0]) {
if (RTRi_416) f0_2(OP_SELLSTOP);
RefreshRates();
RTRi_1116 = f0_34(OP_SELLSTOP, RTRd_1216, Bid - RTRi_412 * RTRd_1792, stoploss, takeprofit, RTRi_1124, Red);
RTRi_1748 = Time[0];
}
}
if (RTRi_404) {
if (RTRi_1752 != Time[0]) {
if (RTRi_416) f0_2(OP_SELLLIMIT);
RefreshRates();
RTRi_1116 = f0_34(OP_SELLLIMIT, RTRd_1216, Ask + RTRi_412 * RTRd_1792, stoploss, takeprofit, RTRi_1124, Red);
RTRi_1752 = Time[0];
}
}
if (RTRi_664 && RTRi_1760 != Time[0]) {
if (RTRi_668) f0_2(OP_SELLSTOP);
RefreshRates();
RTRi_1116 = f0_34(OP_BUYSTOP, RTRd_1208, Ask + stoploss * RTRd_1792, RTRi_672, RTRi_676, RTRi_1124, Blue);
RTRi_1760 = Time[0];
}
if (RTRi_396) {
if (RTRi_1116 <= 0)
if (RTRi_92) Print("Error Occured : " + ErrorDescription(GetLastError()));
}
if (RTR_time_1768 != Time[0]) {
RefreshRates();
if (RTRi_100) SendMail("[Short Trade]", "[" + Symbol() + "] " + DoubleToStr(Bid, RTR_digits_1784));
if (RTRi_104) Alert(Symbol(), " Short Trade @ Hour ", Hour(), " Minute ", Minute());
if (RTRi_108) PlaySound("alert.wav");
RTR_time_1768 = Time[0];
}
}
void f0_56() {
if (RTRi_1032 && RTRi_1036) {
if (RTRi_1008 && (!RTRi_116) && f0_19(0) < tradesperbar) f0_0();
if (RTRi_1012 && (!RTRi_112) && f0_19(1) < tradesperbar) f0_37();
}
}
int f0_66() {
int count_0 = 0;
if (OrdersTotal() > 0) {
for (RTR_pos_1048 = OrdersTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_TRADES);
count_0++;
}
return (count_0);
}
return (0);
}
int f0_58(int xxxx_cmd_0) {
int count_4 = 0;
if (OrdersTotal() > 0) {
for (RTR_pos_1048 = OrdersTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderType() == xxxx_cmd_0 && OrderMagicNumber() == magic) count_4++;
}
return (count_4);
}
return (0);
}
int f0_16(int xxxxi_0) {
int YYYYi_ret_4 = 0;
if (xxxxi_0 == 0) YYYYi_ret_4 = f0_58(OP_BUY) + f0_58(OP_SELL);
if (xxxxi_0 == 1) YYYYi_ret_4 = f0_58(OP_BUY) + f0_58(OP_SELL) + f0_58(OP_BUYSTOP) + f0_58(OP_SELLSTOP) + f0_58(OP_BUYLIMIT) + f0_58(OP_SELLLIMIT);
return (YYYYi_ret_4);
}
int f0_15() {
if (maxspread != 0.0)
if (Ask - Bid > maxspread * RTRd_1792) return (1);
if (maxtrades < 500)
if (f0_16(0) >= maxtrades) return (1);
return (0);
}
double f0_20(int xxxxi_0) {
double order_profit_4 = 0;
double order_lots_12 = 0;
if (OrdersHistoryTotal() > 0) {
for (RTR_pos_1048 = OrdersHistoryTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
if (order_profit_4 != 0.0) break;
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == magic && OrderType() == OP_BUY || OrderType() == OP_SELL) {
order_profit_4 = OrderProfit();
order_lots_12 = OrderLots();
}
}
}
if (xxxxi_0 == 0) return (order_lots_12);
if (xxxxi_0 == 1) return (order_profit_4);
return (0);
}
double f0_59(int xxxxi_0) {
double YYYYd_ret_4 = 0;
if (OrdersTotal() > 0) {
for (RTR_pos_1048 = OrdersTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderType() == OP_BUY && OrderMagicNumber() == magic) {
if (xxxxi_0 == 0) YYYYd_ret_4 += (OrderClosePrice() - OrderOpenPrice()) / RTRd_1792;
if (xxxxi_0 == 1) YYYYd_ret_4 += OrderProfit();
}
if (OrderSymbol() == Symbol() && OrderType() == OP_SELL && OrderMagicNumber() == magic) {
if (xxxxi_0 == 0) YYYYd_ret_4 += (OrderOpenPrice() - OrderClosePrice()) / RTRd_1792;
if (xxxxi_0 == 1) YYYYd_ret_4 += OrderProfit();
}
}
return (YYYYd_ret_4);
}
return (0.0);
}
double f0_22(int xxxxi_0) {
double YYYYd_ret_4 = 0;
if (OrdersHistoryTotal() > 0) {
for (RTR_pos_1048 = OrdersHistoryTotal() - 1; RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderType() == OP_BUY && OrderMagicNumber() == magic) {
if (xxxxi_0 == 2 || xxxxi_0 == 3 && TimeDay(OrderOpenTime()) != TimeDay(Time[0])) break;
if (xxxxi_0 == 4 || xxxxi_0 == 5 && TimeMonth(OrderOpenTime()) != TimeMonth(Time[0])) break;
if (xxxxi_0 == 0) YYYYd_ret_4 += (OrderClosePrice() - OrderOpenPrice()) / RTRd_1792;
if (xxxxi_0 == 1) YYYYd_ret_4 += OrderProfit();
if (xxxxi_0 == 2 && TimeDay(OrderOpenTime()) == TimeDay(Time[0])) YYYYd_ret_4 += (OrderClosePrice() - OrderOpenPrice()) / RTRd_1792;
if (xxxxi_0 == 3 && TimeDay(OrderOpenTime()) == TimeDay(Time[0])) YYYYd_ret_4 += OrderProfit();
if (xxxxi_0 == 4 && TimeMonth(OrderOpenTime()) == TimeMonth(Time[0])) YYYYd_ret_4 += (OrderClosePrice() - OrderOpenPrice()) / RTRd_1792;
if (xxxxi_0 == 5 && TimeMonth(OrderOpenTime()) == TimeMonth(Time[0])) YYYYd_ret_4 += OrderProfit();
}
if (OrderSymbol() == Symbol() && OrderType() == OP_SELL && OrderMagicNumber() == magic) {
if (xxxxi_0 == 2 || xxxxi_0 == 3 && TimeDay(OrderOpenTime()) != TimeDay(Time[0])) break;
if (xxxxi_0 == 4 || xxxxi_0 == 5 && TimeMonth(OrderOpenTime()) != TimeMonth(Time[0])) break;
if (xxxxi_0 == 0) YYYYd_ret_4 += (OrderOpenPrice() - OrderClosePrice()) / RTRd_1792;
if (xxxxi_0 == 1) YYYYd_ret_4 += OrderProfit();
if (xxxxi_0 == 2 && TimeDay(OrderOpenTime()) == TimeDay(Time[0])) YYYYd_ret_4 += (OrderOpenPrice() - OrderClosePrice()) / RTRd_1792;
if (xxxxi_0 == 3 && TimeDay(OrderOpenTime()) == TimeDay(Time[0])) YYYYd_ret_4 += OrderProfit();
if (xxxxi_0 == 4 && TimeMonth(OrderOpenTime()) == TimeMonth(Time[0])) YYYYd_ret_4 += (OrderOpenPrice() - OrderClosePrice()) / RTRd_1792;
if (xxxxi_0 == 5 && TimeMonth(OrderOpenTime()) == TimeMonth(Time[0])) YYYYd_ret_4 += OrderProfit();
}
}
return (YYYYd_ret_4);
}
return (0.0);
}
int f0_32(int xxxxi_0) {
int count_4 = 0;
for (RTR_pos_1048 = OrdersHistoryTotal(); RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == magic) {
if (xxxxi_0 == 0) {
if (OrderProfit() > 0.0) break;
if (OrderProfit() < 0.0) count_4++;
}
if (xxxxi_0 == 1) {
if (OrderProfit() < 0.0) break;
if (OrderProfit() > 0.0) count_4++;
}
}
}
return (count_4);
}
double f0_44(int xxxxi_0) {
double YYYYd_ret_4 = 0;
for (RTR_pos_1048 = OrdersHistoryTotal(); RTR_pos_1048 >= 0; RTR_pos_1048--) {
OrderSelect(RTR_pos_1048, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == magic) {
if (xxxxi_0 == 0) {
if (OrderProfit() > 0.0) break;
if (OrderProfit() < 0.0) YYYYd_ret_4 += OrderProfit();
}
if (xxxxi_0 == 1) {
if (OrderProfit() < 0.0) break;
if (OrderProfit() > 0.0) YYYYd_ret_4 += OrderProfit();
}
}
}
return (YYYYd_ret_4);
}
void f0_51() {
RTRi_1016 = TRUE;
RTRi_1020 = TRUE;
if (RTRi_636) f0_25();
}
void f0_25() {
if (f0_58(OP_BUY) > 0) {
RTRi_1016 = FALSE;
if ((RTRi_644 == 0 && Close[0] <= RTR_order_open_price_1308 - RTRd_648 * RTRd_1792 * MathPow(RTRd_656, f0_58(OP_BUY))) || (RTRi_644 == 1 && Close[0] >= RTR_order_open_price_1308 +
RTRd_648 * RTRd_1792 * MathPow(RTRd_656, f0_58(OP_BUY))) || (RTRi_644 == 2 && Close[0] <= RTR_order_open_price_1308 - RTRd_648 * RTRd_1792 * MathPow(RTRd_656, f0_58(OP_BUY)) ||
Close[0] >= RTR_order_open_price_1308 + RTRd_648 * RTRd_1792 * MathPow(RTRd_656, f0_58(OP_BUY))) && RTRi_640 == FALSE || (RTRi_640 && (reversesignals == FALSE && RTRi_1160 == TRUE) ||
(reversesignals && RTRi_1164 == 2))) RTRi_1008 = TRUE;
}
if (f0_58(OP_SELL) > 0) {
RTRi_1020 = FALSE;
if ((RTRi_644 == 0 && Close[0] >= RTR_order_open_price_1316 + RTRd_648 * RTRd_1792 * MathPow(RTRd_656, f0_58(OP_SELL))) || (RTRi_644 == 1 && Close[0] <= RTR_order_open_price_1316 - RTRd_648 * RTRd_1792 * MathPow(RTRd_656,
f0_58(OP_SELL))) || (RTRi_644 == 2 && Close[0] >= RTR_order_open_price_1316 + RTRd_648 * RTRd_1792 * MathPow(RTRd_656, f0_58(OP_SELL)) || Close[0] <= RTR_order_open_price_1316 - RTRd_648 * RTRd_1792 * MathPow(RTRd_656,
f0_58(OP_SELL))) && RTRi_640 == FALSE || (RTRi_640 && (reversesignals == FALSE && RTRi_1164 == 2) || (reversesignals && RTRi_1160 == TRUE))) RTRi_1012 = TRUE;
}
}
void f0_14() {
RTRd_1208 = lots * MathPow(RTRd_204, f0_58(OP_BUY));
RTRd_1216 = lots * MathPow(RTRd_204, f0_58(OP_SELL));
}
void f0_10() {
if (mm)
if (RTRi_196 == FALSE || (RTRi_196 && (!RTRi_636) && RTRd_1248 >= 0.0) || (RTRi_196 && RTRi_636) && RTRi_484 == FALSE || (RTRi_484 && f0_66() == 0)) lots = f0_49(risk);
RTRd_1208 = lots;
RTRd_1216 = lots;
}
void f0_48() {
if (mm) {
if (MarketInfo(Symbol(), MODE_MINLOT) >= 1.0) RTRi_1068 = 100000;
if (MarketInfo(Symbol(), MODE_MINLOT) < 1.0) RTRi_1068 = 10000;
if (MarketInfo(Symbol(), MODE_MINLOT) < 0.1) RTRi_1068 = 1000;
if (RTRi_484) lots = f0_49(risk);
}
}
double f0_49(double xxxxd_0) {
double YYYYd_ret_8;
if (stoploss > 0.0) YYYYd_ret_8 = AccountBalance() * (xxxxd_0 / 100.0) / (stoploss * RTRd_1792 / MarketInfo(Symbol(), MODE_TICKSIZE) * MarketInfo(Symbol(), MODE_TICKVALUE));
else YYYYd_ret_8 = f0_46(AccountBalance() / RTRi_1068 / 100.0 * xxxxd_0, lotdigits);
return (YYYYd_ret_8);
}
void f0_43() {
if (RTRi_196) {
if (!RTRi_636) f0_52();
if (RTRi_636) f0_14();
}
}
void f0_52() {
RTRi_1080 = FALSE;
RTRd_1372 = 0;
RTRd_1364 = 0;
RTRd_1240 = f0_20(0);
RTRd_1248 = f0_20(1);
RTRd_1256 = 0;
if (RTRi_200 == 0) {
if (RTRd_1248 < 0.0) {
RTRd_1256 = RTRd_1240 * RTRd_204;
if (RTRi_252 < 500) {
RTRi_1132 = f0_32(0);
if (RTRi_1132 >= RTRi_252) RTRd_1256 = lots;
}
if (RTRd_212 != 0.0) {
RTRd_1372 = f0_44(0);
RTRi_1080 = TRUE;
RTRd_1364 = f0_46(RTRd_1372 / 100.0 * RTRd_212, 2);
}
} else RTRd_1256 = lots;
}
if (RTRi_200 == 1) {
if (RTRd_1248 > 0.0) {
RTRd_1256 = RTRd_1240 * RTRd_204;
if (RTRi_252 < 500) {
RTRi_1136 = f0_32(1);
if (RTRi_1136 >= RTRi_252) RTRd_1256 = lots;
}
} else {
RTRd_1256 = lots;
if (RTRd_212 != 0.0) {
RTRd_1372 = f0_44(0);
RTRi_1080 = TRUE;
RTRd_1364 = f0_46(RTRd_1372 / 10Показано первые 50% кода (символов: 49223)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.