ntk_07.mq4
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ntk_07.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
ntk_07.mq4 — советник для платформы MetaTrader 4, предназначенный для автоматической торговли на валютном рынке. Советник размещает отложенные ордера типа BUYSTOP и SELLSTOP, отслеживает открытые позиции и модифицирует их стоп-лосс и тейк-профит при срабатывании трейлинг-стопа. Также реализована функция безубытка и управление лотами с помощью мультипликатора.
Настройки программы
| Настройка | Описание |
|---|---|
| g1 | Заголовок группы 1 — Текстовый параметр-разделитель для визуальной группировки настроек в интерфейсе. |
| netstep | Шаг в пунктах — Расстояние в пунктах от текущей цены для размещения отложенных ордеров BUYSTOP и SELLSTOP. |
| sl | Стоп-лосс в пунктах — Расстояние в пунктах от цены открытия ордера до уровня стоп-лосса. |
| tp | Тейк-профит в пунктах — Расстояние в пунктах от цены открытия ордера до уровня тейк-профита. |
| TrailingStop | Трейлинг-стоп в пунктах — Расстояние в пунктах для трейлинг-стопа, фиксирующего прибыль при движении цены в нужную сторону. |
| mul | Множитель лота — Множитель, используемый при расчёте размера лота при наращивании позиций. |
| ??????????? ?? ?????? (trailprofit) | Корректировать тейк-профит при трейлинге — Флаг, определяющий, менять ли уровень тейк-профита при срабатывании трейлинг-стопа (1 — да, 0 — нет). |
| gg | Заголовок группы 2 — Текстовый параметр-разделитель для визуальной группировки настроек в интерфейсе. |
| mm | Режим управления лотами — Режим расчёта размера лота: 0 — фиксированный лот, 1 — лот как процент от баланса с делением на множитель, 2 — наращивание лота умножением базового лота. |
| Lots | Базовый лот — Начальный размер лота для расчёта при различных режимах управления лотами. |
| LotLim | Лимит лота — Максимально допустимый размер лота для новых позиций. |
| maxtrades | Максимум сделок — Максимальное количество одновременно открытых сделок, используемое при расчёте лота. |
| percent | Процент от баланса — Процент свободного средства, используемый для расчёта размера лота в режиме mm=1. |
| minsum | Минимальный свободный маржинал — Минимальный размер свободного маржинала на счёте, при котором советник продолжает работу. |
| ???? 1, ??????????? ????? ? ????????? (bezub) | Включить безубыток — Флаг активации перемещения стоп-лосса в безубыточную точку при приближении цены к уровню открытия. |
| ???? ????? ?????????? ????????? ?????? ???? ??????? ?? 5 ??????? ? ?????? ???????, ?? ????????? ? ?? (deltalast) | Дистанция для безубытка в пунктах — Расстояние в пунктах от цены открытия, при достижении которого стоп-лосс перемещается в точку безубытка. |
| bq | Заголовок группы 3 — Текстовый параметр-разделитель для визуальной группировки настроек в интерфейсе. |
| usema | Использовать скользящую среднюю — Флаг включения корректировки трейлинг-стопа на основе значения простой скользящей средней. |
| MovingPeriod | Период скользящей средней — Количество баров для расчёта простой скользящей средней, используемой при корректировке трейлинг-стопа. |
| MovingShift | Сдвиг скользящей средней — Сдвиг индикатора скользящей средней относительно текущего бара. |
| bb | Заголовок группы 4 — Текстовый параметр-разделитель для визуальной группировки настроек в интерфейсе. |
| ???? ?????? (chas1) | Час начала торговой сессии — Начальный час (по серверному времени) для разрешения размещения ордеров. |
| chas2 | Час окончания торговой сессии — Конечный час (по серверному времени) для разрешения размещения ордеров. |
| ?????? ? ????? (per) | Период анализа диапазона — Количество баров для определения максимума и минимума цены; 0 отключает анализ диапазона. |
| 0 - ??????? ?? ????? ?????????, 1- ??????? ?? ?????? (center) | Использовать центр диапазона — Режим срабатывания: 0 — ордера при пробое верхней или нижней границы диапазона, 1 — ордера при достижении средней цены диапазона. |
| ???????????? ??? ?????????? ????? (c10) | Округление лота — Множитель для округления размера лота до определённого знака. |
| ???????????? ??? ?????????? ??? (c20) | Округление цены — Множитель для округления ценовых значений до определённого знака. |
Поиск по коду файла
/*
??? ????????:
?????? ??? ?????????? ?????? ?? ??????? ???? ?? ?????????? netstep
???? ???? ?? ??? ???????????, ?? ?????? ???????
?????? ??? ???? ?????????? ? ??????????? ???????? ???? ?? ?????????? netstep, ?? ? ????? ?????????? ?? mul
? ?.?. ?? ??? ??? ???? ?? ????????? ?????????? ??????? ?????? maxtrades ??? LotLim
? ?????? ????? ????? ? ??????? ? ??????????? ????, ?.?. ?????? ??????? ????? ? ?? ????? ?? ?????
??????? maxtrades, ?????, ??????? ??????? ?? ????????????? ?????, ? mul ?? ???? ?????? ???? ?????? ????, ????? ?? ???? ??????????? ????? ?? ????? ?????
??????? ??????? ???????? ????????? ???????? ? ??????????? ?????????? ?????????? ???? ??????????
?? ?????
?? ??????? 1 ??? ?????? ????????? ????????? ???? ?? eurusd (???????? ????), ????????? ???????? ?????????????? ?? ?????? 01.01.2008 - 01.11.2008.
??????? ????????? ???????? ? ????????? ??? ?????? ? ?????? ???????? 2007 ????, ??? ? ?????????????? ????????
????????? ?? ??????? ? ??? ???? ?????????? ???? ??????? ??? ?? ????? ? ??? ???????????? ?????.
???????? ????????:
1. ??????? ????????, ????? ????????? ??????? ?? ?????? ????? ???? ??????????? ????? ????????? ??????, ????? ??? ?????, ??????? ??????????? (?? ?????????? ? ????)
2. ? ???? ???? ??????? ???? ?????? ?? ?????, ?? ??????? ?? ????? ???????? ?? ????? ????????? ??????? ...
(????????, ?? ????? fxstart ?? ????????????? ?????? (? ??????? ?????????), ? ?? forex4u ??? ??)
???? ?????????? ?? ????? ??????, ????????? ? ???????????.
?????????? ???????????? ????????, set ????? ??? ?????? ????????????, ????????? ??????
??????? ?? ???? ????????? ??? ?????????, ???? ??? ??????? ??????? ??? ? ??? ???? ???????? ????????? ??????.
? ? ?????? ???? ????? ???? ??????? ????????? !
(?? ?????? ??? ?? ???????/??????, ? ?????? ??? IMHO ?????? ?????(?) ????? ?? ??? ?????)
??????, ???? ??? ????? ???? ?????????, ?? ??? ??? (351 ??)
(??????? ? ???????? ? ?????? ?????, ??? ????? ??????)
*/
extern string g1="???????? ?????????";
extern int netstep=23;
extern int sl=115;
extern int tp=300;
extern int TrailingStop=75;
extern double mul=1.7;
extern int trailprofit=1; // ??????????? ?? ??????
extern string gg="?????????? ????????";
extern int mm=2;
extern double Lots=1;
extern double LotLim=7;
extern int maxtrades=4;
extern double percent=10;
extern double minsum=5000;
extern int bezub=0; // ???? 1, ??????????? ????? ? ?????????
extern int deltalast=5; // ???? ????? ?????????? ????????? ?????? ???? ??????? ?? 5 ??????? ? ?????? ???????, ?? ????????? ? ?????????
extern string bq="???????";
extern int usema=0;
extern int MovingPeriod = 100;
extern int MovingShift = 0;
extern string bb="???????????? ??????????";
extern int chas1=0; // ???? ??????
extern int chas2=24;
extern int per=0; // ?????? ? ?????
extern int center=0; // 0 - ??????? ?? ????? ?????????, 1- ??????? ?? ??????
extern int c10=10; // ???????????? ??? ?????????? ?????
extern int c20=10000; // ???????????? ??? ?????????? ???
int oldtr=0;
double nulpoint=0;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
if (oldtr>TrailingStop) {TrailingStop=oldtr;}
if (mm==1)
{
double lotsi=MathCeil(AccountBalance()/1000*percent/100);
LotLim=lotsi;
for(int t=1;t<=maxtrades;t++)
{
lotsi=lotsi/mul;
}
lotsi=MathRound(lotsi*c10)/c10;
Lots=lotsi;
}
if (mm==2)
{
lotsi=Lots;
for(t=1;t<=maxtrades;t++)
{
lotsi=lotsi*mul;
}
LotLim=lotsi;
}
if(DayOfWeek()==0 || DayOfWeek()==6) return(0);// ?? ???????? ? ???????? ???.
if(AccountFreeMargin()<minsum) // ?????? ?????????
{
Print("We have no money. Free Margin = ", AccountFreeMargin());
return(0);
}
if (OrdersTotal()<1) // ???????? !
{
if (Hour()<chas1 || Hour()>(chas2) || chas1>chas2) return(0);// ????? ? ?????????
if (per>0 && center==0)
{
double ssmax=High[1];
double ssmin=Low[1];
for (int x=2;x<=per;x++)
{
if (ssmax < High[x]) ssmax=High[x];
if (ssmin > Low[x]) ssmin=Low[x];
}
if (Ask>=ssmax || Ask<=ssmin)
{
int ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,Ask+netstep*Point,3,Ask+netstep*Point-sl*Point,Ask+netstep*Point+tp*Point,"BUYSTOP",0,0,Green);
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lots,Bid-netstep*Point,3,Bid-netstep*Point+sl*Point,Bid-netstep*Point-tp*Point,"STOPLIMIT",0,0,Green);
}
}
if (per>0 && center==1)
{
ssmax=High[1];
ssmin=Low[1];
for (x=2;x<=per;x++)
{
if (ssmax < High[x]) ssmax=High[x];
if (ssmin > Low[x]) ssmin=Low[x];
}
if (Ask==(ssmax+ssmin)/2 || Bid==(ssmax+ssmin)/2)
{
ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,Ask+netstep*Point,3,Ask+netstep*Point-sl*Point,Ask+netstep*Point+tp*Point,"BUYSTOP",0,0,Green);
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lots,Bid-netstep*Point,3,Bid-netstep*Point+sl*Point,Bid-netstep*Point-tp*Point,"STOPLIMIT",0,0,Green);
}
}
if (per==0)
{
ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,Ask+netstep*Point,3,Ask+netstep*Point-sl*Point,Ask+netstep*Point+tp*Point,"BUYSTOP",0,0,Green) ;
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lots,Bid-netstep*Point,3,Bid-netstep*Point+sl*Point,Bid-netstep*Point-tp*Point,"STOPLIMIT",0,0,Green);
}
}
int cnt=0;
int mode=0;
double buylot=0;double buyprice=0;double buystoplot=0;double buystopprice=0;double buylimitlot=0;double buylimitprice=0;
double selllot=0;double sellprice=0;double sellstoplot=0;double sellstopprice=0;double selllimitlot=0;double selllimitprice=0;
double buysl=0;double buytp=0;double sellsl=0;double selltp=0;
int bt=-1;int bst=-1;int blt=-1;int st=-1;int sst=-1;int slt=-1;
if (OrdersTotal()>0)////////////////////////////////////////////////////////////////Показано первые 50% кода (символов: 9092)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.