Перейти к содержимому

Theme© by Fisana
 

Фотография
* * * * * 68 Голосов

Написание экспертов и индикаторов - бесплатно!


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 18761

#4291 greek

greek

    Первый выстрел

  • Частый гость
  • PipPip
  • 4 сообщений

Отправлено 24 May 2011 - 13:31

Здраствуйте :)

Посмотрите плиз нижеизложенное -сможете ли помочь?




Нужен скрипт для выставления ордеров, поддерживающихоткрытую позицию при отсутствии трейдера у компьютера.

Как я это вижу на примере открытия позиции BUY на паре EUR/USD

После открытия позиции запускаю скрипт где заполняюследующие поля:



-Поле «цена входа» - цена «А» заполняю вручную

-Лот заключенной сделки – «ЛОТ» заполняется вручную

-Поле направление – «ЛОНГ» вручную как выбор ЛОНГ /ШОРТ

-Уровень Б/У – по дефолту +13пп от цены «А» (то что «+»определяется полем «ПОЛЕ НАПРАВЛЕНИЕ_ЛОНГ») с возможностью корректировки влюбой момент количества пп и возможностью корректировки предустановленных 13ппв настройках скрипта



-ОРДЕР 1

SELL STOP по цене «В» - по дефолту -22пп от цены А (предустановочные22 пп можно изменить в настройках) но с возможностью корректировки в любоймомент.

Ордер SELL STOP выставляетсяпри указании «ПОЛЕ НАПРАВЛЕНИЕ_ ЛОНГ»

Лот- по дефолту «ЛОТ» с возможностью корректировки в любоймомент



-ОРДЕР 2

SELL STOP по цене «С» - по дефолту -2пп от цены входа «А»(предустановочные -2 пп можно изменить в настройках) ) но с возможностьюкорректировки в любой момент. Ордер SELL STOP выставляется при указании «ПОЛЕНАПРАВЛЕНИЕ_ ЛОНГ»

Лот- по дефолту «ЛОТ» с возможностью корректировки в любоймомент



-ОРДЕР 3

SELL LIMIT по цене «D»- по дефолту +30 пп от цены входа «А» (предустановочные +30 пп можно изменить внастройках) но с возможностью корректировки в любой момент. Ордер SELL LIMIT выставляетсяпри указании «ПОЛЕ НАПРАВЛЕНИЕ_ ЛОНГ»

Лот- по дефолту «ЛОТ» с возможностью корректировки в любоймомент.

Кроме того – в этом ордере предусмотреть галочку«АКТИВЕН/НЕАКТИВЕН» По умолчанию- активен. Если галочку убрать, ОРДЕР 3скриптом игнорируется и не выставляется вообще.



Как работает.

После заполнение всех полей и запуске скрипта скриптвыставляет ордера 1 и 3 (если 3 не отключен)

При достижении ценой уровня ОРДЕР 1 по биду и срабатыванииОРДЕРА 1 скрипт удаляет ОРДЕР 3 (подразумевается что базовый лот срезан стопом)

При достижения ценой уровня «УРОВЕНЬ Б/У» по биду скриптснимает ОРДЕР 1 и выставляет ОРДЕР 2.

Если после этого :

- При достижении ценой уровня ОРДЕР 2 по биду и срабатыванииОРДЕРА 2 скрипт удаляет ОРДЕР 3 (подразумевается что базовый лот срезан стопом)

-При достижении ценой уровня ОРДЕР 3 по биду срабатыванииОРДЕРА 3 скрипт удаляет ОРДЕР 2 (подразумевается что базовый лот достиг цели)



При запросах на реквотинг ( хотя я с таким на лимитныхордерах пока не сталкивался но все же может быть) скрипт дает подтверждение ОК



На примере открытия позиции SELL на паре EUR/USD





-Поле «цена входа» - цена «А» заполняю вручную

-Лот заключенной сделки – «ЛОТ» заполняется вручную

-Поле направление – «ШОРТ» вручную как выбор ЛОНГ /ШОРТ

Уровень Б/У – по дефолту -15пп от цены «А» (то что «-»определяется полем «ПОЛЕ НАПРАВЛЕНИЕ_ШОРТ») с возможностью корректировки влюбой момент количества пп и возможностью корректировки предустановленных 15ппв настройках скрипта

-ОРДЕР 1

BUY STOP по цене «В» - по дефолту +22пп от цены А (предустановочные 22пп можно изменить в настройках) но с возможностью корректировки в любой момент.

Ордер BUY STOP выставляетсяпри указании «ПОЛЕ НАПРАВЛЕНИЕ_ ШОРТ»

Лот- по дефолту «ЛОТ» с возможностью корректировки в любоймомент



-ОРДЕР 2

