MMGP logo
Присоединяйтесь к нашему инвестиционному форуму, на котором уже 642,138 пользователей. Чтобы получить доступ ко многим закрытым разделам и начать общение - зарегистрируйтесь прямо сейчас.
Программы для торговли на Форекс и Фондовом рынке: MetaTrader, Metastock и др. Торговые стратегии на базе этих программ (MetaQuotes Language 4 (MQL4). Советники, индикаторы, скрипты и прочие программы для торговли.
Первый пост Опции темы
Старый 21.02.2013, 19:19
#21
Любитель
 
Пол: Мужской
Адрес: RUNET
Инвестирую в: Свой бизнес
Регистрация: 19.04.2010
Сообщений: 607
Благодарностей: 75
Re: Как скрыть работу советника /эксперта в МТ4

на стороне ДЦ все определяется очень просто и быстро, на такие советники и палки не нужно вставлять, слив будет рано или поздно засчитан

поидее после принятия нового закона вообще не будет возможности МТ4 использовать "в рамках закона" только МТ5... а там все подобные советники просто не смогут делать то что им иногда удается
__________________
Продать Bitcoin за 2% доплаты (в вашу сторону) на VISA, MasterCard, Maestro и карты МИР
wmalliance вне форума
Старый 27.02.2013, 11:20
#22
Интересующийся
 
Имя: Евгений
Пол: Мужской
Инвестирую в: Другое
Регистрация: 13.11.2012
Сообщений: 114
Благодарностей: 6
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от wmalliance Посмотреть сообщение
после принятия нового закона вообще не будет возможности МТ4 использовать "в рамках закона" только МТ5... а там все подобные советники просто не смогут делать то что им иногда удается
Можно отсюда поподробнее, что за закон? И разве илан нельзя поставить на МТ5?

Последний раз редактировалось wiseOne; 27.02.2013 в 11:23.
wiseOne вне форума
Старый 20.03.2013, 22:31
#23
Должник!!!
 
Имя: Александр
Пол: Мужской
Инвестирую в: Форекс
Регистрация: 18.03.2013
Сообщений: 266
Благодарностей: 46
Re: Как скрыть работу советника /эксперта в МТ4

konan1985, так ДЦ и так будет видеть работу советника. Правильно было сказано, что кино крутит ДЦ.
PRAETORIAN вне форума
Старый 16.05.2013, 16:18
#24
Любитель
 
Пол: Мужской
Адрес: Kyiv
Инвестирую в: Форекс
Регистрация: 22.03.2013
Сообщений: 327
Благодарностей: 173
Re: Как скрыть работу советника /эксперта в МТ4

Журнал советника ДЦ не видит. Но определить кем открыта сделка может (в MT5 появилась функция в API для этого, якобы для удобства разбора претензий, сов это был, руки или сигнальчик; про MT4 нет данных, но можно предположить =) ). Плюс, если сов пишет комменты или использует magic, то тоже все ясно.
Sergey Kovalyov вне форума
Старый 16.05.2013, 16:23
#25
Любитель
 
Пол: Мужской
Адрес: Kyiv
Инвестирую в: Форекс
Регистрация: 22.03.2013
Сообщений: 327
Благодарностей: 173
Re: Можно ли на сервере МТ4 определить торговлю советником?

Цитата:
Сообщение от websmith Посмотреть сообщение
работайте с банками, здесь косяков не будет.
Будут https://mmgp.ru/showthread.php?p=4666455#post4666455

Банки -- кухни круче чем ДЦ.

Последний раз редактировалось Sergey Kovalyov; 16.05.2013 в 16:37. Причина: Добавлено сообщение
Sergey Kovalyov вне форума
Старый 16.05.2013, 16:35
#26
bvn
Заблокированный
 
Имя: Виталий
Пол: Мужской
Адрес: Полтава, Украина
Инвестирую в: Форекс
Регистрация: 16.06.2008
Сообщений: 8,092
Благодарностей: 3,604

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Объеденил две похожие темы.
bvn вне форума
Сказали спасибо:
Sergey Kovalyov (16.05.2013)
Старый 08.01.2014, 00:32
#27
Интересующийся
 
