Присоединяйтесь к нашему инвестиционному форуму, на котором уже 394,943 пользователей. Чтобы получить доступ ко многим закрытым разделам и начать общение -  .
Вход через:  
Программы для торговли на Форекс и Фондовом рынке: MetaTrader, Metastock и др. Торговые стратегии на базе этих программ (MetaQuotes Language 4 (MQL4). Советники, индикаторы, скрипты и прочие программы для торговли.
При поддержке
Важная информация
Стартовала бессрочная акция "Оплата за сообщения".
Уважаемый гость, стартовал новый этап конкурса "Путь к успеху" ($500) подробнее...
Открылся магазин MMGP
Ответить
 
Первый пост Опции темы
Сообщения прочитаны и/или просмотрены Сегодня, 07:20
Старый 21.12.2007, 23:37
#1
Мастер
 
Имя: Дмитрий
Пол: Мужской
Возраст: 29
Адрес: Пермь
Инвестирую в: Свой бизнес
Регистрация: 18.05.2007
Сообщений: 1,673
Благодарностей: 456
КП: 0.000
требуется скрипт

нужна помощь...мне нужен скрипт такой..или помошник..вобщем моя ТС предпологает выставление 2х отложенных ордеров в разные стороны(бай стоп и сел стоп) так вот нужно чтобы при исполнении одно из ордеров второй удалялся автоматически..подскажите как это реализовать..
__________________

ещё 500 вёдер и золотой ключик наш!
ХЫШНИК вне форума  
Старый 22.12.2007, 09:34
#2
Интересующийся
 
Пол: Мужской
Адрес: Казань
Инвестирую в: Форекс
Регистрация: 02.08.2007
Сообщений: 165
Благодарностей: 36
КП: 0.000
Интересная идея, а если кто найдётся, то просьба ещё не по 1му в каждую сторону, а по 3 в каждую стоону. Тоже бы пригодились.
Demark вне форума  
Старый 22.12.2007, 14:31
#3
Главный модератор
Главные модераторы
 
Имя: Евгений
Пол: Мужской
Регистрация: 07.12.2007
Сообщений: 11,954
Благодарностей: 5,852
Записей в блоге: 21

награды Волшебный горшочек Ветеран MMGP.RU 
Цитата:
Сообщение от ХЫШНИК Посмотреть сообщение
нужна помощь...мне нужен скрипт такой..или помошник..вобщем моя ТС предпологает выставление 2х отложенных ордеров в разные стороны(бай стоп и сел стоп) так вот нужно чтобы при исполнении одно из ордеров второй удалялся автоматически..подскажите как это реализовать..
Проверь, сейчас быстренько набросал, а проверить негде, выходные, но должно все правильно работать:

Код:
#property copyright "Graf"
#property link      "http://www.pro-fx.biz"


int init()
  {
   return(0);
  }
int deinit()
  {
   return(0);
  }


//Кол-во отложенных на Бай
int ordercountBUY()
{
string To,Tn;
int cnt,col;
col=0;
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   To = OrderSymbol();
   if ((To==Symbol())  && (OrderType()==OP_BUYSTOP))  col=col+1;
   }
return(col);
}

//Кол-во отложенных на Селл
int ordercountSELL()
{
string To,Tn;
int cnt, col;
col=0;
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   To = OrderSymbol();
   if ((To==Symbol())  && (OrderType()==OP_SELLSTOP))  col=col+1;
   }
return(col);
}

// -------------------------------  Кол-во открытых на бай
int countBUY()
{
string To;
int cnt,col;
col=0;
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   OrderSelect(cnt,SELECT_BY_POS,0);
   To = OrderSymbol();
   if ((To==Symbol())  && (OrderType()==OP_BUY))  col=col+1;
   }
return(col);
}

// -----------------------------   Кол-во открытых на Селл
int countSELL()
{
string To,Tn;
int cnt, col;
col=0;
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   To = OrderSymbol();
   if ((To==Symbol())  && (OrderType()==OP_SELL))  col=col+1;
   }
return(col);
}



//Отмена отложенных
int CloseAll()
{
int cnt;
bool n3,n4,rez;
rez=true;
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   if  ((OrderSymbol()==Symbol())  && (OrderType()==OP_BUYSTOP))  n3=OrderDelete( OrderTicket(), 0);
   if  ((OrderSymbol()==Symbol())  && (OrderType()==OP_SELLSTOP)) n4=OrderDelete( OrderTicket(), 0);
   }
return(rez);
}



int start()
  {
   return(0);
   if ((countSELL()==1) && (ordercountBUY()==1)) CloseAll();
   if ((ordercountSELL()==1) && (countBUY()==1)) CloseAll();
   
  }
//+------------------------------------------------------------------+
Aisller вне форума  
Старый 30.12.2007, 22:54
#4
Мастер
 
