Adenan Scalping
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «adenan scalping mt4 ea source code.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Adenan Scalping — торговый советник для MetaTrader 4, реализующий стратегию скальпинга на основе анализа ценовых свечей. Советник сравнивает значения Close двух последних баров для определения направления сделки и открывает позиции BUY или SELL через торговый API MetaTrader.
Советник поддерживает три режима управления лотом: фиксированный, Мартингейл и обратный Мартингейл. Лот может рассчитываться как фиксированная величина или как процент от баланса счёта. Доступны настройки тейк-профита в пунктах, расстояния между ордерами и максимального количества одновременных сделок.
Встроен механизм стоп-лосса по эквити, позволяющий закрыть все позиции при достижении заданного уровня убытка. Также реализованы временные ограничения торговли — можно задать часы открытия и закрытия позиций, а также отключить торговлю по пятницам. При тестировании на графике отображается таблица с информацией о прибыли и балансе.
Настройки программы
| Настройка | Описание |
|---|---|
| __1__ | Текстовая метка группы параметров множика лота. |
| LotMultiplikator | Множик лота, используемый при расчёте размера позиции в режимах Мартингейл и обратного Мартингейла. |
| __2__ | Текстовая метка группы параметров Мартингейла. |
| MMType | Тип управления лотом: 0 — фиксированный, 1 — Мартингейл с множителем, 2 — обратный Мартингейл на основе прибыли предыдущих сделок. |
| __3__ | Текстовая метка группы параметров начального лота. |
| _____ | Текстовая метка, указывающая режим расчёта лота: true — фиксированный, false — процент от баланса. |
| LotConst_or_not | Переключатель режима лота: true — фиксированный лот (Lot), false — расчёт лота как процента от баланса (RiskPercent). |
| Lot | Фиксированный размер лота, используемый при ручном указании размера позиции. |
| RiskPercent | Процент риска от баланса счёта, используемый для расчёта размера лота при отключённом фиксированном лоте. |
| __4__ | Текстовая метка группы параметров тейк-профита. |
| TakeProfit | Тейк-профит в пунктах, устанавливаемый для открытых позиций. |
| __5__ | Текстовая метка группы параметров расстояния между ордерами. |
| Step | Расстояние между ордерами в пунктах, определяющее минимальный ценовой зазор для открытия новой позиции. |
| __6__ | Текстовая метка группы параметров максимального количества сделок. |
| MaxTrades | Максимальное количество одновременных открытых сделок, управляемых советником. |
| __7__ | Текстовая метка группы параметров стоп-лосса. |
| UseEquityStop | Переключатель стоп-лосса по эквити: true — включён, false — выключен. При включении все позиции закрываются при достижении заданного уровня убытка. |
| TotalEquityRisk | Процент риска эквити, при превышении которого все позиции закрываются (стоп-лосс по эквити). |
| __8__ | Текстовая метка группы параметров магического числа. |
| Magic | Магическое число для идентификации ордеров, открытых данным советником. Должно быть уникальным для каждого графика. |
| __9__ | Текстовая метка группы параметров отображения и вывода информации. |
| ShowTableOnTesting | Переключатель отображения таблицы с информацией о прибыли и балансе на графике при тестировании. |
| _ | Текстовая метка для параметра режима торговли. |
| S1 | Текстовая метка для группы параметров настроек времени торговли. |
| Open_Hour | Час открытия торговой сессии, используемый для фильтрации времени торговли. |
| Close_Hour | Час закрытия торговой сессии, используемый для фильтрации времени торговли. |
| TradeOnFriday | Переключатель торговли по пятницам: true — торговля разрешена, false — торговля по пятницам отключена. |
| Friday_Hour | Час ограничения торговли по пятницам — после этого часа торговля отключается при включённом параметре TradeOnFriday. |
Поиск по коду файла
/*
G e n e r a t e d by ex4-to-mq4 decompiler FREEWARE 4.0.509.5
Website: h t t p : / / wwW. Me T aq U Ot E S.n Et
E-mail : S Up P O R t@m E t aQ UO tes . n eT
*/
double G_maxlot_76 = 0.0;
string Gs_84 = "Adenanku scalping";
double Gd_92 = 2.0;
string Gs_100 = "Scalping System 1";
int Gi_unused_108 = 1;
extern string __1__ = "Lot Multiplier";
extern double LotMultiplikator = 1.667;
extern string __2__ = " Turn on/off Martingale, 1=on. or 2=off.";
extern int MMType = 1;
bool Gi_140 = TRUE;
double Gd_144;
double G_slippage_152 = 5.0;
extern string __3__ = "Initial lot:";
extern string _____ = "true = Fixed Lot, false = Account Balance";
extern bool LotConst_or_not = FALSE;
extern double Lot = 0.01;
extern double RiskPercent = 30.0;
double Gd_196;
extern string __4__ = "Take Profit in Pips";
extern double TakeProfit = 3.0;
double Gd_220;
double G_pips_228 = 0.0;
double Gd_236 = 10.0;
double Gd_244 = 10.0;
extern string __5__ = "Distance between orders";
extern double Step = 5.0;
double Gd_268;
extern string __6__ = "Max Number of trades";
extern int MaxTrades = 15;
extern string __7__ = "Stop Loss";
extern bool UseEquityStop = FALSE;
extern double TotalEquityRisk = 10.0;
bool Gi_308 = FALSE;
bool Gi_312 = FALSE;
bool Gi_316 = FALSE;
double Gd_320 = 48.0;
bool Gi_328 = FALSE;
int Gi_332 = 2;
int Gi_336 = 16;
extern string __8__ = "Magic Number Must Be Different for Each Chart";
extern int Magic = 1111111;
int Gi_352;
extern string __9__ = "logo and output";
extern bool ShowTableOnTesting = TRUE;
extern string _ = "(true-On.,false-off)";
extern string S1 = " Start End Hour ";
extern int Open_Hour = 22;
extern int Close_Hour = 23;
extern bool TradeOnFriday = FALSE;
extern int Friday_Hour = 15;
double G_price_400;
double Gd_408;
double Gd_unused_416;
double Gd_unused_424;
double G_price_432;
double G_bid_440;
double G_ask_448;
double Gd_456;
double Gd_464;
double Gd_472;
bool Gi_480;
datetime G_time_484 = 0;
int Gi_488;
int Gi_492 = 0;
double Gd_496;
int G_pos_504 = 0;
int Gi_508;
double Gd_512 = 0.0;
bool Gi_520 = FALSE;
bool Gi_524 = FALSE;
bool Gi_528 = FALSE;
int Gi_532;
bool Gi_536 = FALSE;
int G_datetime_540 = 0;
int G_datetime_544 = 0;
double Gd_548;
double Gd_556;
int G_fontsize_564 = 10;
color G_color_568 = White;
color G_color_572 = Gold;
color G_color_576 = White;
int Gi_unused_580 = 5197615;
int init() {
// код доступен только после оплаты
}
int deinit() {
return (0);
}
int start() {
// код доступен только после оплаты
}
double f0_6(double Ad_0) {
return (NormalizeDouble(Ad_0, Digits));
}
int f0_11(bool Ai_0 = TRUE, bool Ai_4 = TRUE) {
int Li_ret_8 = 0;
for (int pos_12 = OrdersTotal() - 1; pos_12 >= 0; pos_12--) {
if (OrderSelect(pos_12, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Gi_352) {
if (OrderType() == OP_BUY && Ai_0) {
RefreshRates();
if (!IsTradeContextBusy()) {
if (!OrderClose(OrderTicket(), OrderLots(), f0_6(Bid), 5, CLR_NONE)) {
Print("Error close BUY " + OrderTicket());
Li_ret_8 = -1;
}
} else {
if (G_datetime_540 == iTime(NULL, 0, 0)) return (-2);
G_datetime_540 = iTime(NULL, 0, 0);
Print("Need close BUY " + OrderTicket() + ". Trade Context Busy");
return (-2);
}
}
if (OrderType() == OP_SELL && Ai_4) {
RefreshRates();
if (!IsTradeContextBusy()) {
if (!((!OrderClose(OrderTicket(), OrderLots(), f0_6(Ask), 5, CLR_NONE)))) continue;
Print("Error close SELL " + OrderTicket());
Li_ret_8 = -1;
continue;
}
if (G_datetime_544 == iTime(NULL, 0, 0)) return (-2);
G_datetime_544 = iTime(NULL, 0, 0);
Print("Need close SELL " + OrderTicket() + ". Trade Context Busy");
return (-2);
}
}
}
}
return (Li_ret_8);
}
double f0_3(int A_cmd_0) {
double Ld_ret_4;
int datetime_12;
switch (MMType) {
case 0:
Ld_ret_4 = Gd_196;
break;
case 1:
Ld_ret_4 = NormalizeDouble(Gd_196 * MathPow(Gd_144, Gi_492), Gd_92);
break;
case 2:
datetime_12 = 0;
Ld_ret_4 = Gd_196;
for (int pos_20 = OrdersHistoryTotal() - 1; pos_20 >= 0; pos_20--) {
if (!OrderSelect(pos_20, SELECT_BY_POS, MODE_HISTORY)) return (-3);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Gi_352) {
if (datetime_12 < OrderCloseTime()) {
datetime_12 = OrderCloseTime();
if (OrderProfit() < 0.0) {
Ld_ret_4 = NormalizeDouble(OrderLots() * Gd_144, Gd_92);
continue;
}
Ld_ret_4 = Gd_196;
}
}
}
}
if (AccountFreeMarginCheck(Symbol(), A_cmd_0, Ld_ret_4) <= 0.0) return (-1);
if (GetLastError() == 134/* NOT_ENOUGH_MONEY */) return (-2);
return (Ld_ret_4);Показано первые 50% кода (символов: 19096)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.