cross ma~.mq4
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «cross ma~.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой торгового советника для платформы MetaTrader 4, который автоматизирует торговлю на основе анализа скользящих средних. Советник отслеживает ценовые данные, рассчитывает несколько скользящих средних и определяет направление тренда рынка. При изменении тренда продукт способен автоматически открывать или закрывать длинные и короткие позиции.
Советник поддерживает стандартные торговые операции: размещение ордеров на покупку и продажу, закрытие позиций и модификацию активных ордеров. Доступны настраиваемые уровни стоп-лосса и тейк-профита, а также механизм трейлинг-стопа для управления защищёнными позициями. Включена возможность отправки уведомлений по электронной почте при ключевых торговых событиях.
Продукт работает в среде MetaTrader 4 и обрабатывает рыночные данные через стандартный обработчик start. Предусмотрен режим обработки каждого тика либо только при формировании нового бара, что позволяет гибко настраивать поведение торгового алгоритма.
Настройки программы
| Настройка | Описание |
|---|---|
| MagicNumber | Магическое число — Уникальный идентификатор магического числа, присваиваемый открытым ордерам для их распознавания и управления. |
| SignalMail | Уведомления по почте — Переключатель отправки уведомлений по электронной почте при открытии и закрытии позиций. |
| EachTickMode | Режим каждого тика — Переключатель режима обработки каждого тика. При включении советник реагирует на каждое изменение цены, при выключении — только при появлении нового бара. |
| Lots | Объём лота — Объём торговой позиции в единицах лота, используемый при открытии ордеров. |
| Slippage | Допустимое проскальзывание — Допустимое отклонение цены исполнения ордера от запрашиваемой цены, измеряемое в пунктах. |
| UseStopLoss | Использовать стоп-лосс — Переключатель, определяющий, устанавливать ли стоп-лосс при открытии позиции. |
| StopLoss | Стоп-лосс в пунктах — Значение стоп-лосса в пунктах, устанавливаемое при открытии позиции при включённом соответствующем переключателе. |
| UseTakeProfit | Использовать тейк-профит — Переключатель, определяющий, устанавливать ли тейк-профит при открытии позиции. |
| TakeProfit | Тейк-профит в пунктах — Значение тейк-профита в пунктах, устанавливаемое при открытии позиции при включённом соответствующем переключателе. |
| UseTrailingStop | Использовать трейлинг-стоп — Переключатель, определяющий, использовать ли трейлинг-стоп для активных позиций. |
| TrailingStop | Трейлинг-стоп в пунктах — Расстояние трейлинг-стопа в пунктах, используемое для защиты прибыли по активным позициям при включённом соответствующем переключателе. |
Поиск по коду файла
/*
G e n e r a t e d by ex4-to-mq4 decompiler FREEWARE 4.0.509.5
Website: h TTp:/ / w Ww.Met a quot E s .n e T
E-mail : S UP por t @me t a QU o te S.N e T
*/
extern int MagicNumber = 0;
extern bool SignalMail = FALSE;
extern bool EachTickMode = TRUE;
extern double Lots = 0.01;
extern int Slippage = 5;
extern bool UseStopLoss = TRUE;
extern int StopLoss = 500;
extern bool UseTakeProfit = FALSE;
extern int TakeProfit = 100;
extern bool UseTrailingStop = FALSE;
extern int TrailingStop = 0;
int G_bars_124;
int Gi_128;
bool Gi_132 = FALSE;
int init() {
// код доступен только после оплаты
}
int deinit() {
return (0);
}
int start() {
// код доступен только после оплаты
}
int ticket_8;
double price_12;
double price_20;
int Li_0 = 0;
if (EachTickMode && Bars != G_bars_124) Gi_132 = FALSE;
int order_total_4 = OrdersTotal();
Li_0 = 0;
double ima_28 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 1);
double ima_36 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 1);
double ima_44 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 0);
double ima_52 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 0);
double ima_60 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 1);
double ima_68 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 1);
double ima_76 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 0);
double ima_84 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 0);
double ima_92 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 1);
double ima_100 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 1);
double ima_108 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 0);
double ima_116 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 0);
double ima_124 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 1);
double ima_132 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 1);
double ima_140 = iMA(NULL, 0, 10, 0, MODE_EMA, PRICE_CLOSE, Gi_128 + 0);
double ima_148 = iMA(NULL, 0, 24, 0, MODE_SMA, PRICE_CLOSE, Gi_128 + 0);
bool Li_156 = FALSE;
for (int pos_160 = 0; pos_160 < order_total_4; pos_160++) {
OrderSelect(pos_160, SELECT_BY_POS, MODE_TRADES);
if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {
Li_156 = TRUE;
if (OrderType() == OP_BUY) {
if (ima_92 > ima_100 && ima_108 < ima_116) Li_0 = 3;
if (Li_0 == 3 && (EachTickMode && (!Gi_132)) || ((!EachTickMode) && Bars != G_bars_124)) {
OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, MediumSeaGreen);
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Close Buy");
if (!EachTickMode) G_bars_124 = Bars;
Li_156 = FALSE;
continue;
}
if (!(UseTrailingStop && TrailingStop > 0)) continue;
if (Bid - OrderOpenPrice() <= Point * TrailingStop) continue;
if (OrderStopLoss() >= Bid - Point * TrailingStop) continue;
OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen);
if (!(!EachTickMode)) continue;
G_bars_124 = Bars;
continue;
}
if Показано первые 50% кода (символов: 4776)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.