Имя: Дмитрий
Пол: Мужской
Возраст: 29
Адрес: Пермь
Инвестирую в: Свой бизнес
Регистрация: 18.05.2007
Сообщений: 1,673
Благодарностей: 456
КП: 0.000
первый код немножко не работает...

вот рабочая версия..спасибо Graf..
PHP код:
#property copyright "Graf"
#property link      "http://www.pro-fx.biz"


int init()
  {
   return(
0);
  }
int deinit()
  {
   return(
0);
  }


//Кол-во отложенных на Бай
int ordercountBUY()
{
string To,Tn;
int cnt,col;
col=0;
for (
cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   
To OrderSymbol();
   if ((
To==Symbol())  && ((OrderType()==OP_BUYSTOP) || (OrderType()==OP_BUYLIMIT)))  col=col+1;
   }
return(
col);
}

//Кол-во отложенных на Селл
int ordercountSELL()
{
string To,Tn;
int cntcol;
col=0;
for (
cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   
To OrderSymbol();
   if ((
To==Symbol())  && ((OrderType()==OP_SELLSTOP) || (OrderType()==OP_SELLLIMIT)))  col=col+1;
   }
return(
col);
}

// -------------------------------  Кол-во открытых на бай
int countBUY()
{
string To;
int cnt,col;
col=0;
for (
cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   
OrderSelect(cnt,SELECT_BY_POS,0);
   
To OrderSymbol();
   if ((
To==Symbol())  && (OrderType()==OP_BUY))  col=col+1;
   }
return(
col);
}

// -----------------------------   Кол-во открытых на Селл
int countSELL()
{
string To,Tn;
int cntcol;
col=0;
for (
cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   
To OrderSymbol();
   if ((
To==Symbol())  && (OrderType()==OP_SELL))  col=col+1;
   }
return(
col);
}



//Отмена отложенных
int CloseAll()
{
int cnt;
bool n3,n4,rez;
rez=true;
for (
cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   if  ((
OrderSymbol()==Symbol())  && (OrderType()==OP_BUYSTOP))   OrderDeleteOrderTicket(), 0);
   if  ((
OrderSymbol()==Symbol())  && (OrderType()==OP_SELLSTOP))  OrderDeleteOrderTicket(), 0);
   if  ((
OrderSymbol()==Symbol())  && (OrderType()==OP_BUYLIMIT))  OrderDeleteOrderTicket(), 0);
   if  ((
OrderSymbol()==Symbol())  && (OrderType()==OP_SELLLIMIT)) OrderDeleteOrderTicket(), 0);
   }
return(
rez);
}

//Возвращает общий профит
double AllProfit()
{
string To;
int cnt;
double prof=0
for (
cnt=OrdersTotal()-1;cnt>=0;cnt--)
   {
   
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
   
To OrderSymbol();
   if ( (
To==Symbol())  && (OrderType()==OP_SELL) )  prof=prof+OrderProfit()+OrderSwap();
   if ( (
To==Symbol())  && (OrderType()==OP_BUY)  )  prof=prof+OrderProfit()+OrderSwap();
   }
return(
prof);
}


int start()
  {
   
   if ( (
countSELL()==1) && (ordercountBUY()==1) ) CloseAll();
   if ( (
ordercountSELL()==1) && (countBUY()==1) ) CloseAll();
   
   
   
Comment("BUY  = "+countBUY()+"n"+"SELL = "+countSELL()+"n"+
           
"BUY LIMIT  = "+ordercountBUY()+"n"+"SELL LIMIT = "+ordercountSELL()+"n"+Symbol()+" = "+AllProfit());
   return(
0);
  }
//+------------------------------------------------------------------+ 
__________________

ещё 500 вёдер и золотой ключик наш!
ХЫШНИК вне форума  
Старый 30.12.2007, 23:09
#5
Мастер
 
Имя: Дмитрий
Пол: Мужской
Возраст: 29
Адрес: Пермь
Инвестирую в: Свой бизнес
Регистрация: 18.05.2007
Сообщений: 1,673
Благодарностей: 456
КП: 0.000
если кто вдруг не знает как этот код приатачить к терминалу обьясняю..

1 открываем MetaEditor..(в терминале вверху под справкой жёлтый ромб с воскл. знаком)
2 файл-> создать-> советник
3 очистить появившийся шаблон и скопировать туда код...
4 нажать "Компилировать" (тоже вверху..недалеко от справки)
5 перезагрузить терминал..в окне "навигатор" по вкладке советник найти советник и перетащить на граик
6 в появившихся опциях поставить галку в "разрешить советнику торговать"...жмакнуть "ок"..
7 чтобы всё работало должно быть так..см. рисунок..
__________________