Инвестирую в: Форекс
Регистрация: 14.11.2013
Сообщений: 22
Благодарностей: 0
Re: Как скрыть работу советника /эксперта в МТ4

как скрыть коменты в сове?
Гарэгин Диноян вне форума
Старый 14.01.2014, 01:34
#28
Мастер
 
Имя: Владислав
Пол: Мужской
Возраст: 48
Инвестирую в: Свой бизнес
Регистрация: 09.04.2011
Сообщений: 2,330
Благодарностей: 1,862

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Гарэгин Диноян Посмотреть сообщение
как скрыть коменты в сове?
Просто их убрать из кода совы, если он (код) открытый.
__________________
Торгую здесь и здесь
Владислав Сергеев вне форума
Старый 15.01.2014, 18:53
#29
Интересующийся
 
Инвестирую в: Форекс
Регистрация: 14.11.2013
Сообщений: 22
Благодарностей: 0
Re: Как скрыть работу советника /эксперта в МТ4

а где коменты в коде? например вот код:
//+------------------------------------------------------------------+
//| TrailingStopLight.mq4 |
//| Copyright © 2012, Khlystov Vladimir |
//| https://cmillion.narod.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, [email protected]"
#property link "https://cmillion.narod.ru"
#property show_inputs
//--------------------------------------------------------------------
extern int TimeModify = 30; //кол-во секунд раньше которого запрещено изменять ордер
extern int Step = 10; //расстояние от цены
extern double Lot = 0.1;
extern int Stoploss = 10, //стоплосс, если 0 то не изменяется
Takeprofit = 50; //тейкпрофит, если 0 то не изменяется
extern int TrailingStop = 5; //длинна тралла, если 0 то нет тралла
extern int TrailingStart = 10; //когда включать тралл, например после достижения 40 п прибыл
extern int StepTrall = 2; //шаг тралла - перемещать стоплосс не ближе чем StepTrall
extern int NoLoss = 0, //перевод в безубыток при заданном кол-ве пунктов прибыли, если 0 то нет перевода в безубыток
MinProfitNoLoss = 0; //минимальная прибыль при переводе вбезубыток
extern int TimeStart = 0 , //ограничение времени работы советника
TimeEnd = 24; //не открываем ордера и закрываем отложки если время не между TimeStart и TimeEnd
extern int slippage = 30; //Максимально допустимое отклонение цены для рыночных ордеров (ордеров на покупку или продажу).
extern int Magic = 77; //магик
//extern int Key = 0;
//--------------------------------------------------------------------
int STOPLEVEL,TimeBarB,TimeBarS,AN;
//--------------------------------------------------------------------
int init()
{
AN = AccountNumber();
}
//--------------------------------------------------------------------
int deinit()
{
remove_objects("info");
}
//--------------------------------------------------------------------
int start()
{
if (!IsDemo() && !IsTesting() && 32395!=AN) {info();return;}
if (!IsTradeAllowed())
{
Comment("Торговля запрещена IsTradeAllowed");
return;
}
//---
int TekHour = Hour();
bool Trade;
if ( TimeStart < TimeEnd && TekHour >= TimeStart && TekHour < TimeEnd ) Trade=true;
else
{
if ( TimeStart > TimeEnd && (TekHour >= TimeStart || TekHour < TimeEnd)) Trade=true; //торговля ночью
else Trade=false;
}
if (!Trade)
{
Comment("Торговля запрещена по времени ");
}
//---
STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL);
double OSL,StLo,PriceB,PriceS,OOP,SL,TP;
int b,s,TicketB,TicketS,OT;
for (int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber())
{
OT = OrderType();
OSL = NormalizeDouble(OrderStopLoss(),Digits);
OOP = NormalizeDouble(OrderOpenPrice(),Digits);
SL=OSL;
if (OT==OP_BUY)
{
b++;
if (OSL<OOP && NoLoss!=0)
{
StLo = NormalizeDouble(OOP+MinProfitNoLoss*Point,Digits);
if (StLo > OSL && StLo <= NormalizeDouble(Bid - STOPLEVEL * Point,Digits)) SL = StLo;
}

if (TrailingStop>=STOPLEVEL && TrailingStop!=0 && (Bid - OOP)/Point >= TrailingStart)
{
StLo = NormalizeDouble(Bid - TrailingStop*Point,Digits);
if (StLo>=OOP && StLo > OSL+StepTrall*Point) SL = StLo;
}

if (SL > OSL)
{
if (!OrderModify(OrderTicket(),OOP,SL,TP,0,White)) Print("Error ",GetLastError()," Order Modify Buy SL ",OSL,"->",SL);
else Print("Order Buy Modify SL ",OSL,"->",SL);
}
}
if (OT==OP_SELL)
{
s++;
if ((OSL>OOP || OSL==0) && NoLoss!=0)
{
StLo = NormalizeDouble(OOP-MinProfitNoLoss*Point,Digits);
if (StLo < OSL || OSL==0 && StLo >= NormalizeDouble(Ask + STOPLEVEL * Point,Digits)) SL = StLo;
}

if (TrailingStop>=STOPLEVEL && TrailingStop!=0 && (OOP - Ask)/Point >= TrailingStart)
{
StLo = NormalizeDouble(Ask + TrailingStop*Point,Digits);
if (StLo<=OOP && (StLo < OSL-StepTrall*Point || OSL==0)) SL = StLo;
}

if ((SL < OSL || OSL==0) && SL!=0)
{
if (!OrderModify(OrderTicket(),OOP,SL,TP,0,White)) Print("Error ",GetLastError()," Order Modify Sell SL ",OSL,"->",SL);
else Print("Order Sell Modify SL ",OSL,"->",SL);
}
}
if (OT==OP_BUYSTOP) {PriceB=OOP; TicketB=OrderTicket();}
if (OT==OP_SELLSTOP) {PriceS=OOP; TicketS=OrderTicket();}
}
}
}
if (TicketS==0 && TicketB>0) {OrderDelete(TicketB);return;}
if (TicketB==0 && TicketS>0) {OrderDelete(TicketS);return;}
if (!Trade)
{
if (b+s==0)
{
if (TicketS+TicketB>0) DeleteAll(-1);
return;
}
}
if (b+TicketB==0 && s==0)
{
if (Stoploss>=STOPLEVEL && Stoploss!=0) SL = NormalizeDouble(Bid - Stoploss * Point,Digits); else SL=0;
if (Takeprofit>=STOPLEVEL && Takeprofit!=0) TP = NormalizeDouble(Ask + Takeprofit * Point,Digits); else TP=0;
if (OrderSend(Symbol(),OP_BUYSTOP,Lot,NormalizeDouble (Ask+Step * Point,Digits),slippage,SL,TP,"news",Magic,0,CLR_NO NE)!=-1) TimeBarB=TimeCurrent();
}
if (s+TicketS==0 && b==0)
{
if (Stoploss>=STOPLEVEL && Stoploss!=0) SL = NormalizeDouble(Ask + Stoploss * Point,Digits); else SL=0;
if (Takeprofit>=STOPLEVEL && Takeprofit!=0) TP = NormalizeDouble(Bid - Takeprofit * Point,Digits); else TP=0;
if (OrderSend(Symbol(),OP_SELLSTOP,Lot,NormalizeDoubl e(Bid - Step * Point,Digits),slippage,SL,TP,"news",Magic,0,CLR_NO NE)!=-1) TimeBarS=TimeCurrent();
}
if (TicketB!=0)
{
if (TimeBarB<TimeCurrent()-TimeModify && MathAbs(NormalizeDouble(Ask + Step * Point,Digits)-PriceB)/Point>StepTrall)
{
if (Stoploss>=STOPLEVEL && Stoploss!=0) SL = NormalizeDouble(Bid - Stoploss * Point,Digits); else SL=0;
if (Takeprofit>=STOPLEVEL && Takeprofit!=0) TP = NormalizeDouble(Ask + Takeprofit * Point,Digits); else TP=0;
if (OrderModify(TicketB,NormalizeDouble(Ask + Step * Point,Digits),SL,TP,0,CLR_NONE)) TimeBarB=TimeCurrent();
}
}
if (TicketS!=0)
{
if (TimeBarS<TimeCurrent()-TimeModify && MathAbs(NormalizeDouble(Bid - Step * Point,Digits)-PriceS)/Point>StepTrall)
{
if (Stoploss>=STOPLEVEL && Stoploss!=0) SL = NormalizeDouble(Ask + Stoploss * Point,Digits); else SL=0;
if (Takeprofit>=STOPLEVEL && Takeprofit!=0) TP = NormalizeDouble(Bid - Takeprofit * Point,Digits); else TP=0;
if (OrderModify(TicketS,NormalizeDouble(Bid - Step * Point,Digits),SL,TP,0,CLR_NONE)) TimeBarS=TimeCurrent();
}
}
}
//--------------------------------------------------------------------
bool DeleteAll(int tip)
{
bool error=true;
int err,nn,OT,OMN;
while(true)
{
for (int j = OrdersTotal()-1; j >= 0; j--)
{
if (OrderSelect(j, SELECT_BY_POS))
{
OMN = OrderMagicNumber();
if (OrderSymbol() == Symbol() && Magic==OrderMagicNumber())
{
OT = OrderType();
if (OT>1 && (OT==tip || tip==-1)) OrderDelete(OrderTicket());
}
}
}
break;
}
return(1);
}
//-------------------------------------------------------------------
bool info()
{
DrawLABELinfo("infofon01",0,100,100,200,"Webdings" ,White,"g");
DrawLABELinfo("infofon02",0,100,280,200,"Webdings" ,White,"g");
DrawLABELinfo("infofon03",0,323,100,200,"Webdings" ,White,"g");
DrawLABELinfo("infofon04",0,323,280,200,"Webdings" ,White,"g");
int Y=110;
DrawLABELinfo("infos"+Y, 0,110,Y,16,"Arial",Red,"Демо версия советника!");Y+=30;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"Возможна работа на демо счете или в тестере");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"Для работы на реале нужно ввести ключ (числовой код в поле Key)");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"Ключ привязан к определенному номеру торгового счета.");Y+=30;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"Для получения бесплатного ключа Вы можете открыть счет в");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"дц InstaForex и зарегистрировать счет на rebate по ссылке:");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Blue,"https://www.getforexrebate.com/ru/register.php?id=3021023");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"При этом Вы будете получать 1,5 $ с каждого лота себе на счет!,");Y+=30;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"Или открыть счет в InstaForex с партнерским кодом BWAO");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"ссылка для открытия счета:");
DrawLABELinfo("infos1"+Y, 0,313,Y,11,"Arial",Blue,"https://instaforex.com/ru/?x=openaccaunt");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"При этом Вы сможете бесплатно получить ключи ко всем");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"советникам из ссылки:");
DrawLABELinfo("infos1"+Y, 0,270,Y,11,"Arial",Blue,"https://cmillion.ru/ru/_setki.php");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"Если у Вас другой брокер, то оплатите 50$ (1500руб)");
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"Способы оплаты:");
DrawLABELinfo("infos1"+Y, 0,235,Y,11,"Arial",Blue,"https://cmillion.narod.ru/info5.html");Y+=30;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"После этого отправьте номер Вашего торгового счета");
DrawLABELinfo("infos1"+Y, 0,482,Y,11,"Arial",Blue,AccountNumber());Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"на почтовый ящик [email protected]");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"В письме укажите реквизиты оплаты или способ регистрации счета.");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"В ответном письме Вы получите ключ который Вы должны ввести");Y+=20;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Black,"в параметрах советника в поле KEY");Y+=30;
DrawLABELinfo("infos"+Y, 0,110,Y,11,"Arial",Red,"Открыть демо счет:");
DrawLABELinfo("infos1"+Y, 0,250,Y,11,"Arial",Blue,"https://instaforex.com/ru/?x=openaccaunt");
}
//--------------------------------------------------------------------
void DrawLABELinfo(string name, int CORNER, int X, int Y, int font_size, string font_name, color clr, string Name)
{
ObjectCreate(name, OBJ_LABEL, 0, 0, 0);
ObjectSet(name, OBJPROP_CORNER, CORNER);
ObjectSet(Name, OBJPROP_COLOR, clr);
ObjectSet(Name, OBJPROP_BACK, false);
ObjectSet(name, OBJPROP_XDISTANCE, X);
ObjectSet(name, OBJPROP_YDISTANCE, Y);
ObjectSetText(name,Name,font_size,font_name,clr);
}
//+------------------------------------------------------------------+
int remove_objects(string PreName)
{
for(int k=ObjectsTotal()-1; k>=0; k--)
{
string Obj_Name=ObjectName(k);
string Head=StringSubstr(Obj_Name,0,StringLen(PreName));

if (Head==PreName)
{
ObjectDelete(Obj_Name);
}
}
Comment("");
return(0);
}
//--------------------------------------------------------------------+
Гарэгин Диноян вне форума
Старый 15.01.2014, 19:01
#30
bvn
Заблокированный
 
