Можно использовать отправку сообщений на web-сайт через ftp. Смотрите https://www.mql5.com/ru/search/sendftp
Можно использовать отправку сообщений на web-сайт через ftp. Смотрите https://www.mql5.com/ru/search/sendftp
Или с таим же успехом SendMAil.
Если сотовый оператор имеет почтовый шлюз то и смс можно организовать. Делал работает.
Так всетаки рухнул или не торгует?
А разницы никакой, но в итоге не торгует :-)
Остановился на кодировании времени в тэйкпрофите
Остановился на кодировании времени в тэйкпрофите
Нет отчета в нужное время - значит не торгует. "Ошибку резидента" разве не читали/смотрели?
А разницы никакой, но в итоге не торгует :-)
Остановился на кодировании времени в тэйкпрофите
Остановился на кодировании времени в тэйкпрофите
Да нет есть маленькая разница если терминал рухнул и надо узнать об этом нужен альтернативный способ доставки отчета, а так может просто нет соединения и поэтому нет ни отчета нет и торговли, но соединение восстановится и все заработает.
А разницы никакой, но в итоге не торгует :-)
Остановился на кодировании времени в тэйкпрофите
Остановился на кодировании времени в тэйкпрофите
Да нет есть маленькая разница если терминал рухнул и надо узнать об этом нужен альтернативный способ доставки отчета, а так может просто нет соединения и поэтому нет ни отчета нет и торговли, но соединение восстановится и все заработает.
Отчет будет посылать мой компьютер если задержка времени будет больше чем эн-минут, так же в коменте будет выведена доп. информация. Как закончу выложу здесь.
Вот сообразил :-) в тестере работает, а на реале в выходные не проверить :-(
//+------------------------------------------------------------------+
//| 1_WorkServer.mq4 |
//| Copyright © 2007, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
extern int MinutesModifyOrder =10;//через сколько минут модифицировать ордер
extern int ServerOrClient =1; //сервер-0, клиент -1
extern int SendReportClient =12;// через сколько минут посылать отчет
extern int MailReport =1;// 0-не посылать отчет, 1-послать
int iPoint=1000;
int SendReport=0;
datetime timeServer;
string nameGlobalVariable="GlobalTicketWorkTime";
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
if(IsTesting())
{
Server();
Client();
}
else
{
if(ServerOrClient==0)Server();
if(ServerOrClient==1)Client();
}
//----
return(0);
}
int Server()
{
int ticket;
if(TimeCurrent()>=timeServer+MinutesModifyOrder*60)
{
ticket=openOrder();
if(ticket>0)timeServer=TimeCurrent();
}
}
int openOrder()
{
double minLot=MarketInfo(Symbol(),MODE_MINLOT);
int ticket=GlobalVariableGet(nameGlobalVariable);
if (modOrder(ticket)==-1)
{
ticket=OrderSend(Symbol(),OP_BUYSTOP,minLot,Ask+iPoint*Point,3,0,0,nameGlobalVariable,0,0,CLR_NONE);
GlobalVariableSet(nameGlobalVariable,ticket);
modOrder(ticket);
}
return(ticket);
}
int modOrder(int ticket)
{
int min=Minute();
int ihour=Hour()*60;
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
{
OrderModify(OrderTicket(),Ask+iPoint*Point,0,Ask+(iPoint+ihour+min)*Point,0,CLR_NONE);
return(1);
}
else
return(-1);
return(0);
}
void Client()
{
int total =OrdersTotal(),
ticket;
datetime datetm=0;
double openOrder;
double TakeProfit;
int date1;
int date;
for(int pos=total-1;pos>=0;pos--)
{
if (OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==false) continue;
if (OrderComment()!=nameGlobalVariable) continue;
date=((OrderTakeProfit()-OrderOpenPrice())/Point);
date1=(Hour()*60)+Minute();
if(date1-date>SendReportClient)
{
if(MailReport==1)
if(SendReport==0)SendMail("!!!ErrorWorkSERVER!!!!","Server No WORK!!!!!!");
Comment("!!! Сервер не работает " + (date1-date-SendReportClient)+" мин !!!");
SendReport=1;
return(1);
}
else
{
SendReport=0;
Comment("Сервер работает (последняя проверка " + (date1-date)+" мин. назад)");
return(1);
}
}
return(0);
}
//+------------------------------------------------------------------+
---Удалил----
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Была идея реализовать это с помощью отложенного ордера, у которого последнее время сервера кодируется в тэйкпрофите, но как то коряво получаеться, да и наверно не каждый ДЦ примет отложенный ордер с профитом 2359,0000.