ещё 500 вёдер и золотой ключик наш!
ХЫШНИК вне форума  
Старый 31.12.2007, 19:45
#6
Главный модератор
Главные модераторы
 
Имя: Евгений
Пол: Мужской
Регистрация: 07.12.2007
Сообщений: 11,954
Благодарностей: 5,852
Записей в блоге: 21

награды Волшебный горшочек Ветеран MMGP.RU 
Цитата:
вот рабочая версия..спасибо Graf..
Пожайлуста, тут я Aisller, правда.

Если нужен кому еще скрипт, описывайте алгоритм работы, реализуем.
Aisller вне форума  
Старый 20.01.2008, 15:03
#7
Интересующийся
 
Пол: Мужской
Инвестирую в: Доверительное управление
Регистрация: 18.10.2007
Сообщений: 149
Благодарностей: 22
КП: 0.000
Просьба посмотреть возможно ли написать торгового советника по прилагаемому алгоритму??
Вложения
Тип файла: zip Проба.zip (3.6 Кб, 17 просмотров)
dunaef вне форума  
Старый 20.01.2008, 16:57
#8
Мастер
 
Имя: Дмитрий
Пол: Мужской
Возраст: 29
Адрес: Пермь
Инвестирую в: Свой бизнес
Регистрация: 18.05.2007
Сообщений: 1,673
Благодарностей: 456
КП: 0.000
на сколько я помню зигзаг настраивается ...тоесть пик формируется через определённое количество баров...не плохо было бы эту настройку указать..если я всё правильно понял..
__________________

ещё 500 вёдер и золотой ключик наш!
ХЫШНИК вне форума  
Старый 20.01.2008, 19:00
#9
Интересующийся
 
Пол: Мужской
Инвестирую в: Доверительное управление
Регистрация: 18.10.2007
Сообщений: 149
Благодарностей: 22
КП: 0.000
Предполагаеться использовать базовый zigzag МТ4 с типовыми настройками. Важно попробовать, а в дальнейшем уже подогнать в зависимости от результатов тестирования.
dunaef вне форума  
Старый 20.01.2008, 19:44
#10
Мастер
 
Имя: Дмитрий
Пол: Мужской
Возраст: 29
Адрес: Пермь
Инвестирую в: Свой бизнес
Регистрация: 18.05.2007
Сообщений: 1,673
Благодарностей: 456
КП: 0.000
ты пробовал в реале торговат по своей ТС?...я посмотрел довольно таки нервно получается..
__________________

ещё 500 вёдер и золотой ключик наш!
ХЫШНИК вне форума  
Старый 21.01.2008, 08:17
#11
Интересующийся
 
Пол: Мужской
Инвестирую в: Доверительное управление
Регистрация: 18.10.2007
Сообщений: 149
Благодарностей: 22
КП: 0.000
Для трейдера данная стратегия не являеться оптимальной по многим причинам, а для мтс для выполнения жесткого алгоритма думаю может приносить прибыль. Вопрос возмется кто нибудь написать советника или нет, может пора искать в другом месте. Да второй индикатор трендовый здесь.
Вложения
Тип файла: zip Stop_reversal.zip (1.1 Кб, 17 просмотров)
dunaef вне форума  
Старый 21.01.2008, 21:09
#12
Мастер
 
Имя: Дмитрий
Пол: Мужской
Возраст: 29
Адрес: Пермь
Инвестирую в: Свой бизнес
Регистрация: 18.05.2007
Сообщений: 1,673
Благодарностей: 456
КП: 0.000
кинул ссылку на тему человеку, что мне написал скрипт...
__________________

ещё 500 вёдер и золотой ключик наш!

Последний раз редактировалось Aisller; 21.05.2011 в 13:26.
ХЫШНИК вне форума  
Ответить
Войдите, чтобы оставить комментарий.
Сообщения прочитаны и/или просмотрены Сегодня, 07:20
Опции темы

Быстрый переход


Случайные темы
Аватар kingcasha
WebMoney.UA представили сервис вывода на банковскую карту за 3 клика
От kingcasha в разделе «Новости платежных систем»
Аватар kamol_mix
Цена нефти на торгах в Лондоне упала до пятилетнего минимума
От kamol_mix в разделе «Новости в мире финансов и инвестиций»
Аватара нет
WMID-339787314139. Нужен лимит $11
От ilezar в разделе «Архив: Прием лимитов доверия»
Аватар kingcasha
Фотоаппарат Nikon Coolpix L830 Black
От kingcasha в разделе «Заработал – Потрать!»
Аватар kamol_mix
Samsung официально представила свой самый тонкий смартфон
От kamol_mix в разделе «Новости технологий и интернета»
Аватара нет
Wmid 129509951980 нужен кредит 20-30wmz
От lpv в разделе «Черный список должников»
.     
Пользователей
394,943
Тем
442,161
Сообщений
10,720,962