Имя: Виталий
Пол: Мужской
Адрес: Полтава, Украина
Инвестирую в: Форекс
Регистрация: 16.06.2008
Сообщений: 8,092
Благодарностей: 3,604

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Гарэгин Диноян, отвечу на Ваш вопрос цитатой из сайта документации docs.mql4.com:

Цитата:
int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)
...
Параметры:
symbol - Наименование финансового инструмента, с которым проводится торговая операция.
cmd - Торговая операция. Может быть любым из значений торговых операций.
volume - Количество лотов.
price - Цена открытия.
slippage - Максимально допустимое отклонение цены для рыночных ордеров (ордеров на покупку или продажу).
stoploss - Цена закрытия позиции при достижении уровня убыточности (0 в случае отсутствия уровня убыточности).
takeprofit - Цена закрытия позиции при достижении уровня прибыльности (0 в случае отсутствия уровня прибыльности).
comment - Текст комментария ордера. Последняя часть комментария может быть изменена торговым сервером.
magic - Магическое число ордера. Может использоваться как определяемый пользователем идентификатор.
expiration - Срок истечения отложенного ордера.
arrow_color - Цвет открывающей стрелки на графике. Если параметр отсутствует или его значение равно CLR_NONE, то открывающая стрелка не отображается на графике.
В документации все есть и все достаточно доступно изложено, главное не лениться туда заглянуть.
bvn вне форума
Старый 15.01.2014, 20:15
#31
Мастер
 
