ilan turbo beta v.4.5.1 +mear
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ilan turbo beta v.4.5.1 +mear.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Советник для платформы MetaTrader 4, предназначенный для автоматической торговли на финансовых рынках. Работает с двумя независимыми торговыми сторонами, анализирует ценовые данные и значения технического индикатора RSI для принятия решений об открытии позиций.
Поддерживает динамический расчёт уровней пипсов на основе недавних ценовых экстремумов с ограничениями верхнего и нижнего диапазона. Размер лотов увеличивается в зависимости от количества уже открытых позиций. Имеется управление тейк-профитом для открытых ордеров.
Отображает на графике актуальную информацию о балансе, эквити и состоянии торговых позиций по каждой стороне. Обработка событий происходит на закрытии каждого нового бара.
Настройки программы
| Настройка | Описание |
|---|---|
| LotExponent | Лот-экспонент — Параметр, определяющий степень увеличения размера лота при нарастании количества открытых позиций. |
| DynamicPips | Динамические пипсы — Переключатель, включающий автоматический расчёт пипсов на основе недавних ценовых колебаний. |
| DefaultPips | Базовые пипсы — Базовое значение пипсов, используемое при отключённом динамическом режиме или как граница для автоматического расчёта. |
| Slip | Проскальзывание — Допустимое отклонение цены исполнения от запрашиваемой (проскальзывание в пунктах). |
| Lots | Базовый лот — Начальный базовый размер лота для открытия первой позиции. |
| TakeProfit | Тейк-профит — Расстояние в пунктах до уровня фиксации прибыли для открытых позиций. |
| RsiMinimum | Минимум RSI — Нижний порог значения индикатора RSI, используемый при принятии торговых решений. |
| RsiMaximum | Максимум RSI — Верхний порог значения индикатора RSI, используемый при принятии торговых решений. |
| MagicNumber | Магический номер — Уникальный идентификатор ордеров, позволяющий советнику отличать свои сделки от чужих. |
| MaxTrades | Максимум сделок — Максимальное количество позиций, которые советник будет открывать на каждой стороне. |
Поиск по коду файла
extern double LotExponent = 1.59;
extern bool DynamicPips = True;
extern int DefaultPips = 22;
extern double Slip = 3.0;
extern double Lots = 0.1;
extern double TakeProfit = 20.0;
extern double RsiMinimum = 30.0;
extern double RsiMaximum = 70.0;
extern int MagicNumber = 1111;
extern int MaxTrades = 12;
int lastTime = 0;
double pipPos;
int magicNumber[2] = {0, 0};
int cntTradesPrev[2] = {0, 0};
#define SIDE_A 0
#define SIDE_B 1
int init()
{
// код доступен только после оплаты
}
int deinit()
{
ObjectsDeleteAll(0);
return (0);
}
int start()
{
// код доступен только после оплаты
}
void processSide(int aSide)
{
int i;
bool haveBuy = False;
bool haveSell = False;
int countTrades = CountTrades(aSide);
double newLots = Lots * MathPow(LotExponent, countTrades);
if (countTrades == 0)
{
if (iClose(Symbol(), 0, 2) < iClose(Symbol(), 0, 1))
{
if ((FindLastBuyPrice(OtherSide(aSide)) == 0) && (iRSI(Symbol(), PERIOD_H1, 14, PRICE_CLOSE, 1) < RsiMaximum))
{
OpenOrder(aSide, OP_BUY, newLots, countTrades);
haveBuy = True;
countTrades++;
}
}
else
{
if ((FindLastSellPrice(OtherSide(aSide)) == 0) && (iRSI(Symbol(), PERIOD_H1, 14, PRICE_CLOSE, 1) > RsiMinimum))
{
OpenOrder(aSide, OP_SELL, newLots, countTrades);
haveSell = True;
countTrades++;
}
}
}
else if (countTrades <= MaxTrades)
{
for (i = OrdersTotal() - 1; i >= 0; i--)
{
if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != magicNumber[aSide])) continue;
if (OrderType() == OP_BUY)
{
haveBuy = True;
break;
}
else if (OrderType() == OP_SELL)
{
haveSell = True;
break;
}
}
if (haveBuy && (FindLastBuyPrice(aSide) - Ask >= pipPos * Point))
{
OpenOrder(aSide, OP_BUY, newLots, countTrades);
countTrades++;
}
else if (haveSell && (Bid - FindLastSellPrice(aSide) >= pipPos * Point))
{
OpenOrder(aSide, OP_SELL, newLots, countTrades);
countTrades++;
}
}
if ((countTrades > 0) && (countTrades != cntTradesPrev[aSide]))
{
cntTradesPrev[aSide] = couПоказано первые 50% кода (символов: 8798)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.