macd sample test.mq4
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «macd sample test.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой торговый советник для платформы MetaTrader 4, написанный на языке MQL4. Он работает на основе обработчика событий start и предназначен для автоматического анализа ценовых данных с использованием индикатора скользящих средних.
Советник способен открывать длинные и краткие позиции на рынке, устанавливать уровни фиксации прибыли и управлять защитными стоп-ордерами. Встроены базовые проверки достаточности данных на графике и наличия свободных средств на счёте перед входом в сделку.
Управление позициями включает закрытие открытых ордеров при изменении рыночной ситуации и динамическую корректировку уровня стоп-лосса с помощью функцииTrailing Stop. Торговые операции выполняются через стандартные API-функции MetaTrader.
Настройки программы
| Настройка | Описание |
|---|---|
| TakeProfit | Уровень фиксации прибыли в пунктах. Задаёт расстояние от цены открытия до уровня Take Profit. |
| Lots | Объём лота для открытия позиции. Определяет размер торговой сделки. |
| TrailingStop | Расстояние защитного стоп-ордера от текущей цены в пунктах. При достижении нужной прибыли стоп-лосс перемещается в пользу позиции. |
Поиск по коду файла
extern double TakeProfit = 90;
extern double Lots = 0.1;
extern double TrailingStop = 30;
int start()
{
// код доступен только после оплаты
}
double MaCurrent, MaPrevious;
int cnt, ticket, total;
if(Bars<100)
{
Print("bars less than 100");
return(0);
}
if(TakeProfit<10)
{
Print("TakeProfit less than 10");
return(0); // check TakeProfit
}
MaCurrent=iMA(NULL,0,3,0,MODE_EMA,PRICE_CLOSE,1);
MaPrevious=iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,1);
total=OrdersTotal();
if(total<1)
{
if(AccountFreeMargin()<(1000*Lots))
{
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if(MaCurrent>MaPrevious && Ask<MaPrevious)
{
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-50*Point,Ask+TakeProfit*Point,"macd sample",16384,0,Green);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
else Print("Error opening BUY order : ",GetLastError());
return(0);
}
if(MaCurrent<MaPrevious && Bid>MaPrevious)
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+50*Point,Bid-TakeProfit*Point,"macd sample",16384,0,Red);
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
}
else Print("Error opening SELL order : ",GetLastError());
return(0);
}
return(0);
}
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cПоказано первые 50% кода (символов: 2048)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.