Пол: Мужской
Регистрация: 25.07.2010
Сообщений: 4,092
Благодарностей: 601
Re: Как скрыть работу советника /эксперта в МТ4

Никак не скроете от ДЦ. Они всё "видят".
Forex-club7 вне форума
Старый 15.01.2014, 20:43
#32
Профессионал
 
Имя: Александр
Пол: Мужской
Адрес: РФ, Сибирь
Инвестирую в: Форекс
Регистрация: 27.10.2011
Сообщений: 2,113
Благодарностей: 807

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Владислав Сергеев Посмотреть сообщение
Просто их убрать из кода совы, если он (код) открытый.
Бесполезно, если их убрать сов в коментах просто будет ставить своё название.
Цитата:
Сообщение от Гарэгин Диноян Посмотреть сообщение
а где коменты в коде? например вот код:
Сторочки:
if (OrderSend(Symbol(),OP_SELLSTOP,Lot,NormalizeDoubl e(Bid - Step * Point,Digits),slippage,SL,TP,"news",Magic,0,CLR_NO NE)!=-1) TimeBarS=TimeCurrent();

и

if (OrderSend(Symbol(),OP_BUYSTOP,Lot,NormalizeDouble (Ask+Step * Point,Digits),slippage,SL,TP,"news",Magic,0,CLR_NO NE)!=-1) TimeBarB=TimeCurrent();

