[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 1124
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Добрый день. Возвращаюсь к своему вопросу. Не срабатывает реверс сделки. Смотрел по сайту, но ничего не нашёл на эту тему. Подскажите что я делаю не так (продолжаю учиться языку). Требуется, чтобы это срабатывало на одной свече.
extern double TP = 70; //takeprofit
extern double SL = 0; //stoploss
extern double Lot = 0.1;
double HighLevel;
double LowLevel;
int resBuy=0;
int resSell=0;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
HighLevel=High[1];
LowLevel=Low[1];
return;
}
//+------------------------------------------------------------------+
//| expert function |
//+------------------------------------------------------------------+
void start()
{
if(Bars<100 && IsTradeAllowed()==false) return;
if(resBuy==0 && resSell==0 && CheckBreak()==-1)
{
resSell=OrderSend(Symbol(),OP_SELL,Lot,Bid,2,0,Bid -TP,"",MAGICMA,0,Red);
HighLevel=LowLevel;
LowLevel=Close[1];
return;
}
if(resBuy==0 && resSell==0 && CheckBreak()==1)
{
resBuy=OrderSend(Symbol(),OP_BUY,Lot,Ask,2,0,Ask + TP,"",MAGICMA,0,Blue);
LowLevel=HighLevel;
HighLevel=Close[1];
return;
}
if(resBuy!=0 && resSell==0 && Close[1]<LowLevel) //-------------------------------------интересует вот эта часть: закрытие и открытие на одном баре
{
bool closeBuy=OrderClose(resBuy, Lot, Bid, 2, Blue);
// while(!IsTradeAllowed()) Sleep(100);
resSell=OrderSend(Symbol(),OP_SELL,Lot,Bid,2,0,Bid -TP,"",MAGICMA,0,Red);
HighLevel=LowLevel;
LowLevel=Close[1];
return;
}
if(resSell!=0 && resBuy==0 && Close[1]>HighLevel) //-------------------------------------интересует вот эта часть: закрытие и открытие на одном баре
{
bool closeSell=OrderClose(resSell, Lot, Ask, 0.0002, Red);
// while(!IsTradeAllowed()) Sleep(100);
resBuy=OrderSend(Symbol(),OP_BUY,Lot,Ask,2,0,Ask + TP,"",MAGICMA,0,Blue);
LowLevel=HighLevel;
HighLevel=Close[1];
return;
}
}
//----------------------------------------------------------------- Check Low&High break (Func)
double CheckBreak()
{
double candle=Open[1]-Close[1];
if(candle>0 && Low[1]<LowLevel) return(-1);
if(candle<0 && High[1]>HighLevel) return(1);
}
Есть проблема с массивами:
Допустим
int start (){ // Функция старт
int OrdSen_1=OrderSend(Symbol(), OP_BUY, 0.10, Ask,1, Ask-70*Point, Ask+70*Point); // Ордер на покупку
if(OrdSen_1==-1){ Alert("OrdSen_1 ",GetLastError());} // Проверка ошибки выставления ордера
double mas1[]={}; // Массив
}
Вопрос в следующем, как значения "Symbol(), OP_BUY, 0.10, Ask,1, Ask-70*Point, Ask+70*Point", которые принадлежат OrdSen_1 поместить в массим mas1[]={}, чтобы их можно было в дальнейшем использовать,брать из массива или приравнять данные значения к переменным чтобы их потом использовать. Таких ордеров может быть более, также как и массивов, главное понять принцип.
ОЧЕНЬ благодарен за помощь и объяснения, желательно развернутые :)
За пределами будет удалена, потому что вы ее не используете, ну то есть не вызываете ни откуда, теперь понятно?
Как вам такой образец? :)))))
Приветствую. Как в редакторе можно отслеживать все места в коде, где используется одна и та же переменная. функция?
Приветствую. Как в редакторе можно отслеживать все места в коде, где используется одна и та же переменная. функция?
Я пользуюсь для этого программой Notepad++. В нём достаточно выделить один раз переменную,чтоб она подсветилась во всём коде.
Но чтоб Notepad++ подсвечивал синтаксис, нужно поднастроить его на язык MQL4. Введите в поиск этого форума Notepad++ - найдёте ссылку на уже настроенный редактор - я его тут не 1 раз выкладывал.
Спасибо. Установил, подсвечивает, стало веселей))
Спасибо. Установил, подсвечивает, стало веселей))
Там есть очень интересная функция пометок найденных переменных. Нажмите Ctrl+F, введите имя переменной, поставьте галочки "Помечать закладкой" и "Помечать найденное". Затем нажмите кнопку "Найти все". Чтоб убрать это нажмите кнопку "Убрать все"
Там есть очень интересная функция пометок найденных переменных. Нажмите Ctrl+F, введите имя переменной, поставьте галочки "Помечать закладкой" и "Помечать найденное". Затем нажмите кнопку "Найти все". Чтоб убрать это нажмите кнопку "Убрать все"
А по двойному клику переходит на фрагмент кода))) То, что нужно, спасибо)