asiascalperpro_.mq4
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «asiascalperpro_.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой торговый советник для платформы MetaTrader 4, написанный на языке MQL4. Советник реализует скальпинговую стратегию, основанную на сравнении цен закрытия свечей: если предыдущая свеча закрылась выше текущей, открывается позиция SELL, и наоборот — при понижении открывается BUY. Торговые операции выполняются как рыночными ордерами, так и отложенными (BuyLimit, BuyStop, SellLimit, SellStop).
Советник поддерживает ряд пользовательских настроек: размер лота, уровень тейк-профита, функцию трейлинг-стопа с настраиваемыми расстояниями старта и шага, ограничение максимального количества ордеров, а также защиту капитала по механизму стоп-аута. Дополнительно реализована автоматическая закрытие всех позиций по истечении заданного времени и фильтрация ордеров по магическому номеру.
Внутренняя логика включает расчёт текущей прибыли, управление лотами (с возможностью увеличения или восстановления после убыточных сделок), модификацию ордеров по мере движения цены и отслеживание максимального уровня капитала для защиты средств. Все операции завершаются с проверкой ошибок и выводом сообщений в журнал.
Настройки программы
| Настройка | Описание |
|---|---|
| Lots | Размер лота — Размер лота для открытия позиций. |
| TakeProfit | Тейк-профит — Уровень тейк-профита в пунктах для открытых позиций. |
| UseTrailing | Использовать трейлинг-стоп — Переключатель функции трейлинг-стопа для управляемых позиций. |
| TrailStart | Начало трейлинг-стопа — Расстояние в пунктах от текущей цены, при котором активируется трейлинг-стоп. |
| TrailStop | Шаг трейлинг-стопа — Шаг трейлинг-стопа в пунктах — расстояние от цены, на которое перемещается стоп-лосс. |
| MaxCountOrders | Максимальное количество ордеров — Максимальное количество одновременно открытых ордеров на символе. |
| SafeEquity | Защита капитала — Переключатель защиты капитала: при активации все позиции закрываются, если убыток превышает заданный процент от максимального капитала. |
| SafeEquityRisk | Процент защиты капитала — Процент от максимального капитала, при превышении убытка через который срабатывает защита капитала. |
| slippage | Проскальзывание — Допустимое проскальзывание цены при исполнении ордеров. |
| MagicNumber | Магический номер — Магический номер для фильтрации ордеров, принадлежащих данному советнику. |
Поиск по коду файла
/*
G e n e r a t e d by ex4-to-mq4 decompiler FREEWARE 4.0.509.5
Website: h t T p://W wW . M e T AqU o t E S . net
E-mail : S U pP Ort @mEt aQ u oTES.nE t
*/
double Gd_76 = 1.6;
extern double Lots = 0.01;
extern double TakeProfit = 24.0;
double G_pips_100 = 5.0;
extern bool UseTrailing = FALSE;
extern double TrailStart = 35.0;
extern double TrailStop = 49.0;
extern int MaxCountOrders = 10;
extern bool SafeEquity = FALSE;
extern double SafeEquityRisk = 10.0;
extern double slippage = 3.0;
extern int MagicNumber = 12469;
bool Gi_156 = FALSE;
double Gd_160 = 48.0;
double G_pips_168 = 500.0;
double Gd_176 = 0.0;
bool Gi_184 = TRUE;
bool Gi_188 = FALSE;
int Gi_192 = 1;
double G_price_196;
double Gd_204;
double Gd_unused_212;
double Gd_unused_220;
double G_price_228;
double G_bid_236;
double G_ask_244;
double Gd_252;
double Gd_260;
double Gd_268;
bool Gi_276;
string Gs_280 = "Take Profit";
datetime G_time_288 = 0;
int Gi_292;
int Gi_296 = 0;
double Gd_300;
int G_pos_308 = 0;
int Gi_312;
double Gd_316 = 0.0;
bool Gi_324 = FALSE;
bool Gi_328 = FALSE;
bool Gi_332 = FALSE;
int Gi_336;
bool Gi_340 = FALSE;
int G_datetime_344 = 0;
int G_datetime_348 = 0;
double Gd_352;
double Gd_360;
int init() {
// код доступен только после оплаты
}
int deinit() {
return (0);
}
int start() {
// код доступен только после оплаты
}
double ND(double Ad_0) {
return (NormalizeDouble(Ad_0, Digits));
}
int fOrderCloseMarket(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() == MagicNumber) {
if (OrderType() == OP_BUY && Ai_0) {
RefreshRates();
if (!IsTradeContextBusy()) {
if (!OrderClose(OrderTicket(), OrderLots(), ND(Bid), 5, CLR_NONE)) {
Print("Error close BUY " + OrderTicket());
Li_ret_8 = -1;
}
} else {
if (G_datetime_344 == iTime(NULL, 0, 0)) return (-2);
G_datetime_344 = 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(), ND(Ask), 5, CLR_NONE))) continue;
Print("Error close SELL " + OrderTicket());
Li_ret_8 = -1;
continue;
}
if (G_datetime_348 == iTime(NULL, 0, 0)) return (-2);
G_datetime_348 = iTime(NULL, 0, 0);
Показано первые 50% кода (символов: 13533)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.