комментарий "news", если его совсем вырезать - сов не скомпелится, если оставить пустые кавычки "" - сов в коменты будет ставить своё название.

А какой смысл скрывать коменты? Если с целью, чтоб ДЦ не знал, что ордер открыт советником - то это бесполезно, достоверно известно, что в настройках торгового сервера есть чекбокс разрешать/запрещать торговлю советниками, т.е. он знает, открыта сделка руками или советником.

И в свете этого название темы звучит примерно как "Как стать бессмертным?"
__________________
FxCash - профессиональные услуги по возврату части спрэда (комиссии).
Alex235 вне форума
Старый 16.01.2014, 13:19
#33
bvn
Заблокированный
 
Имя: Виталий
Пол: Мужской
Адрес: Полтава, Украина
Инвестирую в: Форекс
Регистрация: 16.06.2008
Сообщений: 8,092
Благодарностей: 3,604

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Alex235 Посмотреть сообщение
Бесполезно, если их убрать сов в коментах просто будет ставить своё название.
Что за ерунду Вы пишете? Извиняюсь, что резко, но Вы вроде бы неплохо разбираетесь в этих вопросах, а пишете такое... странно.


Цитата:
Сообщение от Alex235 Посмотреть сообщение
комментарий "news", если его совсем вырезать - сов не скомпелится, если оставить пустые кавычки "" - сов в коменты будет ставить своё название.
Нет. Это не правда. Будет пустая строка. Правда, кавычки не пробовал, надо ставить NULL.
Цитата:
Сообщение от Alex235 Посмотреть сообщение
А какой смысл скрывать коменты? Если с целью, чтоб ДЦ не знал, что ордер открыт советником - то это бесполезно, достоверно известно, что в настройках торгового сервера есть чекбокс разрешать/запрещать торговлю советниками, т.е. он знает, открыта сделка руками или советником.
А вот с этим согласен. Очень сомнительно, чтобы эта информация была скрыта на сервере.
bvn вне форума
Сказали спасибо:
Alex235 (16.01.2014)
Старый 16.01.2014, 15:20
#34
Профессионал
 