BUY STOP по цене «С» - по дефолту +2пп от цены входа «А»(предустановочные +2 пп можно изменить в настройках) ) но с возможностьюкорректировки в любой момент. Ордер BUY STOP выставляется при указании «ПОЛЕНАПРАВЛЕНИЕ_ ШОРТ»

Лот- по дефолту «ЛОТ» с возможностью корректировки в любоймомент



-ОРДЕР 3

BUY LIMIT по цене «D»- по дефолту -30 пп от цены входа «А» (предустановочные -30 пп можно изменить внастройках) но с возможностью корректировки в любой момент.

Ордер BUY LIMIT выставляется при указании «ПОЛЕ НАПРАВЛЕНИЕ_ ШОРТ»

Лот- по дефолту «ЛОТ» с возможностью корректировки в любоймомент.

Кроме того – в этом ордере предусмотреть галочку«АКТИВЕН/НЕАКТИВЕН» По умолчанию- активен. Если галочку убрать, ОРДЕР 3скриптом игнорируется и не выставляется вообще.



Как работает.

После заполнение всех полей и запуске скрипта скриптвыставляет ордера 1 и 3 (если 3 не отключен)

При достижении ценой уровня ОРДЕР 1 по биду и срабатыванииОРДЕРА 1 скрипт удаляет ОРДЕР 3 (подразумевается что базовый лот срезан стопом)

При достижения ценой уровня «УРОВЕНЬ Б/У» по биду скриптснимает ОРДЕР 1 и выставляет ОРДЕР 2.

Если после этого :

- При достижении ценой уровня ОРДЕР 2 по биду и срабатыванииОРДЕРА 2 скрипт удаляет ОРДЕР 3 (подразумевается что базовый лот срезан стопом)

-При достижении ценой уровня ОРДЕР 3 по биду срабатыванииОРДЕРА 3 скрипт удаляет ОРДЕР 2 (подразумевается что базовый лот достиг цели)



При запросах на реквотинг ( хотя я с таким на лимитныхордерах пока не сталкивался но все же может быть) скрипт дает подтверждение ОК

Если процесс написание оного слишком трудоемок "забесплатно"- может подскажете к кому обратиться чтобы за денежку изваять.
Заранее спасибо :)

Сообщение отредактировал greek: 24 May 2011 - 13:33


 
 

#4292 afrikanec

afrikanec

    Первый выстрел

  • Частый гость
  • PipPip
  • 5 сообщений

Отправлено 24 May 2011 - 13:31

Спасибо за ответ по Shepherd!
Буду писать алгоритм и кому-нибудь заказывать.

Я уже месяц "воюю" вот с этим советником.
просьба та же, что и в первый раз. Прикрутите пожалуйста в A&B&S индикатор MA-Dif
в условиях открытия ордера ,к уже существующим условиям ,ОБЯЗАТЕЛЬНО следующее:
для BUY:
наличие КРАСНОГО шарика
(восходящий тренд MA-Dif = синяя точка и Красный ШАР)
для SELL:
наличие СИНЕГО шарика
(нисходящий тренд MA-Dif = красная точка и Синий ШАР)

Индикаторы MA-Dif, и iChannelDiff 1.5 года назад написал мой друг-программист, но 4 месяца назад он умер после инсульта.

посмотрите пожалуйста!
За ранее благодарен

Прикрепленные файлы

  • Прикрепленный файл  1.RAR   6.67К   48 скачиваний


#4293 Midas

Midas

    В бою

  • Заблокированные
  • PipPipPipPipPipPipPip
  • 179 сообщений

Отправлено 24 May 2011 - 14:14

Ну так Вы хотябы описали сигналы входа.


При каких сигналах открывать бай, селл? Нужен ли трал? и все такое.


Как только индюк показывает стрелочку тогда и должна открываться сделка в направлении стрелочки......... Тралл не помешает....:)


#4294 vasili

vasili

    Есть ещё порох в пороховницах

  • Специалист
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • 844 сообщений

Отправлено 24 May 2011 - 15:07

Как только индюк показывает стрелочку тогда и должна открываться сделка в направлении стрелочки......... Тралл не помешает....:)


Вот ... пожалуйста проверяйте.
Что не понятно будет по входящим параметрам спрашивайте.

Прикрепленные файлы


Сообщение отредактировал vasili: 24 May 2011 - 15:09

Пишу советники/индикаторы/cкрипты Пишите мне

#4295 Alen_T

Alen_T

    Есть ещё порох в пороховницах

  • Специалист
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • 874 сообщений

Отправлено 24 May 2011 - 15:23


Заготовка в виде эксперта (для тренировки нахождения...)
Данные в лог файле. Можно менять параметры для сравнения.

