Robot_ADX+2MA
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «robot_adx+2ma.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Robot_ADX+2MA — торговый советник для MetaTrader 4, разработанный Yuriy Tokman (YTG), версия 2.00. Советник анализирует ценовые данные с использованием двух экспоненциальных скользящих средних (EMA с периодами 5 и 12) и индикатора ADX (период 6) с линиями PlusDI и MinusDI. На основании соотношения EMA, разницы между ними и значений ADX принимает решение об открытии покупающих или продающих позиций.
В качестве входных параметров задаются размер лота, уровни тейк-профита и стоп-лосса, а также пороговое значение для разницы между скользящими средними. Советник проверяет наличие свободной маржи и существующих ордеров перед открытием новых позиций. При неудачном открытии позиции реализована многократная попытка с обработкой различных кодов ошибок MetaTrader.
Внутренняя функция OpenPosition управляет отправкой ордеров через торговый API MetaTrader 4, включает проверку допустимости торговли, нормализацию цен и обработку ошибок. Советник использует магический номер для идентификации своих позиций и может блокировать работу при определённых системных ошибках.
Настройки программы
| Настройка | Описание |
|---|---|
| TakeProfit | Тейк-профит — Уровень тейк-профита в пунктах. |
| Sl | Стоп-лосс — Уровень стоп-лосса в пунктах. |
| Lots | Размер лота — Размер лота для открытия позиции. |
| n | Порог разницы EMA — Пороговое значение разницы между двумя экспоненциальными скользящими средними. |
Поиск по коду файла
#property version "2.00"
#property strict
input int TakeProfit = 4700;
input int Sl = 2400;
input double Lots = 0.1;
input int n = 10;
int MagicNumber = 2808;
int Slippage = 30;
int POPYTKY = 10;
bool gbDisabled = False;
#include <stdlib.mqh>
int start()
{
// код доступен только после оплаты
}
int OpenPosition(string sy, int op, double ll, double sl=0, double tp=0, int mn=0, string cm ="") {
color clOpen;
datetime ot;
double pp, pa, pb;
int dg, err, it, ticket=0;
string lsComm="";
if (sy=="" || sy=="0") sy=Symbol();
if (op==OP_BUY) clOpen=Lime; else clOpen=Red;
for (it=1; it<=POPYTKY; it++) {
if (!IsTesting() && (!IsExpertEnabled() || IsStopped())) {
Print("OpenPosition(): Остановка работы функции");
break;
}
while (!IsTradeAllowed()) Sleep(5000);
RefreshRates();
dg=(int)MarketInfo(sy, MODE_DIGITS);
pa=MarketInfo(sy, MODE_ASK);
pb=MarketInfo(sy, MODE_BID);
if (op==OP_BUY) pp=pa; else pp=Показано первые 50% кода (символов: 3354)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.