Имя: Александр
Пол: Мужской
Адрес: РФ, Сибирь
Инвестирую в: Форекс
Регистрация: 27.10.2011
Сообщений: 2,113
Благодарностей: 807

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от bvn Посмотреть сообщение
Что за ерунду Вы пишете? Извиняюсь, что резко, но Вы вроде бы неплохо разбираетесь в этих вопросах, а пишете такое... странно.
Ага, ерунду, как выяснилось. Сейчас попробовал на обычном илане - свои коменты не пишет. А ерунду я выдал не просто так - как то мучил по этому поводу одну сову с dll, в открытом коде у неё:
string expert="";
order.OrderSendNDD(n,MagicNumber,OP_BUY,lot,-1,StopLoss,TakeProfit,expert,0,CLR_NONE);
и она действительно в неуказанный комент ставит своё название, как её не обзавёшь. Ну я и грешным делом подумал что все совы так делают. Сейчас попробовал, ничего с последними билдами не изменилось, то же самое делает.
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок.PNG
Просмотров: 24
Размер:	29.2 Кб
ID:	90052  
__________________
FxCash - профессиональные услуги по возврату части спрэда (комиссии).
Alex235 вне форума
Сказали спасибо:
bvn (16.01.2014)
Старый 16.01.2014, 16:45
#35
bvn
Заблокированный
 
Имя: Виталий
Пол: Мужской
Адрес: Полтава, Украина
Инвестирую в: Форекс
Регистрация: 16.06.2008
Сообщений: 8,092
Благодарностей: 3,604

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Alex235 Посмотреть сообщение
order.OrderSendNDD
Это, наверное, вообще МТ5, судя по написанию через точку... вызов метода? Я как-то до сих пор не вникал в MQL5 с его объектами, с тех пор как они изменили ситуацию с одерами/позициями я посчитал эту версию терминала мне не интересной

Хотя ООП-подход очень ждал, но одной ложкой дегтя... вобщем, это уже лирика и оффтоп...
bvn вне форума
Старый 17.01.2014, 17:13
#36
Мастер
 
Имя: Владислав
Пол: Мужской
Возраст: 48
Инвестирую в: Свой бизнес
Регистрация: 09.04.2011
Сообщений: 2,330
Благодарностей: 1,862

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Alex235 Посмотреть сообщение
А какой смысл скрывать коменты? Если с целью, чтоб ДЦ не знал, что ордер открыт советником - то это бесполезно, достоверно известно, что в настройках торгового сервера есть чекбокс разрешать/запрещать торговлю советниками, т.е. он знает, открыта сделка руками или советником.
Чекбокс тут не причем. Он всего лишь разрешает/запрещает работу советника не более того. Это внутренняя настройка терминала. Советник можно заставить имитировать работу руками. Во-первых, для этого установить magic в ноль. Во-вторых, реже теребить торговый сервер командами.
__________________
Торгую здесь и здесь
Владислав Сергеев вне форума
Старый 17.01.2014, 17:27
#37
bvn
Заблокированный
 