Прикрепленные файлы


  • kraken68 это нравится
Ты это, заходи, если что...(С)

#4296 Alen_T

Alen_T

    Есть ещё порох в пороховницах

  • Специалист
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • 874 сообщений

Отправлено 24 May 2011 - 15:37

Да, Ален, я так и делал. Он открывает до первого плюсового и всё. Я изменял везде, где видел 0,01. Так же и на центовом реале уже без изменений открыл один ордер, взял профит и заглох. Может ещё где-то нужно изменить? Мог бы ты выложить свою рабочую версию?

Спасибо.


Зачем он тебе? Это черновик, тренировка.
Картинка была хорошая, но дальше он "слил".

Но если хочется... (для лота 0,1.)

Прикрепленные файлы


  • AndreiPodvorskii это нравится
Ты это, заходи, если что...(С)

#4297 скальпер

скальпер

    Рвется в бой

  • Свой человек
  • PipPipPipPipPipPip
  • 125 сообщений

Отправлено 24 May 2011 - 16:10

Здравствуйте уважаемый
Alen_T Спасибо вам за замечательный советникИзображение всё как надо только индюк BBS 2 перерисовывает и запаздываетИзображение не моли бы вы его заменить на другой на ваш выбор Изображение или поставте пожалуйста на мой взгляд не плохого индюка Сам советник просто шедевр Изображениевсё чё надо там есть)))) Тока индюк храмает(((
Вместо XPпоставить VQ а вместо BBS 2 поставте пожалуйста super-signals-channel

Прикрепленные файлы


 
Дорогой . которая выбрана.....

#4298 olegaolega

olegaolega

    Выпустил первую очередь

  • Пользователи
  • PipPipPip
  • 15 сообщений

Отправлено 24 May 2011 - 16:23

Спасибо за ответ по Shepherd!
Буду писать алгоритм и кому-нибудь заказывать.

Я уже месяц "воюю" вот с этим советником.
просьба та же, что и в первый раз. Прикрутите пожалуйста в A&B&S индикатор MA-Dif
в условиях открытия ордера ,к уже существующим условиям ,ОБЯЗАТЕЛЬНО следующее:
для BUY:
наличие КРАСНОГО шарика
(восходящий тренд MA-Dif = синяя точка и Красный ШАР)
для SELL:
наличие СИНЕГО шарика
(нисходящий тренд MA-Dif = красная точка и Синий ШАР)

Индикаторы MA-Dif, и iChannelDiff 1.5 года назад написал мой друг-программист, но 4 месяца назад он умер после инсульта.

посмотрите пожалуйста!
За ранее благодарен


Прикрутить-я прикручу, но опять же абы как!
Опять код какой-то странный - ощущение что автор намеенно запутал простые вещи до нельзя. Модульностью какой либо и не пахнет даже. Так что мне тут еще и разобраться надо куда там прикручивать ))))
А уж гарантии, что сей монстро будет работать никакой речи и быть не может
Я запустил его на евре с дефолтными установками за 2011 год - так он ПОЛЧАСА, ЕСЛИ НЕ БОЛЬШЕ(!!!) чего-то "думал" и в результате этот наш скоростной сделав всего 64 сделки дал мизерный профит ... ужос !
Что он делает, в каких циклах витает - но с такой скоростью оптимизация практически невозможна ... а комп у меня достаточно не слабый чтобы на него списывать - 3Гц 4-ядерник с 8Гб DDR3 ... все летает, кроме этого ...вот же, а

Где ты такие советники берешь? В лиге "садомазо" что ли? И нафига тебе этот гемор?

Извини, если обидел чем-то ... Но полчаса 4 месяца истории мурыжить с нулевым резом - это ваще достало меня! И вот думаю - издеваешься ты, что ли?

Сообщение отредактировал olegaolega: 24 May 2011 - 16:28

Делаем эксперты, индикаторы и прочее для МТ4 ... мыло olegov_oleg@mail.ru

#4299 MrSerj

MrSerj

    Выпустил первую очередь

  • Пользователи
  • PipPipPip
  • 11 сообщений

Отправлено 24 May 2011 - 16:41

Доброго времени суток всем! Подскажите, пожалуйста, функцию,которая определяет время нахождения в рынке, первой из открытых позиций с определенным магическим номером. Заранее благодарю!

#4300 droba

droba

    Не жалеет патронов

  • Свой человек
  • PipPipPipPipPipPipPipPipPip
  • 309 сообщений

Отправлено 24 May 2011 - 17:05


