[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 424
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
приведите здесь вашу функцию открытия ордеров.
int NewOrder(int Cmd,double Lot)
{double TP=0, TP2=0;
double SL=0, SL2=0;
double PR=0;
datetime endtime;
while(!IsTradeAllowed()) Sleep(100);
endtime = TimeCurrent()+4*60*60;
if(Cmd == OP_BUYSTOP)
{
PR=TOP+10*Point;
PR=NormalizeDouble(PR,2);
if(TakeProfit>0)
{
TP=PR+25*Point;
}
if(StopLoss>0)
{
SL=PR-30*Point;
SL=NormalizeDouble(SL,2);
}
}
if(Cmd==OP_SELLSTOP)
{
PR=BOT-7*Point;
PR=NormalizeDouble(PR,2);
if(TakeProfit>0)
{
TP=PR-25*Point;
}
if(StopLoss>0)
{
SL=PR+30*Point;
SL=NormalizeDouble(SL,2);
}
}
if ((TOP-BOT)<115*Point)
int tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,endtime,CLR_NONE);
else
Print("Большая разница между ТОР і ВОТ: ",(TOP-BOT));
if(tic<0) Print("Ошибка открытия ордера: ",GetLastError());
return(tic);
а ордер как закрывается? по стоп лосту или функцией OrderClose()
по стоп лосу или тэйк профиту.
Всем привет..у меня вопрос ..а где можно глянуть отчет о проделаных сделках...общии за весь периуд работы...??
В принципе можно искать ордера в истории и отсортировать их, затем узнать два последних закрытия. Но это вам надо пройтись по всем ордерам истории два раза.
используйте OrderHistoryTotal(), MODE_HISTORY, OrderCloseTime()>0, OrderProfit()
Другим вариантом - чтоб не сканировать два раза историю - это запоминание тикетов открывшихся ордеров и потом определения их профита.
А как именно запоминать тикеты? И как понимать: чтоб обратиться к тикету - нужно выбрать ордер, а чтоб его выбрать - нужно знать тикет...
А как именно запоминать тикеты? И как понимать: чтоб обратиться к тикету - нужно выбрать ордер, а чтоб его выбрать - нужно знать тикет...
что б выбрать ордер не обязательно знать тикет
Что-то я запутался с функцией маркетинфо и не могу рассчитать корректное значение стоимости спреда по инструменту в валюте депозита с заданным размером лота. Не подскажете корректную формулу? Причем надо и по споту, и по CFD...
У меня такой вопрос к спецам - есть ли возможность сделать константой, первое полученное значение цены при запуске советника?
Т.е если я запустил советник и в это время цена Ask=1.4444 Я хочу эту цену сохранить как константу, чтобы всё время работы советника можно было к ней орбащаться. Только вот вопрос, как это сделать??? Ведь Ask постоянно меняеться, а функции копирования я нигде не нашёл.
сделать глобальную переменную или просто переменную
и вставить это не в функцию старт, а в функцию инит
У меня такой вопрос к спецам - есть ли возможность сделать константой, первое полученное значение цены при запуске советника?
Т.е если я запустил советник и в это время цена Ask=1.4444 Я хочу эту цену сохранить как константу, чтобы всё время работы советника можно было к ней орбащаться. Только вот вопрос, как это сделать??? Ведь Ask постоянно меняеться, а функции копирования я нигде не нашёл.
Вариации на тему.
А как именно запоминать тикеты? И как понимать: чтоб обратиться к тикету - нужно выбрать ордер, а чтоб его выбрать - нужно знать тикет...
https://docs.mql4.com/ru/trading/OrderSelect - посмотрите SELECT_BY_POS