Имя: Виталий
Пол: Мужской
Адрес: Полтава, Украина
Инвестирую в: Форекс
Регистрация: 16.06.2008
Сообщений: 8,092
Благодарностей: 3,604

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Владислав Сергеев Посмотреть сообщение
Чекбокс тут не причем. Он всего лишь разрешает/запрещает работу советника не более того. Это внутренняя настройка терминала. Советник можно заставить имитировать работу руками. Во-первых, для этого установить magic в ноль. Во-вторых, реже теребить торговый сервер командами.
Вы считаете, что сервер удаленно управляет "скрытыми" настройками терминала, запрещая торговые функции? Или все же он их запрещает исполнять на своей стороне?

Я думаю, что второе. А если так, то значит он как-то должен различать ручные команды терминала от автоматических. Думаю, что именно это хотел сказать Alex235.
bvn вне форума
Сказали спасибо:
Alex235 (17.01.2014)
Старый 17.01.2014, 19:08
#38
Мастер
 
Имя: Владислав
Пол: Мужской
Возраст: 48
Инвестирую в: Свой бизнес
Регистрация: 09.04.2011
Сообщений: 2,330
Благодарностей: 1,862

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от bvn Посмотреть сообщение
Вы считаете, что сервер удаленно управляет "скрытыми" настройками терминала, запрещая торговые функции? Или все же он их запрещает исполнять на своей стороне?
Очевидно, Вы совсем меня не так поняли.
У нас есть торговый терминал, посредством которого мы передаем команды торговому серверу и получаем от него ответы. Подавать команды можно вручную, путем активации тех же кнопок в терминале и заполнения данных или автоматически путем выполнения определенной программы. И в том, и в другом случае терминал генерирует для торгового сервера аналогичную последовательность команд. Торговому серверу без разницы каким методом мы отдаем распоряжения. Он видит лишь саму команду и ее параметры. Так вот, если в OrderSend параметру magic присвоить ноль, то торговый сервер "будет думать", что мы открываемся вручную, потому что при открытии ордеров вручную мы не можем менять magic и он по умолчанию всегда 0. Если при этом мы не будем проявлять повышенную активность (обращение с командами к торговому серверу с интервалами, с которыми человек физически не может оперировать - повышенная активность на торговом счете), то сервер "точно" будет думать, что мы работаем вручную.
Вышеназванный чекбокс всего лишь запрещает передавать торговые функции от программы советника к терминалу. Это такие функции, как: OrderSend(), OrderClose, OrderCloseBy, OrderDelete и OrderModify.
Обратимся, к официальному хелпу:
Цитата:
Торговые функции могут быть вызваны только в том случае, если в свойствах соответствующего эксперта или скрипта включена галочка "Разрешить советнику торговать"
__________________
Торгую здесь и здесь

Последний раз редактировалось Владислав Сергеев; 17.01.2014 в 19:25.
Владислав Сергеев вне форума
Старый 17.01.2014, 19:36
#39
Профессионал
 
Имя: Александр
Пол: Мужской
Адрес: РФ, Сибирь
Инвестирую в: Форекс
Регистрация: 27.10.2011
Сообщений: 2,113
Благодарностей: 807

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Владислав Сергеев Посмотреть сообщение
Так вот, если в OrderSend параметру magic присвоить ноль, то торговый сервер "будет думать", что мы открываемся вручную, потому что при открытии ордеров вручную мы не можем менять magic и он по умолчанию всегда 0.
Попробуйте открыть единственную сделку совой/скриптом с мейджиком 0 на счёте, на котором запрещена торговля советниками (бывают такие конкурсы) - Вам не удастся. Вывод - торговля совой определяется отнюдь не по мейджику.
Цитата:
Сообщение от Владислав Сергеев Посмотреть сообщение
Вышеназванный чекбокс всего лишь запрещает передавать торговые функции от программы советника к терминалу. Это такие функции, как: OrderSend(), OrderClose, OrderCloseBy, OrderDelete и OrderModify.
Обратимся, к официальному хелпу:
Мы говорим о разных чекбоксах: Вы о том, что в насторойках терминала, я о том, что в панеле управления торговым сервером.
__________________
FxCash - профессиональные услуги по возврату части спрэда (комиссии).
Alex235 вне форума
Сказали спасибо:
bvn (17.01.2014)
Старый 17.01.2014, 20:06
#40
Мастер
 