А можно вот в этот экспертик добавить такой цикл:
- если ордер закрылся по СТОПЛОСУ то лот удваиваем и удвоение происходит с каждым закрытием по СТОПЛОСУ;
- как только ордер закрылся по ТЕЙКПРОФИТУ лот возвращается в первоначальный объем.
Разъяснение: предположим эксперт работает с лотом _lots = 0.02 сделка закрывается с минусом значит следующий ордер открываем
с лотом равным 0.04, закрылись с профитом возвращаем лот =0.02.

Вот экспертик - Прикрепленный файл  H1_Proboy.mq4   2.24К   13 скачиваний

#4301 vasili

vasili

    Есть ещё порох в пороховницах

  • Специалист
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • 844 сообщений

Отправлено 24 May 2011 - 17:24

Доброго времени суток всем! Подскажите, пожалуйста, функцию,которая определяет время нахождения в рынке, первой из открытых позиций с определенным магическим номером. Заранее благодарю!


//количество секунд которое прошло с первого ордера
int closetype(int type,int _key)
{
   	
   	datetime timeOpen=0;
          	for(int i=0; i<=OrdersHistoryTotal( ); i++)
            	{  
              	if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)&& OrderSymbol()==Symbol() && OrderMagicNumber()==_key && OrderType()==type )  
              	{
              	timeOpen=OrderOpenTime();
              	break;
              	}
            	} 
          	return(TimeCurrent()-timeOpen); 
}

  • MrSerj это нравится
Пишу советники/индикаторы/cкрипты Пишите мне

#4302 olegaolega

olegaolega

    Выпустил первую очередь

  • Пользователи
  • PipPipPip
  • 15 сообщений

Отправлено 24 May 2011 - 17:33

Доброго времени суток всем! Подскажите, пожалуйста, функцию,которая определяет время нахождения в рынке, первой из открытых позиций с определенным магическим номером. Заранее благодарю!


datetime TimeFirst(int magik)
{
	if(!OrderSelect(0, SELECT_BY_POS)) return (-1);
	if(OrderMagicNumber() != magik) return (-1);
	return (TimeCurrent() - OrderOpenTime());
	
}

Функция возвращает время нахождения первого ордера с данным magic с момента открытия в секундах.

Извиняюсь, пока писал Василий оперелил ))) Мое почтение
Но у Василия функция возращает из истории, я так понял что нужно именно открытый ордер детектировать ... может и не прав я
  • MrSerj это нравится
Делаем эксперты, индикаторы и прочее для МТ4 ... мыло olegov_oleg@mail.ru

#4303 vasili

vasili

    Есть ещё порох в пороховницах

  • Специалист
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • 844 сообщений

Отправлено 24 May 2011 - 17:38

ой а уже и ответили ... кстати да ... если нужно искать в открытых ордерах то моя не пройдет
хотя нужно еще проверку сделать. есть ли такой одер вообще.
//количество секунд которое прошло с первого ордера
int closetype(int type,int _key)
{
   	
   	datetime timeOpen=0;
          	for(int i=0; i<=OrdersHistoryTotal( ); i++)
            	{  
              	if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)&& OrderSymbol()==Symbol() && OrderMagicNumber()==_key && OrderType()==type )  
              	{
              	timeOpen=OrderOpenTime();
              	break;
              	}
            	} 
     		if(timeOpen!=0) return(TimeCurrent()-timeOpen); 
     		if(timeOpen==0) return(-1); 
}

Сообщение отредактировал vasili: 24 May 2011 - 17:40

  • MrSerj это нравится
Пишу советники/индикаторы/cкрипты Пишите мне

#4304 vasili

vasili

    Есть ещё порох в пороховницах

  • Специалист
  • PipPipPipPipPipPipPipPipPipPipPipPip
  • 844 сообщений

Отправлено 24 May 2011 - 17:42

datetime TimeFirst()
{
	if(!OrderSelect(0, SELECT_BY_POS)) return (-1);
	if(OrderMagicNumber() != magik) return (-1);
	return (TimeCurrent() - OrderOpenTime());
	
}

Функция возвращает время нахождения первого ордера с данным magic с момента открытия в секундах.

Извиняюсь, пока писал Василий оперелил ))) Мое почтение
Но у Василия функция возращает из истории, я так понял что нужно именно открытый ордер детектировать ... может и не прав я



мое почтение.... а если первый ордер не с этим меджиком ...почему у вас нет цикла?
  • MrSerj это нравится
Пишу советники/индикаторы/cкрипты Пишите мне

#4305 xMIHAx

xMIHAx

    Стреляет без предупреждения

  • Свой человек
  • PipPipPipPipPipPipPipPip
  • 259 сообщений

Отправлено 24 May 2011 - 17:43

Здраствуйте. Уважаемы программисты посмотрите пожалуйста пост http://fxgeneral.com...indpost&p=28523



Copyright © 2024 Your Company Name