Daydream
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «daydream01.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Daydream — торговый советник для MetaTrader 4, автоматизирующий процесс открытия и закрытия позиций на основе анализа ценовых данных текущего графика. Советник вычисляет опорные уровни за настраиваемый период и на основании соотношения текущей цены с ними определяет направление входа.
Советник поддерживает длинные и короткие позиции с механизмом скользящей фиксации прибыли, который подтягивает уровень выхода по мере благоприятного движения цены. Для идентификации собственных ордеров используется уникальный магический номер, а вход в позицию ограничивается одним ордером в рамках текущего бара.
Торговые параметры, включая размер лота, период расчёта, допустимое проскальгивание и расстояние до тейк-профита, настраиваются через внешние переменные.
Настройки программы
| Настройка | Описание |
|---|---|
| Lots | Lots — Размер лота для открытия позиции |
| ChannelPeriod | ChannelPeriod — Период вычисления опорных ценовых уровней |
| Slippage | Slippage — Допустимое проскальгивание при совершении ордера |
| TakeProfit | TakeProfit — Расстояние до уровня фиксации прибыли |
Поиск по коду файла
#define MAGIC_NUM 48213657
extern double Lots =1;
extern int ChannelPeriod=25;
extern int Slippage =3;
extern int TakeProfit =15;
double LastOrderTime=0;
double CurrentDirection=0;
double CurrentTakeProfitPrice=0;
void OpenLong()
{
if (Time[0]==LastOrderTime)
return;
if (CurrentDirection!=0)
return;
OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0,
"Daydream", MAGIC_NUM, 0, Blue);
LastOrderTime=Time[0];
CurrentDirection=1;
}
void OpenShort()
{
if (Time[0]==LastOrderTime)
return;
if (CurrentDirection!=0)
return;
OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0,
"Daydream", MAGIC_NUM, 0, Red);
LastOrderTime=Time[0];
CurrentDirection=-1;
}
void CloseLong()
{
int i;
if (Time[0]==LastOrderTime)
return;
if (CurrentDirection!=1)
return;
for(i=0; i < OrdersTotal(); i++)
{
if (OrderSelect(i, SELECT_BY_POS) && OrderSymbol()==Symbol() &&
OrderMagicNumber()==MAGIC_NUM && OrderType()==OP_BUY)
{
OrderClose(OrderTicket(), OrderLots(), Bid, 3, White);
LastOrderTime=Time[0];
CurrentDirection=0;
}
}
}
void CloseShort()
{
int i;
if (Time[0]==LastOrderTime)
return;
Показано первые 50% кода (символов: 1900)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.