Имя: Владислав
Пол: Мужской
Возраст: 48
Инвестирую в: Свой бизнес
Регистрация: 09.04.2011
Сообщений: 2,330
Благодарностей: 1,862

награды Волшебный горшочек 
Re: Как скрыть работу советника /эксперта в МТ4

Цитата:
Сообщение от Alex235 Посмотреть сообщение
Попробуйте открыть единственную сделку совой/скриптом с мейджиком 0 на счёте, на котором запрещена торговля советниками (бывают такие конкурсы) - Вам не удастся. Вывод - торговля совой определяется отнюдь не по мейджику.
Ну, что же. Пришлось переговорить с представителем одного из сговорчивых брокеров.
В данном случае торговля советниками запрещается на уровне торгового сервера для определенного набора торговых счетов.
Как именно это происходит технически, информация не раскрывается разработчиками MT.
В простейшем случае, как мне пояснили, в админке МТ4 увидеть, что торгует советник можно, действительно, по параметру magic, если он отличен от 0.
Думаю, можно проанализировать логи по счету, которые пишутся в базу админки.
Однако и из логов этого не увидишь:
Цитата:
Я
..., забыл уточнить. А логи админки по счету отличаются от клиентских логов в терминале?
Или они равнозначны? За тем лишь исключением, что у вас пишутся в базу?

Б
да, но тут просто больше информации и немного по другому написаны. По сути это логи вашего терминала + служебная информация. Правда есть небольшой нюанс. Если у вас возникнут какие либо проблемы со связью то на сервере сделка уже может исполниться и лог этого будет. а до вашего терминала может не дойти ответ и соответственно в логе еще ничего не будет. Так же в логе сервера пишется все что происходит на счете. а в логе терминала пишется то что происходит на терминале. И если сработают стопы когда терминал будет выключен то у вас не будет этого лога

Б
а, еще точнее, срабатывание стопов вообще не отображается в терминале. а на сервере отображается, тоже самое и со стоп аутами

Я
а для конкретного счета у вас там есть вкладка "эксперты"? в смысле в логах...

Б
нет, такого нет. на сервере один лог - лог сервера. А то что отображается на вкладке эксперты это логи эксперта - и соответственно потому что эксперт работает на клиентском терминале, а не на сервере, самого его нет у нас и поэтому нет и его логов.

Я
т.е. по логам счета вы не можете определить, что работает эксперт?

Б
нет, не можем.

Я
Но тогда вопрос, как определяют другие брокеры? если magic 0

Б
для большего понимания могу пояснить немного. В логе сервера пишутся запросы с вашего терминала. Советник - это тоже самое, что если бы вы торговали вручную, только так называемый автомат. Единственно что можно понять, точнее "предположить" из логов что торгует советник это если запросы приходят очень часто. Например не один "нормальный" живой человек просто физически не сможет модифицировать или выставлять подряд ордера с интервалом в 1-2 секунды или даже меньше

Я
спасибо. я так и понял, что определяют по активности на счете.
Т.е. моя теория о мейджике и активности на счете, вроде, работает.
__________________
Торгую здесь и здесь

Последний раз редактировалось Владислав Сергеев; 17.01.2014 в 20:36.
Владислав Сергеев вне форума
Войдите, чтобы оставить комментарий.
Быстрый переход
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Имидж эксперта - одно из слагаемых популярности блоггера.Хотя он может быть туп как д Nub777 Дайджест блогосферы 3 29.03.2017 03:19
Написать советника, кто? voprosnik Программирование на языке MQL (Meta Quotes Language) 4 04.10.2011 21:00
Поправить код советника djus Программирование на языке MQL (Meta Quotes Language) 2 09.07.2011 21:38
Настройки советника djus Программное обеспечение 3 05.09.2008 23:40